A fast, modern Linux file manager built for large folders.
Download | Preview | Features | Build
Fileshelf combines a compact desktop interface with bounded filesystem work, virtualized rendering, live directory watching, and safe file operations. It is designed to stay responsive when browsing folders containing thousands of entries without giving up useful desktop file-manager features.
| Workspace | Files and navigation |
|---|---|
| Up to 12 independent folder tabs | Back, forward, up, reload, and breadcrumbs |
| Per-tab history, search, filter, selection, and scroll | Quick Access, recent folders, and pinned items |
| List and virtualized grid views | Search, sorting, and live type counts |
| Cached image thumbnails for visible tiles | Native directory watching with preserved view state |
| Operations | Appearance and performance |
|---|---|
| Create files and folders; recursive copy, cut, move, and paste | Graphite, Linen, Moss, and custom palettes |
| Rename, reveal, copy path, and move to Trash | Bounded metadata and thumbnail worker pools |
| Collision-safe transfers without silent overwrite | Directory and thumbnail caching |
| Cross-filesystem move fallback | Graceful icon fallbacks for unsupported images |
Download the current packages from the latest GitHub release.
sudo apt install ./Fileshelf-1.0.0-amd64.debLaunch Fileshelf from the application menu or run fileshelf. Remove the
application while keeping user preferences with:
sudo apt remove fileshelfchmod +x Fileshelf-1.0.0-x86_64.AppImage
./Fileshelf-1.0.0-x86_64.AppImageVerify either download with the attached checksum manifest:
sha256sum --check SHA256SUMS| Shortcut | Action | Shortcut | Action |
|---|---|---|---|
Ctrl+N |
New file | Ctrl+Shift+N |
New folder |
Ctrl+T |
New tab | Ctrl+W |
Close tab |
Ctrl+Tab |
Next tab | Ctrl+Shift+Tab |
Previous tab |
Ctrl+C/X/V |
Copy, cut, paste | Ctrl+D |
Pin or unpin |
Alt+Left/Right |
Folder history | Backspace |
Parent folder |
/ |
Focus search | Ctrl+R |
Reload folder |
F2 |
Rename | Delete |
Move to Trash |
Enter |
Open selection | Arrow keys | Move selection |
Middle-click a folder to open it in a new tab. Middle-click a tab to close it.
- 64-bit Linux
- Node.js 18 or newer
- npm
git clone https://github.com/moeenScape/Fileshelf.git
cd Fileshelf
npm install
npm startFileshelf opens in ~/Downloads. All privileged filesystem work stays in the
Electron main process; the context-isolated renderer receives only the narrow
operations exposed by preload.js.
build/icon.svg Linux application and README icon
main.js Electron lifecycle, filesystem, watchers, and caches
preload.js Context-isolated renderer API
renderer/index.html Application structure
renderer/renderer.js Navigation, tabs, filtering, and interactions
renderer/styles.css Themes, components, grid, and thumbnail presentation
docs/screenshots/ README screenshots and preview assets
Electron Builder outputs release artifacts to the ignored dist/ directory.
npm ci
npm run dist
npm run checksums
sha256sum --check dist/SHA256SUMS| Command | Output |
|---|---|
npm run pack |
Unpacked application for validation |
npm run dist |
Debian package and AppImage |
npm run dist:deb |
Debian package only |
npm run dist:appimage |
AppImage only |
npm run checksums |
dist/SHA256SUMS |
Maintainer: publish a GitHub release
Releases are tag-based. Keep the version in package.json synchronized with the
tag and never commit the generated dist/ directory.
git add AGENTS.md README.md main.js package.json package-lock.json build docs
git commit -m "Release Fileshelf 1.0.0"
git push origin main
git tag -a v1.0.0 -m "Fileshelf 1.0.0"
git push origin v1.0.0Open the new release page,
choose v1.0.0, and attach:
dist/Fileshelf-1.0.0-amd64.deb
dist/Fileshelf-1.0.0-x86_64.AppImage
dist/SHA256SUMS
- File categories: update
CATEGORY_EXT,CATEGORY_META,ICONS, and matching--cat-*tokens together. - Theme presets and tokens: edit
renderer/styles.css. - Virtualization dimensions: edit
ROW_HEIGHT_LIST,GRID_ITEM_W, andGRID_ITEM_Hinrenderer/renderer.js.
Fileshelf is distributed under the MIT License.

