explaingit

hunvreus/devpush

4,652PythonAudience · developerComplexity · 4/5LicenseSetup · hard

TLDR

A self-hosted alternative to Vercel and Netlify that automatically builds and deploys your app to your own Linux server whenever you push code to GitHub, with instant rollback and custom HTTPS domains.

Mindmap

mindmap
  root((devpush))
    What it does
      Auto-deploy from GitHub
      Self-hosted platform
      Zero-downtime updates
    Features
      Branch environments
      Instant rollback
      Custom domains
      Auto HTTPS
    Team
      Role-based access
      Invite collaborators
      Encrypted env vars
    Tech
      Python
      Docker
      Ubuntu or Debian
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Set up automatic deploys from a GitHub branch to your own Linux server so every push goes live without manual steps

USE CASE 2

Host multiple apps with custom domains and automatic HTTPS certificates without paying for Vercel or Render

USE CASE 3

Roll back a broken deployment to the previous working version instantly from the web dashboard

USE CASE 4

Keep staging and production environments separate by mapping each Git branch to its own environment

Tech stack

PythonDocker

Getting it running

Difficulty · hard Time to first run · 1h+

Requires a Linux server running Ubuntu 20.04 or Debian 11, a GitHub App, wildcard DNS subdomain setup, and an email provider for invitations.

Use, modify, and distribute freely for any purpose, as long as you keep the copyright notice.

In plain English

/dev/push is a self-hosted, open-source alternative to deployment platforms like Vercel, Render, and Netlify. If you want the experience of pushing code to GitHub and having it automatically build and deploy to your own server, this tool sets that up without requiring a paid third-party service. The core workflow is git-based: you connect a GitHub repository, configure which branch maps to which environment, and from that point on, a push to that branch triggers a build and deployment with zero-downtime updates. If something goes wrong, you can roll back to the previous version instantly. You can also map multiple environments, for example keeping a staging branch separate from production. The platform supports any language that can run inside a Docker container, including Python, Node.js, and PHP. Each project gets its own environment variables, stored encrypted. Custom domains are supported with automatic SSL certificate provisioning via Let's Encrypt. A web-based dashboard shows real-time build logs and runtime logs, and team management features let you invite collaborators with role-based permissions. Setup requires a Linux server running Ubuntu 20.04 or Debian 11, a GitHub account to create a GitHub App for repository access and login, and an email provider for sending invitations. Installation is a single curl command followed by editing a configuration file. DNS setup involves pointing your domain and a wildcard subdomain at your server so each deployed app gets its own address. The project is written primarily in Python, released under the MIT license, and actively maintained with documentation at devpu.sh.

Copy-paste prompts

Prompt 1
I want to set up devpush on my Ubuntu 20.04 server to auto-deploy a Node.js app from GitHub. Walk me through the installation and GitHub App creation steps.
Prompt 2
My deployment failed using devpush. Where do I find the real-time build logs in the dashboard, and how do I roll back to the previous version?
Prompt 3
I want to add a custom domain with automatic HTTPS to a devpush-deployed app. What DNS records do I need, and how does Let's Encrypt provisioning work?
Prompt 4
How do I invite a team member to my devpush instance and restrict their access to a specific project only?
Prompt 5
I deploy a Python Flask app. Write a minimal Dockerfile that devpush can use to build and run it.
Open on GitHub → Explain another repo

← hunvreus on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.