WebRun 🚀
One-click dev server for any project!
WebRun automatically detects your project type and runs the appropriate development server with a single click. No more remembering commands or switching between terminals.

✨ Features
🔍 Auto-Detection
WebRun intelligently scans your workspace to detect:
- package.json - Dependencies and scripts
- Config files - vite.config, next.config, angular.json, etc.
- Folder structure - Fullstack project layouts
- Python files - requirements.txt, manage.py, main.py
🎯 Supported Project Types
| Category |
Frameworks |
| Frontend |
React (Vite/CRA), Vue (Vite/CLI), Next.js, Nuxt.js, Angular, Svelte, Astro, Remix |
| Backend (Node.js) |
Express.js, Fastify, NestJS, Generic Node.js |
| Backend (Python) |
Flask, Django, FastAPI |
| Static |
Plain HTML/CSS/JS |
| Fullstack |
Auto-detects frontend + backend folders |
🎮 One-Click Controls
- ▶️ Play Button - Status bar button to start dev server
- ⏹️ Stop Button - Stop running servers
- 🔄 Restart - Click play again to restart
- 📦 Project Info - See detected project type
⌨️ Keyboard Shortcuts
| Action |
Windows/Linux |
Mac |
| Start Server |
Ctrl+Shift+R |
Cmd+Shift+R |
| Stop Server |
Ctrl+Shift+S |
Cmd+Shift+S |
| Restart |
Ctrl+Shift+Alt+R |
Cmd+Shift+Alt+R |
📦 Installation
From VS Code Marketplace
- Open VS Code
- Go to Extensions (
Ctrl+Shift+X)
- Search for "WebRun"
- Click Install
From VSIX File
- Download the
.vsix file
- Open VS Code
- Run command:
Extensions: Install from VSIX...
- Select the downloaded file
🚀 Usage
- Open a project folder in VS Code
- WebRun automatically detects the project type
- Click the ▶️ WebRun button in the status bar
- Your dev server starts in the integrated terminal!
Command Palette Commands
WebRun: Start Dev Server - Start the development server
WebRun: Stop Server - Stop running servers
WebRun: Restart Server - Restart the server
WebRun: Detect Project Type - Re-scan the workspace
WebRun: Show Project Info - View detected project details
WebRun: Select Project Type Manually - Override auto-detection
⚙️ Configuration
Add these settings to your VS Code settings:
{
"webrun.liveServerPort": 5500,
"webrun.autoDetect": true,
"webrun.showStatusBar": true,
"webrun.customCommands": {
"react-vite": "npm run dev -- --port 3000",
"nextjs": "npm run dev -- -p 4000"
}
}
Settings Reference
| Setting |
Default |
Description |
webrun.liveServerPort |
5500 |
Port for static HTML live server |
webrun.autoDetect |
true |
Auto-detect on workspace open |
webrun.showStatusBar |
true |
Show status bar button |
webrun.customCommands |
{} |
Custom commands per project type |
🔧 How Detection Works
Detection Priority
- package.json dependencies - Most reliable
- Config files - vite.config.js, next.config.js, etc.
- Python files - requirements.txt, manage.py
- Entry files - server.js, app.py, index.html
- Folder structure - frontend/backend, client/server
Command Mapping
| Project Type |
Default Command |
| Static HTML |
npx live-server --port=5500 |
| React/Vue/Svelte (Vite) |
npm run dev |
| Create React App |
npm start |
| Next.js |
npm run dev |
| Angular |
npm start |
| Vue CLI |
npm run serve |
| Node.js Backend |
npm run dev or npm start |
| NestJS |
npm run start:dev |
| Flask |
flask run --debug |
| Django |
python manage.py runserver |
| FastAPI |
uvicorn main:app --reload |
Fullstack Projects
WebRun detects common fullstack structures:
frontend/ + backend/
client/ + server/
web/ + api/
packages/web/ + packages/api/
Both servers start in separate terminals!
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature)
- Commit your changes (
git commit -m 'Add amazing feature')
- Push to the branch (
git push origin feature/amazing-feature)
- Open a Pull Request
📝 Publishing to VS Code Marketplace
Prerequisites
- Create a Microsoft/Azure account
- Create a publisher on Visual Studio Marketplace
- Get a Personal Access Token (PAT) from Azure DevOps
Steps
# Install vsce globally
npm install -g @vscode/vsce
# Login with your publisher
vsce login your-publisher-name
# Package the extension
vsce package
# Publish to marketplace
vsce publish
Before Publishing Checklist
- [ ] Update
publisher field in package.json
- [ ] Add a 128x128 PNG icon to
images/icon.png
- [ ] Update repository URL in package.json
- [ ] Test the extension thoroughly
- [ ] Update version number
- [ ] Write a good description and changelog
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
Made with ❤️ for developers who just want to run their code!