FavFile
A Visual Studio Code extension that lets you favorite files and open them quickly from the Explorer sidebar.
https://github.com/user-attachments/assets/b1f3dd78-41c6-4a47-85e9-54a1713f56a2
Features
- FavFile view in Explorer — A section in the Explorer sidebar (with Outline and Timeline) with two collapsible groups: Workspace and Global
- Add to Workspace or Global — From the Command Palette or by right‑clicking a file in the Explorer
- Remove favorites — From the FavFile tree context menu or Command Palette
- Click to open any favorited file
- Reveal in Explorer — From the tree context menu on a favorite
- Missing file handling — Files that no longer exist are marked with a warning icon and can still be removed
- Sort order — Manual (insertion order) or alphabetical
- Multi-root workspace support using stable URI identity
- No duplicates — Adding the same file to the same section again is a no-op
Commands
| Command |
Description |
FavFile: Add to Workspace |
Add the active file to workspace favorites |
FavFile: Add to Global |
Add the active file to global favorites |
FavFile: Remove from Favorites |
Remove a file from favorites |
FavFile: Reveal Active File in Favorites |
Select the active file in the FavFile tree |
FavFile: Refresh |
Manually refresh the list |
Configuration
| Setting |
Type |
Default |
Description |
favoriteFiles.showRelativePath |
boolean |
true |
Show workspace-relative path next to each favorite. |
favoriteFiles.sortOrder |
"manual" | "name" |
"manual" |
Sort order. manual preserves insertion order; name sorts alphabetically. |
Development
Prerequisites
- Node.js 18+
- VS Code 1.75+
Setup
git clone https://github.com/NooryA/FavFile
cd FavFile
npm install
Compile
npm run compile
Watch (auto-rebuild on change)
npm run watch
Run in Extension Development Host
- Open the
FavFile folder in VS Code
- Press
F5 (or Run > Start Debugging)
- In the new window, open the Explorer (file icon in the sidebar)
- Scroll to the FavFile section at the bottom (Workspace and Global groups)
Run Tests
npm test
Runs integration tests in a VS Code instance via @vscode/test-electron.
Lint
npm run lint
Packaging & Publishing
Package as VSIX
npm run package
| |