# viexp A fast, modular terminal file manager for Linux, written in Rust — a spiritual successor to [ranger](https://github.com/ranger/ranger) that fixes its weak spots: slow startup, fragile image previews, and a hard-to-extend Python core. **Status:** planning / learning project (see the [roadmap](docs/roadmap.md)). ## Goals - Blazing-fast navigation and previews (kitty graphics protocol first, SIXEL / ueberzug++ / chafa fallbacks). - Out-of-the-box support for images, video, audio, PDF, DJVU, EPUB and Markdown — with every file-type module easy to **disable or replace** at runtime, no recompilation required. - Extension model that feels native to Linux users: drop-in scripts in any language first, embedded Lua scripting later. - Vim-style ergonomics: modal keys, tabs, marks, bulk rename, `:` command line. ## This repo is also a learning lab viexp is deliberately built as a guided learning project: Rust from scratch and technical English, one 20-hour sprint at a time (Josh Kaufman's "First 20 Hours" method). All documentation lives in English inside the [Obsidian vault](docs/index.md) in this repo. - [Knowledge index (start here)](docs/index.md) - [Roadmap: 20-hour sprints](docs/roadmap.md) - [Research notes](docs/research/) - [Architecture decisions (ADRs)](docs/decisions/) ## License [GPL-3.0-or-later](LICENSE) — viexp is free software, and so must be anything built from it: whoever distributes it or a derivative work must share the source under the same license.