Homepage extension for VSCode
- JavaScript 77.5%
- CSS 16.5%
- Just 6%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| media | ||
| src | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| .vscodeignore | ||
| eslint.config.mjs | ||
| justfile | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
VSHome
A start page for code-server / VS Code: pinned projects as cards, recent projects (minus the pinned ones), and quick "new project" / "open folder" actions.
just setup && just test
just deploy # build the .vsix and install it into code-server, then reload the window
Settings
| Setting | Default | |
|---|---|---|
vshome.pinned |
[] |
Pinned projects — see Pinned projects. The pin button on a card edits this for you. |
vshome.showOnStartup |
"emptyWindow" |
emptyWindow (only when no folder is open), always, or never. |
vshome.recentLimit |
12 |
Max recent cards. |
vshome.newProjectRoot |
"~/projects" |
Where "New project…" creates folders, and where "Open folder…" starts browsing. |
Set "workbench.startupEditor": "none" so the built-in Welcome tab doesn't open too.
Run VSHome: Show VSHome from the command palette to open it any time.
Recent projects merge the opens VSHome records itself (server-side, shared across browsers) with the workbench's own history (stored per browser).
Pinned projects
Each entry in vshome.pinned is either a path string or an object:
| Field | Required | |
|---|---|---|
path |
yes | Project folder. ~ expands to your home directory. |
name |
no | Card title. Defaults to the folder name. |
icon |
no | Image shown on the card: png, jpg, gif, webp, svg or ico. Relative paths resolve against the project folder; ~ and absolute paths work too. |
"vshome.pinned": [
"~/projects/scratch",
{ "path": "~/projects/flowire-app", "name": "Flowire", "icon": "logo.svg" },
{ "path": "/srv/infra", "icon": "~/icons/infra.png" }
]
Cards appear in the order listed. A pinned folder that no longer exists stays on the page, dimmed and marked "folder not found".