A tool to create and manage Windows desktop scripts for launching project environments with specific applications and configurations.
Script Maker allows you to configure and generate Windows PowerShell scripts that launch multiple applications and terminal sessions for different projects. Perfect for setting up dedicated Windows 11 virtual desktops for each project.
- Web-based configuration UI for creating project scripts
- JSON-based script configurations
- Generates PowerShell scripts for Windows 11
- Creates Windows desktop shortcuts
- Supports:
- Multiple Windows Terminal tabs with different commands
- Chrome browser with multiple URLs
- Configurable working directories
- Sequential launch order (Terminal first, then Chrome)
For a project like "makeforme", create a script that:
- Opens Windows Terminal with multiple tabs:
- Tab 1:
cd projects/makeforme && claude - Tab 2:
cd projects/makeforme && npm run dev - Tab 3:
cd projects/makeforme(working directory)
- Tab 1:
- Opens Chrome with multiple tabs:
- localhost:5000 (local dev server)
- makefor.ai (production site)
- GitHub, Replit, Supabase, Google Analytics, etc.
- Frontend: HTML/CSS/JavaScript (local web UI)
- Backend: Node.js web server
- Config Storage: JSON files in
/configsdirectory - Script Output: PowerShell (.ps1) scripts in
/scriptsdirectory - Target Platform: Windows 11 with Windows Terminal (PowerShell profile)
scriptMaker/
├── README.md # This file
├── REQUIREMENTS.md # Detailed requirements
├── TODO.md # Task tracking
├── configs/ # JSON configuration files
├── scripts/ # Generated PowerShell scripts
├── server/ # Node.js web server
│ ├── index.js
│ └── package.json
└── public/ # Web UI files
├── index.html
├── style.css
└── app.js
- Install dependencies:
npm install - Start the web server:
npm start - Open browser to
http://localhost:3000 - Configure your project scripts
- Export and create desktop shortcuts
Scripts are stored as JSON files with the following structure:
{
"name": "project-name",
"terminal": {
"tabs": [
{
"directory": "C:\\Users\\username\\projects\\project-name",
"command": "claude"
}
]
},
"chrome": {
"urls": [
"http://localhost:5000",
"https://example.com"
]
}
}🚧 Project in initial development phase