Skip to content

BitLift is a lightweight open-source Vercel alternative for deploying frontend apps from GitHub. It handles repo cloning, zip extraction, static file hosting, and supports CI/CD-style workflows using Redis queues and background workers.

License

Notifications You must be signed in to change notification settings

JeetChauhan17/BitLift

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BitLift Logo

Self-hosted Vercel alternative with GitHub repo integration, Redis queues, workers & more

GitHub stars GitHub issues GitHub forks License


📦 Overview

BitLift is a self-hosted deployment platform inspired by Vercel. It automates the deployment of GitHub repositories using Redis queues and workers. It supports static frontend hosting, background job processing, and cloud storage – all built using modern tools like TypeScript, React, Redis, and Backblaze B2.


✨ Features

  • ⚙️ bitlift CLI — deploy sites from terminal
  • 🌐 bitlift-deploy-service — handles uploads
  • 🔁 bitlift-request-handler — background processor
  • 📊 Frontend UI — view deployments
  • ⚡ Fast local-first setup using Redis & Node.js

🛠 Tech Stack

  • Backend: Node.js, TypeScript, Express
  • CLI: Custom-built CLI using Node.js + TypeScript
  • Queue System: Redis + BullMQ (message brokering and job queues)
  • Worker: Dedicated background service for deployment processing
  • File Handling: adm-zip, fs, path
  • Static Hosting: http-server
  • Frontend: Vite + React
  • CI/CD: GitHub API integration (repo-based deployments)
  • Cloud Storage: Backblaze B2 Object Storage
  • Dev Tools: ts-node for TypeScript runtime, Docker (for Redis)

🚀 Getting Started

Prerequisites

  • Node.js (v18+)
  • Redis
  • Docker (optional, for Redis)
  • Unix shell (bash, zsh, etc.)

📥 Clone the repo

git clone https://github.com/JeetChauhan17/BitLift-Main.git
cd BitLift-Main

🔧 Setup with script (recommended)

chmod +x setup.sh
./setup.sh

This script installs dependencies, ensures Redis is running (via Docker), and starts your development servers.

📦 setup.sh handles:

  • Installing server/client dependencies
  • Starting Redis via Docker
  • Launching backend and frontend

🧪 Manual Setup for Individual Services

1. bitlift (CLI)

cd bitlift
npm install
npm run dev

Usage:

bitlift deploy ./your-static-site-folder

2. bitlift-deploy-service

Runs on port 3001. Accepts uploads from CLI.

cd bitlift-deploy-service
npm install
npm run dev

3. bitlift-request-handler

Redis-powered background worker.

cd bitlift-request-handler
npm install
npm run dev

4. frontend

A Vite-based UI to view deployed projects.

cd frontend
npm install
npm run dev

Visit: http://localhost:5173


Make sure Redis is running on port 6379

You can use Docker:

docker run -d --name bitlift-redis -p 6379:6379 redis

🌟 Star History

Star History Chart


🧠 Credits

Made with ❤️ by Jeet Chauhan


📄 License

This project is licensed under the MIT License. See LICENSE for details.

About

BitLift is a lightweight open-source Vercel alternative for deploying frontend apps from GitHub. It handles repo cloning, zip extraction, static file hosting, and supports CI/CD-style workflows using Redis queues and background workers.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages