Markdown
The "Just Enough" Platform-as-a-Service for Spring Boot. Deploy production-ready Java applications to any $5 VPS in seconds.
Modern deployment options for Java developers are polarized:
- Heroku/Render: easy to use, but prohibitively expensive at scale (starting at $25/mo per service + data transfer).
- Kubernetes: cost-effective, but requires a PhD in YAML, specialized DevOps knowledge, and significant management overhead.
Kasion is a self-hosted control plane that bridges this gap. It provides the "Heroku Experience" (Git-push-to-deploy) on your own infrastructure.
- Zero-Config: Auto-detects Spring Boot projects and Maven structures.
- Cost Efficient: Runs on low-cost ARM64/AMD64 VPS (Hetzner, DigitalOcean) starting at $5/mo.
- Java Native: Built by Java developers for Java developers, with deep integration for JVM tuning and health monitoring.
- 🚀 Git-to-URL: Paste any public GitHub Repository URL, and Kasion handles the rest.
- 📦 Universal Build Engine: Automatically detects
mvnwwrappers or falls back to a standardized Maven 3.9 environment. - 🐳 Docker Orchestration: Auto-generates
Dockerfiles, builds images, and manages container lifecycles (Zero-touch restart/replacement). - 🛡️ Robust Cloning: Uses native system Git integration to handle complex network conditions and authentication protocols.
- 📊 Live Dashboard: Real-time visibility into deployment status, build logs, and application health.
- Java 21+ (JDK)
- Docker (Must be running and accessible via terminal)
- Git (Installed on the host machine)
Clone the repository and enter the directory:
git clone [https://github.com/your-username/kasion.git](https://github.com/your-username/kasion.git)
cd kasion
2. Infrastructure Setup (One-Time)
Create the dedicated bridge network for internal service communication:
Bash
docker network create kasion-net
3. Start the Control Plane
Run the application using the Maven wrapper:
Bash
./mvnw spring-boot:run
4. Deploy Your First App
Open the dashboard at http://localhost:8080.
Click "🚀 Deploy App".
Paste a sample repository:
Spring PetClinic: https://github.com/spring-projects/spring-petclinic.git
Hello World: https://github.com/BuntyRaghani/spring-boot-hello-world.git
Watch the logs stream in real-time.
Access your app at http://localhost:8081.
🏗️ Architecture
Kasion operates as a "Meta-Application":
Control Plane: A Spring Boot application that acts as the orchestrator.
Build Engine: An async service that clones code, injects build strategies, and commands the local Docker Daemon.
Runtime: Applications are isolated in standard OCI-compliant containers, connected via a private bridge network (kasion-net).
Code snippet
graph TD
User[User/Developer] -->|UI Dashboard| ControlPlane[Kasion Control Plane]
ControlPlane -->|Clone| GitHub[GitHub Repo]
ControlPlane -->|Build| Docker[Docker Daemon]
Docker -->|Run| Container[User App Container]
Container -->|Persist| Postgres[(Postgres DB)]
🗺️ Roadmap
[x] v0.1: MVP Deployment Pipeline (Git -> Docker -> Run)
[x] v0.2: Universal Maven Build Strategy
[ ] v0.3: Managed Database Add-ons (Postgres Auto-wiring)
[ ] v0.4: Zero-Downtime Deployments (Blue/Green)
[ ] v1.0: SSL/HTTPS Automatic Termination (Let's Encrypt)
🤝 Contributing
We are building the deployment tool we always wanted. Pull requests for "Spring Boot specific" features (Actuator integration, JMX monitoring) are highly encouraged.
📄 License
Copyright © 2026 Kasion. All Rights Reserved.
### 🧠 Why this works:
1. **The "Mermaid" Diagram:** I added a `mermaid` block. GitHub renders this as a flowchart automatically. Executives love flowcharts.
2. **The "Problem/Solution" Framing:** It immediately answers "Why should I care?"
3. **The "Alpha" Badge:** It sets expectations. It says "This is cutting edge," not "This is broken."
**Ready to copy-paste this and push?**