Doppler is an automated deployment platform that allows developers to deploy web applications simply by pushing code to GitHub. Built using AWS, Docker, Jenkins, GitHub Actions, Node.js, and Nginx, Doppler automates the entire process of building, containerizing, and hosting applications โ all while providing a clean dashboard for logs, deployment status, and URLs.
Doppler is a cloud-based automated deployment platform that lets users deploy apps instantly through GitHub integration. When a user pushes code, Doppler automatically:
- Builds the project
- Creates a Docker container
- Deploys it on AWS infrastructure
- Generates a deployment URL
- Tracks status & logs in a dashboard
This makes Doppler ideal for:
- Student projects
- Hackathon submissions
- Small developer teams
- Full-stack web applications
- JWT-based login
- Optional GitHub OAuth (for repo access)
- Connect a repository
- Auto-create a webhook
- Trigger deployments on every push
- GitHub Actions for testing
- Jenkins for build + dockerization
- Automated deployment pipeline
Each project runs in its own container for security & scalability.
- View deployments
- Check live status
- Access real-time logs
- Open deployed URL
- EC2 for Jenkins + Docker runtime
- Route 53 for subdomains
- S3 for logs & artifacts
โโโโโโโโโโโโโโโโโ
โ User โ
โโโโโโโโฌโโโโโโโโโ
โ Login / Create Project
โโโโโโโโผโโโโโโโโโ
โ Doppler UI โ
โโโโโโโโฌโโโโโโโโโ
โ API Calls
โโโโโโโโผโโโโโโโโโ
โ Doppler Backendโ
โโโโโโโโฌโโโโโโโโโ
Create webhook โ
โโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ GitHub Repo โ
โโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Push Event Triggers Webhook
โโโโโโโโโโโผโโโโโโโโโโโ
โ Doppler Webhook API โ
โโโโโโโโโโโฌโโโโโโโโโโโ
โ Trigger Build
โโโโโโโโโโโผโโโโโโโโโโโโโโโ
โ Jenkins Server โ
โโโโโโโโโโโฌโโโโโโโโโโโโโโโ
โ Build โ Dockerize โ Run
โโโโโโโโโโโผโโโโโโโโโโโโโโโ
โ AWS EC2 (Docker Host) โ
โโโโโโโโโโโฌโโโโโโโโโโโโโโโ
โ Expose via Reverse Proxy
โโโโโโโโโโโผโโโโโโโโโโโ
โ Subdomain / URL โ
โโโโโโโโโโโโโโโโโโโโโโโ
- React.js
- Axios
- TailwindCSS (optional)
- Node.js
- Express.js
- MongoDB / PostgreSQL
- JWT Auth
- GitHub Actions
- Jenkins Pipelines
- AWS EC2
- Nginx Reverse Proxy
- Docker & Docker Compose
- Route 53
- S3 (optional)
- User logs in to Doppler dashboard
- User adds GitHub repo + config
- Doppler automatically creates a GitHub webhook
- User pushes code โ GitHub triggers webhook
- Backend triggers Jenkins pipeline
- Jenkins:
- Clones repo
- Installs dependencies
- Builds app
- Builds Docker image
- Runs container on EC2
- Backend stores deployment info
- Frontend shows updated deployment logs & URL
doppler/
โ
โโโ backend/
โ โโโ src/
โ โ โโโ routes/
โ โ โโโ controllers/
โ โ โโโ models/
โ โ โโโ services/
โ โ โโโ index.js
โ โโโ package.json
โ
โโโ frontend/
โ โโโ src/
โ โโโ public/
โ โโโ package.json
โ
โโโ jenkins/
โ โโโ Jenkinsfile (CI/CD pipeline)
โ
โโโ docker/
โโโ reverse-proxy/
- Node.js v16+
- Docker & Docker Compose
- MongoDB or PostgreSQL
- AWS Account
- Jenkins Server
- GitHub Account
git clone https://github.com/whyom17/doppler.git
cd dopplercd backend
npm install
cp .env.example .env
npm startEnvironment Variables:
PORT=3000
MONGO_URI=your-db-uri
JWT_SECRET=your-secret
JENKINS_URL=http://your-jenkins:8080
JENKINS_USER=admin
JENKINS_TOKEN=xxxxxxcd frontend
npm install
npm startGitHub โ Jenkins โ Docker โ Deployment
- Jenkinsfile builds & dockerizes app
- Docker container gets hosted on EC2
- Backend receives callback from Jenkins
- Dashboard updates deployment status
Production Deployment Includes:
- AWS EC2
- Nginx Reverse Proxy
- PM2 or systemd for backend
- SSL via Let's Encrypt
- Route 53 for domain + subdomains
- Live logs streaming (WebSockets)
- Support for custom domains
- Build caching
- Multi-cloud support (GCP / Azure)
- Build artifacts storage on S3
- Serverless functions (like Vercel Edge Runtime)
- User-level rate limiting & quotas
MIT License - Feel free to use this project for learning or production.
โญ Star this repo if you find it helpful!