$npx skillfedfor your agent

textual-universal-directorytree

A Textual Directory Tree for all File Systems

With conditionsPyPI TerminalsReleased Aug 2025194.7K downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — textual_universal_directorytree-1.7.0-py3-none-any.whl
v1.7.0 · released 2025-08-25 · Python <4,>=3.9 · 2 runtime deps: textual, universal-pathlib

Yes, if you are building a Textual terminal UI and need to browse or interact with files across multiple filesystem types. The low install friction, permissive license, and broad filesystem support make it a solid choice for this use case. The aging maintenance status (354 days since last release) is a minor concern but not a blocker given the active repository and lack of known vulnerabilities; monitor for updates if you depend on new features or fsspec backend additions.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.9 or later.
  • Remote filesystems (S3, GCS, Azure, GitHub, SSH) require optional dependencies like s3fs, gcsfs, adlfs, requests, or paramiko.
  • Low friction install with just two runtime dependencies (textual and universal-pathlib).

License · maintenance · safety

MIT (permissive) — MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute the package freely provided you include the license notice.

last release 2025-08-25 (354 days) · last repo commit 2025-08-25 · 41 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 194,658 downloads/mo, #9,825 on PyPI

Verify before relying

pip install textual-universal-directorytree

from textual_universal_directorytree import UniversalDirectoryTree, UPath
from textual.app import App, ComposeResult

class MyApp(App):
    def compose(self) -> ComposeResult:
        yield UniversalDirectoryTree(path=UPath('.'))
  • Whether the 354-day gap since last release indicates active maintenance or dormancy despite recent commits
  • Performance characteristics when browsing large remote filesystems or deeply nested directory structures
  • Compatibility testing status across all listed filesystems beyond those documented in the table
Same gist for agents: .md · .json

What it is and what it does

textual-universal-directorytree is a Textual widget that renders an interactive directory tree in a terminal UI, with the key feature that it works across both local and remote filesystems. It builds on textual's DirectoryTree and extends it through universal-pathlib and fsspec to support S3, Google Cloud Storage, Azure, GitHub, SSH, SFTP, and other fsspec-compatible backends. The widget presents a familiar file-browser interface in the terminal, letting you navigate and select files from any supported filesystem using the same API.

You use it by instantiating UniversalDirectoryTree with a UPath pointing to any supported location—local path, S3 bucket, GitHub repository, or remote SSH server—and adding it to a Textual app's compose layout. The widget handles filesystem abstraction transparently; file selection events return UPath objects compatible with pathlib.Path, so your code can read and process files without caring whether they're local or remote. Optional dependencies unlock support for specific backends, so you only install what you need.

Use it for

  • Browse and preview files in S3 buckets or other cloud storage directly from a terminal UI without switching tools
  • Build a terminal-based file manager that works uniformly across local, SSH, and cloud filesystems
  • Create a GitHub repository browser in the terminal to explore code and documentation without leaving your editor
  • Develop a remote log viewer or data explorer that can read from multiple backends (local, S3, SFTP) in one interface
  • Implement a TUI-based deployment or configuration tool that navigates both local and remote file structures

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you are building a Textual terminal UI and need to browse or interact with files across multiple filesystem types.

The low install friction, permissive license, and broad filesystem support make it a solid choice for this use case. The aging maintenance status (354 days since last release) is a minor concern but not a blocker given the active repository and lack of known vulnerabilities; monitor for updates if you depend on new features or fsspec backend additions.

Install

textual-universal-directorytree on PyPI

Before you install

Low friction install with just two runtime dependencies (textual and universal-pathlib). Package is aging—last release 354 days ago—but the repository remains active with recent commits and no archived status.

Requires Python 3.9 or later. Remote filesystems (S3, GCS, Azure, GitHub, SSH) require optional dependencies like s3fs, gcsfs, adlfs, requests, or paramiko.

License in practice

MIT license permits commercial and private use with minimal restrictions; you may use, modify, and distribute the package freely provided you include the license notice.

Quickstart

pip install textual-universal-directorytree

from textual_universal_directorytree import UniversalDirectoryTree, UPath
from textual.app import App, ComposeResult

class MyApp(App):
    def compose(self) -> ComposeResult:
        yield UniversalDirectoryTree(path=UPath('.'))

Verify before relying

  • Whether the 354-day gap since last release indicates active maintenance or dormancy despite recent commits
  • Performance characteristics when browsing large remote filesystems or deeply nested directory structures
  • Compatibility testing status across all listed filesystems beyond those documented in the table

Package facts

LicenseMIT permissive
Python supportSupports the current Python release <4,>=3.9
Install frictionLow. Pure-Python wheel
Runtime dependencies
2 packages
textualuniversal-pathlib
MaintenanceAging 354 days since the last release
Last repo commit
First released
Downloads194,658 / month, #9,825 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Evidence: textual_universal_directorytree-1.7.0-py3-none-any.whl

Tags

Capabilities
textual directory tree widgetremote filesystem browser tuis3 directory explorer terminalfsspec file tree displayuniversal pathlib directory widgetcloud storage file browserterminal ui file navigation
Topics
tui-widgetmulti-filesystemfsspec-plugin
PyPI keywords
fsspecplugintextualtui

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 › “textual directory tree widget”

Give your agent the search over MCP, or paste the wish link into any chat.

More Terminals packages

tqdm Worth it
PyPI · Libraries · released Jul 2026

Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.

copyleftpure Python · 3.8+
648.6Mdownloads / mo
rich Worth it
PyPI · Terminals · released Apr 2026

Rich renders styled text, tables, progress bars, syntax highlighting, markdown, and tracebacks to the terminal with minimal code.

MITpure Python · 3.9.0+
613.9Mdownloads / mo
colorama Worth it
PyPI · Terminals · released Oct 2022

Colorama makes ANSI escape sequences for colored terminal text work on Windows by intercepting and converting them to win32 API calls, while passing through unchanged on other platforms.

Install it if you need colored terminal output to work on Windows or want to use ANSI-based libraries portably; skip it only if you target non-Windows platforms…

BSD-3-Clausepure Python
431.0Mdownloads / mo
wcwidth Worth it
PyPI · Libraries · released Jun 2026

Measures the displayed width of Unicode strings in terminals, accounting for wide characters, combining marks, and terminal escape sequences that standard Python string functions mishandle.

Install it if your application formats text for terminals and handles non-ASCII characters.

MITpure Python · 3.8+
306.5Mdownloads / mo
ptyprocess With conditions
PyPI · Terminals · released Dec 2020

Run a subprocess in a pseudo terminal (pty) and interact with its input and output, enabling automation of interactive programs that require terminal features like password prompts or curses-style interfaces.

However, note that it is aging (last release 2020-12-28) and not actively maintained; it works well for its narrow, well-defined purpose but won't receive updates for…

ISCpure Pythonaging
205.2Mdownloads / mo
pexpect With conditions
PyPI · Software Development · released Nov 2023

Pexpect spawns and controls interactive console applications by sending input and matching output patterns, automating tasks that would otherwise require manual interaction.

ISCpure Pythonaging
200.8Mdownloads / mo

See also textual-autocomplete · universal-pathlib · fsspec · textual · textual-dev · gitingest · fsspec-xrootd · textual-serve · fs.sshfs · trogon