Devinity is not yet publicly available. Join the waiting list to get notified when it launches.
Devinity is a self-hosted Git and CI/CD platform secured by a WireGuard VPN. Push code and it gets built and deployed on your server automatically inside the VPN network, with optional public exposure.
The server auto-detects your project type, runs the appropriate build, and figures out how to start the app. Supported ecosystems include Java (Maven, Gradle), JavaScript/TypeScript (npm, yarn, pnpm, bun, Deno), Go, Rust, Python (Django, generic), Ruby (Rails, Bundler), PHP (Laravel, Composer), .NET, Elixir, Scala, Swift, and Zig.
Developer WireGuard VPN Devinity Server
+-----------+ encrypted tunnel +------------------+
| | ------------------------->| |
| git push | UDP 51820 | receive push |
| | | detect project |
+-----------+ | build & deploy |
| |
| myapp.internal |
+------------------+
git push to
the Devinity server through the VPN.<app>.<server>.internal
inside the VPN immediately after deploy.
Server: AlmaLinux 10, root SSH access (ed25519),
public IP, UDP 51820 open.
Client: wireguard-tools, the
devinity binary.
$ devinity server init root@example.com $ devinity server init root@example.com -i ~/.ssh/id_ed25519 $ devinity server init root@example.com -n myserver --hostname cloud.example.com
Use -i to specify the SSH private key if it is not
the default. This copies the binary to the remote server,
generates admin VPN keys, and configures the WireGuard tunnel.
The administrator is automatically enrolled and can verify the
connection:
$ devinity server ssh
The developer generates credentials locally:
$ devinity vpn enroll example.com user@example.com jdoe \
203.0.113.10 <server-wg-pubkey>
This outputs an SSH public key and a WireGuard public key. The developer sends both to the administrator.
$ devinity server users add user@example.com jdoe \
<ssh-pubkey> <vpn-pubkey>
The server auto-detects your project type, runs the appropriate build, and detects how to start the app. In most cases no configuration file is needed at all:
$ devinity vpn connect $ devinity git init myapp $ cd myapp $ git add . && git commit -m "initial commit" $ git push
The push triggers an automatic build and deploy. The app is now running and reachable inside the VPN.
For more control, add a .devinity file in the
repository root:
[start] java -jar target/app.jar
Optional sections include [setup] for build commands,
[auto-deploy] to control automatic deployment,
[devinity-port-name-mapping] for custom port variable
names, and [domains] to assign custom domains.
See the User Guide
for the full reference.
Every Devinity server includes a web-based Git repository browser
powered by cgit, accessible at
https://git.internal inside the VPN. Browse
commits, diffs, and file trees from any browser without
leaving the VPN network.
The name Devinity is a blend of four words: divine, development, deployment, and initialize. It captures the vision that setting up your own infrastructure and shipping code should feel seamless, almost divine. Too many developers surrender control of their projects to opaque cloud platforms, trading autonomy for lock-in and unpredictable costs. Devinity was created to give that power back: a single binary that turns any Linux server into a complete Git hosting and CI/CD platform, secured behind a private VPN, with zero external dependencies. No middleman, no vendor dashboard, no surprise invoice. Just initialize your server, push your code, and watch it deploy -- on hardware you own, under rules you set. That is the kind of sovereignty every developer deserves, and bringing it within reach is what Devinity is for.