GitGo is a desktop application that turns any GitHub repository into a running application locally with a single click. Designed for non-developers, researchers, and hobbyists, GitGo handles environment setup, containerization, configuration, and error troubleshooting automatically using local Docker and AI LLM agents.
🌐 Live Documentation Site: View GitHub Pages Website (Deployable via GitHub Pages /docs directory)
- Automated Repository Analysis: Paste a public GitHub URL and GitGo will clone the repository, read documentation/dependencies, and automatically detect or generate Docker container configurations.
- Dynamic Configuration Form (
.envUI): Automatically extracts environment variable requirements (API keys, ports, DB URLs) and presents a clean, user-friendly form with helper text and tooltips. - Background Build & Execution: Runs Docker builds and container executions in the background with streaming, translated logs (translating raw build outputs into plain English).
- AI Error Resolution ("Magic Button"): If a container build fails or crashes, GitGo analyzes the stderr/logs using OpenAI or Anthropic LLMs to auto-fix Dockerfiles or provide clear, actionable user instructions.
- Secure Key Management: Stores API keys locally using OS keychain encryption (
safeStorage). - Modern Glassmorphic UI: Designed with TailwindCSS, smooth micro-animations, interactive project management sidebar, and terminal log view.
- Desktop Framework: Electron.js
- Frontend: React 19, TypeScript, TailwindCSS v3, Lucide Icons
- Build Tooling:
electron-vite, Vite - Container Runtime Engine: Docker Desktop CLI
- AI Providers: OpenAI (
gpt-4o) & Anthropic (claude-sonnet-4-20250514)
- Docker Desktop: Must be installed and running on your machine.
- Git: Installed and available in your system path.
- LLM API Key: An API key from either OpenAI or Anthropic.
npm installStart the application in development mode with HMR:
npm run devTo compile TypeScript and bundle the application for production:
# Type check & build assets
npm run build
# Package for your platform
npm run build:linux # Linux (.AppImage / .deb)
npm run build:mac # macOS (.dmg)
npm run build:win # Windows (.exe)├── src/
│ ├── main/ # Electron main process
│ │ ├── index.ts # Window creation & security headers
│ │ ├── ipc-handlers.ts # IPC bridges between frontend and services
│ │ └── services/ # Core Node.js services
│ │ ├── docker.service.ts # Docker CLI runner (execFile)
│ │ ├── git.service.ts # Repo clone & directory parsing
│ │ ├── keystore.service.ts # OS keychain API key storage
│ │ ├── llm.service.ts # OpenAI & Anthropic API integrations
│ │ └── project.service.ts # Local project metadata & state
│ ├── preload/ # Context bridge preload scripts
│ ├── renderer/ # React UI application
│ │ └── src/
│ │ ├── components/ # React UI components (Sidebar, Forms, Terminal)
│ │ ├── context/ # Global state reducer & context provider
│ │ └── assets/ # Global CSS & Tailwind design system
│ └── shared/ # Shared TypeScript interfaces & IPC definitions
- Process Isolation: Context isolation (
contextIsolation: true) and sandboxing are enabled for renderer processes. - Input Validation: GitHub URLs are strictly validated; paths are checked against directory traversal risks; environment key names are sanitized.
- Safe Command Execution: Commands are executed via
execFilewithout shell interpolation. - Encrypted Storage: Sensitive API credentials are encrypted with native OS keychains before persisting to disk.
Distributed under the MIT License. See LICENSE for details.
