Self-hosted PaaS for deploying any application with zero configuration
Push your code. We build, containerize, and deploy it automatically.
Features • Quick Start • Deployment • Tech Stack • Contributing
- 🔧 Zero Config Deployments - Push your code, we detect the framework and deploy
- 🌐 9 Language Support - Node.js, Python, Go, Ruby, Rust, Java, PHP, Elixir, Static
- 🐳 Docker Native - Custom Dockerfile? We'll use it. None? We generate one
- 📊 IaC Visualizer - Upload Terraform/CloudFormation and see interactive diagrams
- 📝 Real-time Logs - Watch your builds and deployments live
- 🔐 Environment Variables - Securely manage secrets per project
- 🎨 Modern Dashboard - Beautiful dark-themed UI with responsive design
# Clone the repository
git clone https://github.com/Codekage25/deployhub.git
cd deployhub
# Install dependencies
npm install
# Start development server
npm run devOpen http://localhost:5173 - API runs on port 3001.
# Clone and deploy
git clone https://github.com/Codekage25/deployhub.git
cd deployhub
# Start with Docker Compose
docker-compose up -d --buildOpen http://localhost
For production deployment on a VPS, see DEPLOY.md.
Quick deploy to any VPS (DigitalOcean, Hetzner, Linode):
# Upload to server
scp -r . root@YOUR_SERVER:/opt/deployhub
# SSH and run setup
ssh root@YOUR_SERVER
cd /opt/deployhub
chmod +x setup-vps.sh
./setup-vps.shdeployhub/
├── apps/
│ ├── api/ # Fastify backend
│ │ ├── src/
│ │ │ ├── routes/ # API endpoints
│ │ │ ├── services/ # Builder, deployer, IaC parser
│ │ │ └── db/ # SQLite database
│ │ └── package.json
│ │
│ └── web/ # React frontend
│ ├── src/
│ │ ├── pages/ # Dashboard, Projects, IaC
│ │ ├── components/ # Reusable UI components
│ │ └── api/ # API client
│ └── package.json
│
├── packages/
│ └── shared/ # Shared types
│
├── docker-compose.yml
├── Dockerfile
└── nginx.conf
Backend:
- Fastify - Fast, low-overhead web framework
- SQLite - Embedded database (via better-sqlite3)
- Dockerode - Docker SDK for Node.js
- simple-git - Git operations
Frontend:
- React - UI library
- Vite - Build tool
- React Flow - IaC diagram visualization
- Lucide - Icons
- Zustand - State management
Infrastructure:
- Docker - Container runtime
- Nginx - Reverse proxy
- Let's Encrypt - SSL certificates
# Register
POST /api/auth/register
{ "email": "user@example.com", "password": "password" }
# Login
POST /api/auth/login
{ "email": "user@example.com", "password": "password" }# List projects
GET /api/projects
# Create project
POST /api/projects
{ "name": "my-app", "repoUrl": "https://github.com/user/repo", "branch": "main" }
# Deploy project
POST /api/deployments/trigger/:projectId# Parse IaC file
POST /api/iac/parse
{ "name": "my-infra", "sourceType": "terraform", "content": "..." }
# List diagrams
GET /api/iac/diagramsContributions are welcome! Please read our contributing guidelines.
- 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
# Install dependencies
npm install
# Run tests
npm test
# Run linter
npm run lintThis project is licensed under the MIT License - see the LICENSE file for details.
- Inspired by Heroku, Render, Railway
- Built with ❤️ for developers who want to own their deployment infrastructure
If you find this useful, please ⭐ star the repo!
Made with ❤️ by Abdulkareem Babatunde


