universal-pathlib
pathlib api extended to use fsspec backends
Decision gist · record as of 2026-08-14
Yes. The package is actively maintained, has no known vulnerabilities, low install friction, and solves a real problem: unified path handling across diverse filesystems. It is well-positioned in the ecosystem (top 1000 PyPI packages) and supports current Python versions. Install it if you work with multiple storage backends or want to future-proof code that might move between local and cloud storage.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Additional fsspec extras (e.g., fsspec[s3], fsspec[gcs]) must be installed separately to access specific backend filesystems beyond local and memory.
- Low friction: pure Python wheel with only two runtime dependencies (fsspec and pathlib-abc).
- Active maintenance with recent commits and no known vulnerabilities.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute this package freely provided you retain the license notice.
last release 2026-02-22 (173 days) · last repo commit 2026-04-27 · 405 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 34,977,368 downloads/mo, #753 on PyPI
Alternatives
Verify before relying
pip install universal_pathlib fsspec[s3]
from universal_pathlib import UPath
path = UPath("s3://bucket/file.txt")
if path.exists():
content = path.read_text()- Whether the default fsspec implementation provides reliable behavior for untested filesystems beyond those explicitly listed.
- Performance characteristics when working with large files or high-frequency path operations across different backends.
What it is and what it does
Universal Pathlib extends Python's standard pathlib.Path API to work with multiple backend filesystems via fsspec. Instead of writing different code for local files, S3 buckets, Azure Storage, or HTTP endpoints, you use the same interface for all of them. The library returns specialized implementations based on the protocol in the path string, ensuring compatibility with pathlib semantics where possible while adding fsspec-specific properties for lower-level control.
The package is built on pathlib-abc and fsspec. It handles protocol dispatch automatically—pass a local path and get a pathlib.Path-compatible object; pass an S3 URI and get cloud storage access through the same method calls. Local paths without a protocol return instances that are compatible with their pathlib counterparts, while remote paths use a default fsspec-backed implementation.
Use it for
- Read and write files on S3, Azure, or GCS using the same pathlib API you use for local files.
- Build data pipelines that work across multiple storage backends without conditional logic for each filesystem.
- Migrate code from local file operations to cloud storage by changing only the path string, not the method calls.
- Access HTTP-based file systems or ephemeral in-memory filesystems using pathlib semantics.
- Combine local and remote file operations in a single script with a unified interface.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
The package is actively maintained, has no known vulnerabilities, low install friction, and solves a real problem: unified path handling across diverse filesystems. It is well-positioned in the ecosystem (top 1000 PyPI packages) and supports current Python versions. Install it if you work with multiple storage backends or want to future-proof code that might move between local and cloud storage.
Install
universal-pathlib on PyPI
Before you install
Low friction: pure Python wheel with only two runtime dependencies (fsspec and pathlib-abc). Active maintenance with recent commits and no known vulnerabilities. Supports Python 3.9 through 3.14.
Additional fsspec extras (e.g., fsspec[s3], fsspec[gcs]) must be installed separately to access specific backend filesystems beyond local and memory.
License in practice
MIT license permits commercial and private use with minimal restrictions—you may use, modify, and distribute this package freely provided you retain the license notice.
Quickstart
pip install universal_pathlib fsspec[s3]
from universal_pathlib import UPath
path = UPath("s3://bucket/file.txt")
if path.exists():
content = path.read_text()
Verify before relying
- Whether the default fsspec implementation provides reliable behavior for untested filesystems beyond those explicitly listed.
- Performance characteristics when working with large files or high-frequency path operations across different backends.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesfsspecpathlib-abc |
| Maintenance | Actively maintained 173 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 34,977,368 / month, #753 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9 |
Evidence: universal_pathlib-0.3.10-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “pathlib for cloud storage”
- universal-pathlibUniversal Pathlib provides a pathlib.Path-like interface for…
- cloudpathlibProvides pathlib-style classes for reading, writing, and managing…
- pathyPathy provides a pathlib-compatible interface for working with cloud…
Give your agent the search over MCP, or paste the wish link into any chat.
Similar packages
fsspec provides a unified filesystem interface specification and implementations for accessing local, remote, and cloud storage backends through a common Python API.
Provides a DirectoryTree widget for Textual terminal UIs that works with local and remote filesystems including S3, GCS, Azure, GitHub, and SSH through universal-pathlib and fsspec.
Provides abstract base classes for implementing path-like objects that work with non-local filesystems, such as archives and remote storage, following the pathlib.Path interface.
However, be aware that maintenance is aging (308 days since last release) and the ABCs are explicitly under active development—expect potential breaking changes…
Provides pathlib-style classes for reading, writing, and managing files across AWS S3, Google Cloud Storage, and Azure Blob Storage using a familiar Path-like interface.
morefs provides fsspec-based filesystem implementations including async local files, in-memory storage via dictionaries or tries, and overlay filesystems that combine multiple backends.
Provides a unified filesystem abstraction layer that lets you work with local directories, zip files, FTP servers, and other storage backends through a single consistent API.
However, note that maintenance is aging—the last release was 2022-05-02—so if you rely on active development or rapid bug fixes, evaluate whether that matters for…
See also ocifs · dvc-objects · s3path · s3pathlib