A cloud platform built for developers and students.
Deploy apps, APIs, workers, and databases without managing servers.
Ship your code, skip the server chores. CodeHost is a developer-first PaaS for deploying projects from Git or ZIP uploads. It detects common frameworks, runs projects in isolated containers, and provides managed databases, HTTPS, and prepaid usage.
| 📦 Deploy your way Connect a GitHub repository or upload a ZIP. Framework detection handles the build. |
⚡ Start from a template Launch Next.js, FastAPI, Express, Django, Go, and Flask starters. |
| 🗄️ Add managed databases Provision PostgreSQL, MySQL, Redis, or MongoDB alongside your app. |
🌙 Save while idle Containers can sleep without traffic and wake when requests return. |
| 🔒 Go live securely Get a CodeHost subdomain, automatic TLS, and custom domain support. |
💳 Keep spend predictable Prepaid credits and a free tier. See the platform for current plans. |
| Stack | |
|---|---|
| 🖥️ Web app | Next.js 16 · TypeScript · Tailwind CSS |
| 🔌 API | Express · TypeScript · Socket.IO |
| 💾 Data | PostgreSQL · Prisma · Redis |
| 📦 Runtime | Docker · Docker Compose · Nginx |
The platform is organized as a monorepo: frontend/ contains the Next.js app, backend/ the API, billing/ billing services, database/ the Prisma schema, packages/ shared modules, and infra/ deployment configuration.
The Compose configuration runs the web app and API from published container images. It expects Docker, a configured reverse proxy network, and the environment values described in infra/.env.example.
🧩 Requirements and first-time setup
-
Install Docker Engine and the Docker Compose plugin.
-
Clone the repository and enter it:
git clone https://github.com/Arsh-Pathan/CodeHost.git cd CodeHost -
Create the environment file and set the required values, including
PUID,PGID, database credentials, and strong JWT secrets:cp infra/.env.example infra/.env
-
Create the external Docker network expected by the Compose configuration (connect your reverse proxy to this network too):
docker network create proxy
▶️ Start the services
Run Compose from the infra/ directory:
cd infra
docker compose up -dThe deployment uses the published ghcr.io/arsh-pathan/codehost-api and ghcr.io/arsh-pathan/codehost-web images. Configure the domain and reverse proxy settings in infra/.env for your setup. Optional integrations such as OAuth, SMTP, and Razorpay need their own credentials.
🔐 Environment variables and integrations
Use infra/.env.example as the source of truth. Change the example passwords and JWT secrets before exposing an instance publicly. OAuth providers, SMTP, and Razorpay are optional; fill in their variables only when enabling those integrations.
The platform runs customer projects in separate Docker containers with CPU and memory limits. Treat the Docker socket and deployment credentials as privileged: restrict host access and keep secrets out of source control.
Bug reports, ideas, and pull requests are welcome. Please open an issue to discuss larger changes before submitting a pull request.
CodeHost is distributed under the MIT License.
