Skip to content

My attempt to create Vercel. Supports static sites, global CDN, preview deployments, instant rollbacks and custom subdomain for projects.

License

Notifications You must be signed in to change notification settings

mdhruvil/deplit

Repository files navigation

Deplit

Ask DeepWiki

Deplit is my attempt to create Vercel from scratch. I have been using Vercel and Cloudflare Pages to host my sites. So one day I thought How does this actually works ? Then I started to research about this topic and created this topic.

The blog Behind the scenes of Vercel's infrastructure was very helpful in understaing how vercel actually works under the hood.

Blog Post on Deplit's technical details: https://mdhruvil.github.io/blog/deplit/

YouTube video showcasing deplit: https://www.youtube.com/watch?v=a4w8_rXajl4

🌟 Features

  • Instant Rollback - One-click rollback to previous deployments
  • 📦 Preview Deployments - Preview your deployments before production.
  • 🌐 Global CDN - Serve your site from nearest to your users
  • 🚀 Instant Automatic Deployments - Push to GitHub, get instant deployments
  • 🔗 Subdomains - Free .deplit.tech subdomains for all projects
  • 🔒️ Private Repo - Deploy from your private repositories
  • 📊 Build Logs - Real-time build monitoring and detailed logs
  • 💻️ Serverless Function (Soon) - Deploy your SSR or ISR apps to deplit

📦️ Project Structure

.
├── apps
│   ├── api                # main backend api
│   ├── builder            # container image for building user code
│   ├── controlplane       # dashboard
│   ├── proxy              # cf worker that works as proxy for *.deplit.tech/*
│   └── sidecar            # Secure proxy for builder communication
├── bruno
├── LICENSE
├── package.json
├── packages               # shared packages
│   ├── eslint-config
│   ├── typescript-config
│   └── ui
├── pnpm-lock.yaml
├── pnpm-workspace.yaml
├── README.md
└── turbo.json

🏗️ Infrastructure

  • Cloudflare Workers (proxy, api)
  • Cloudflare Cache layer (proxy)
  • Cloudflare D1 (database)
  • Cloudflare KV (kv store for metadata)
  • Azure Container App Jobs (build container and sidecar)
  • Azure Blob Storage (for storing build assets)
  • GitHub Packages (for publishing builder, sidecar images)

💻️ Local Setup

TODO

🧑‍💻 Contributing

TODO

📄 License

MIT

📸 Screenshots

dashboard-home deployments deployment-page

About

My attempt to create Vercel. Supports static sites, global CDN, preview deployments, instant rollbacks and custom subdomain for projects.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors 3

  •  
  •  
  •