English | δΈζ
A powerful VS Code extension that allows you to add customizable aliases and remarks to files and folders in your file tree, making project navigation and organization more intuitive.
- Customizable Aliases: Add meaningful names and descriptions to any file or folder
- Dual Configuration: Support for both public (shared) and private (personal) aliases
- Visual Integration: Seamlessly integrated into VS Code's file explorer
- Easy Management: Simple right-click interface for adding and modifying aliases
- Persistent Storage: Aliases are saved in JSON configuration files within your workspace
- Open VS Code
- Go to Extensions (
Ctrl+Shift+X/Cmd+Shift+X) - Search for "Folder Alias"
- Click Install
- Reload VS Code when prompted
- Download the latest
.vsixfile from releases - Open VS Code
- Go to Extensions
- Click ... (More Actions) β Install from VSIX...
- Select the downloaded
.vsixfile
- Right-click on any file or folder in the VS Code Explorer
- Select "Add Alias"
- Choose the alias scope:
- Public: Saved in
folder-alias.json(can be committed to version control) - Private: Saved in
private-folder-alias.json(ignored by version control)
- Public: Saved in
- Enter your desired alias/description
- Press Enter to save
- Right-click on a file/folder that already has an alias
- Select "Add Alias"
- Edit the existing text or clear it to remove the alias
- Press Enter to update
After manually editing the JSON configuration files, you can refresh the file explorer display:
- Right-click anywhere in the Explorer
- Select "Refresh Aliases"
- Or use Command Palette (
Ctrl+Shift+P/Cmd+Shift+P) and type "Refresh Aliases" - The file explorer will reload all alias configurations from the JSON files
The extension supports two configuration locations with smart priority:
The extension will prioritize .vscode directory over root directory:
.vscode/folder-alias.json- Public aliases (highest priority).vscode/private-folder-alias.json- Private aliases (highest priority)folder-alias.json- Public aliases (fallback)private-folder-alias.json- Private aliases (fallback)
Behavior Rules:
- Reading: If
.vscode/folder-alias.jsonexists, it will be used instead of rootfolder-alias.json - Initialization: The extension will only create configuration files in the root directory if no corresponding files exist in
.vscode - Saving: When saving aliases, the extension will save to
.vscodeonly if the corresponding file already exists there, otherwise to root directory
You can organize your aliases in either location:
.vscode/directory: Keeps your workspace root clean and organized- Root directory: Traditional location, compatible with existing setups
{
"src/components/Button": {
"description": "ποΈ Reusable Button Component",
"tooltip": "Primary button component with variants"
},
"docs/api": {
"description": "π API Documentation",
"tooltip": "REST API endpoints documentation"
}
}- Node.js (v18+)
- pnpm (preferred package manager)
- VS Code
# Clone the repository
git clone https://github.com/Muromi-Rikka/folder-alias.git
cd folder-alias
# Install dependencies
pnpm install
# Build the extension
pnpm build
# Run in development mode (with watch)
pnpm dev| Command | Description |
|---|---|
pnpm build |
Build the extension |
pnpm dev |
Build in watch mode for development |
pnpm test |
Run tests |
pnpm lint |
Run ESLint |
pnpm typecheck |
Run TypeScript type checking |
pnpm pack |
Package the extension |
pnpm publish |
Publish to VS Code Marketplace |
- Open the project in VS Code
- Press
F5to open a new Extension Development Host window - Make changes to the source code
- Reload (
Ctrl+R/Cmd+R) the Extension Development Host to see changes
The extension automatically creates and manages configuration files in your workspace. No additional settings are required.
For team collaboration, consider adding this to your .gitignore:
# Folder Alias - Personal aliases
private-folder-alias.jsonsrc/index.ts- Extension entry point and activationsrc/command/add-alias.command.ts- Command handler for adding/modifying aliasessrc/file-alias.ts- File decoration provider and alias managementsrc/utils/file.util.ts- File I/O utilities for configuration management
- TypeScript - Primary language
- reactive-vscode - Reactive programming for VS Code extensions
- tsdown - Build tool for TypeScript
- ESLint - Code linting
- Vitest - Testing framework
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/new-feature - Make your changes
- Run tests:
pnpm test - Run linting:
pnpm lint - Commit your changes:
git commit -am 'Add new feature' - Push to the branch:
git push origin feature/new-feature - Submit a pull request
This project is licensed under the GPLv3 License.
If you encounter any issues or have feature requests, please create an issue on GitHub.
See CHANGELOG.md for a detailed history of changes and updates.
Made with β€οΈ by Rikka