An experimental vibe coding session with Copilot. The result is a VS Code extension for efficiently managing multiple git-based projects in one centralized, interactive interface.
A VS Code extension that displays a welcome page listing git repositories from configured directories.
- 📁 Automatic Repository Detection: Scans configured directories for git repositories
- 🔍 Repository Information: Shows branch name and modified file count for each repo
- 🎨 Theme Support: Adapts to VS Code light and dark themes
- ⚙️ Configurable: Simple settings to specify which directories to scan
- 🔄 Real-time Updates: Automatically refreshes when settings change
- 🖱️ Click to Open: Click on any repository to open it in VS Code
- 🔧 Custom Git Path: Support for custom git executable locations
chmod +x install.sh
./install.shinstall.bat-
Clone or download this repository
-
Install dependencies
npm install
-
Compile the extension
npm run compile
-
Package the extension
npm install -g @vscode/vsce vsce package
-
Install in VS Code
code --install-extension git-projects-welcome-0.0.1.vsix
- Clone the repository
- Run
npm install - Run
npm run compileornpm run watchfor continuous compilation - Open the folder in VS Code
- Press
F5to launch the extension in a debug window
Add the following to your VS Code settings.json:
{
"gitProjectsWelcome.repositoryDirectories": [
"/path/to/projects",
"~/my-repos",
"$HOME/workspace"
],
"gitProjectsWelcome.maxDepth": 3,
"gitProjectsWelcome.gitPath": "git"
}gitProjectsWelcome.repositoryDirectories: Array of directories to scan for git repositories. Supports~for home directory and environment variables like$HOME.gitProjectsWelcome.maxDepth: Maximum directory depth to scan (default: 3)gitProjectsWelcome.gitPath: Path to the git executable. Use this if git is not in your PATH or if you want to use a custom git installation (default: "git")
- The extension opens a webview panel displaying all git projects
- Scans the configured directories recursively
- Finds all
.gitdirectories and builds a repository list - For each repository, it gathers:
- Repository name (from directory name)
- Current branch
- Number of modified files
- Repositories are grouped by their parent directory
- The list is displayed in an interactive table format
- Click on any repository name to open it in VS Code
- Use the Refresh button to rescan for changes
- Use the command palette:
Ctrl+Shift+P(orCmd+Shift+Pon Mac) - Type "Git Projects Welcome"
- Select "Open Git Projects Panel"
Simply click on any repository name in the list to open that folder in VS Code.
Click the "🔄 Refresh" button in the panel to manually rescan for changes.
- Git Projects Welcome: Open Git Projects Panel: Opens the interactive webview panel with all discovered projects
- Git Projects Welcome: Refresh Git Projects: Manually refresh the repository list
- Git Projects Welcome: Open Project: Opens a specific project (called automatically when clicking on a repo)
npm run compilenpm run watchnpm testgitScanner.ts: Core logic for finding git repositories and gathering informationwebviewProvider.ts: HTML/CSS content generation for the UIextension.ts: VS Code extension entry point and command handlers
Initial release with basic repository scanning and list display functionality.
This extension was born from an experimental "vibe coding" session using GitHub Copilot. It demonstrates how AI-assisted development can rapidly prototype feature-rich VS Code extensions. The iterative feedback loop between developer and Copilot led to a clean, functional tool for managing multiple git projects efficiently.