An extention of ls command. Presents an icon showing the primary filetype of a project. I primarily use it to quickly check the primary tech-stack of a codebase. Completely Vibecoded, full transparency, so download at your own risk! (You'll be fine)
Will later add more icons for 'entire tech stack'.
i.e. FASTAPI backend && JS Frontend
both icons will be added.
Before and After:
lsx is a developer-oriented directory listing command. It adds an icon beside each directory based on the programming language or framework detected in that directory. Detection is shallow, bounded, and cached in SQLite, so normal use never recursively scans an entire repository.
./bin/lsx
./bin/lsx -la --icons ascii
./bin/lsx inspect ./my-project
./bin/lsx scan ~/projects
./bin/lsx cache statsOr install it into an isolated environment:
python3 -m pip install .
lsxThe default theme uses Nerd Font glyphs. Use --icons unicode, --icons ascii, or --icons none if your terminal font does not support them.
When listing a directory, lsx examines only the immediate contents of each displayed child directory. It uses manifests, framework files, source extensions, and recognizable directory names to infer the codebase type. Results remain cached until the directory changes, the cache expires, or the classification rules are upgraded.
Supported listing options in the first release are -a, -l, -1, --refresh, --icons, and --color. Decorative output is one entry per line when stdout is piped.
Create ~/.config/lsx/config.toml:
theme = "nerd-font"
color = "auto"
cache_ttl_days = 30
cleanup_after_days = 90
max_entries_per_scan = 1000
max_scan_ms = 40
total_scan_ms = 200Set LSX_CACHE_DIR to relocate the cache or LSX_CONFIG to use another configuration file.
PYTHONPATH=src python3 -m unittest discover -s tests -vSee SOFTWARE_DESIGN.md for the full architecture and roadmap.

