Skip to main content

Get your project up and running in a few minutes on your own vps.

Project description

fujin

[!IMPORTANT] This tool is currently contains minimal features and is a work-in-progress

fujin is a simple deployment tool that helps you get your project up and running on a VPS in minutes. It manages your app processes using systemd and runs your apps behind caddy.

Publish Package PyPI - Version PyPI - Python Version MIT License Status

Features

  • 🚀 One-command server bootstrap
  • 🔄 Rollback broken deployments
  • 🔐 Zero configuration SSL certificates
  • 🔁 Swappable proxy (caddy, nginx and dummy to disable proxy)
  • 🛠️ Secrets injection from password managers (Bitwarden, 1Password, etc.)
  • 📝 Easily customizable systemd and proxy configurations
  • 👨‍💻 Remote application management and log streaming
  • 🐍 Supports packaged python apps and self-contained binaries

For more details, check out the documentation📚.

Why?

I wanted kamal but without Docker, and I thought the idea was fun. At its core, this project automates versions of this tutorial. If you've been a Django beginner trying to get your app in production, you probably went through this.

I'm using caddy here by default instead of nginx because it's configurable via an API and it's is a no-brainer for SSL certificates. Systemd is the default on most Linux distributions and does a good enough job.

Fujin was initially planned to be a Python-only project, but the core concepts can be applied to any language that can produce a single distributable file (e.g., Go, Rust).

The goal is to automate deployment while leaving you in full control of your Linux box. It's not a CLI PaaS - it's simple and expects you to be able to SSH into your server and troubleshoot if necessary. For beginners, it makes the initial deployment easier while you get your hands dirty with Linux. If you need a never-break, worry-free, set-it-and-forget-it setup that auto-scales and does all the magic, fujin probably isn't for you.

Inspiration and alternatives

Fujin draws inspiration from the following tools for their developer experience. These are better alternatives if you need a more robust, set-and-forget solution

  • fly.io
  • kamal (you probably can't just forget this one)

License

fujin is distributed under the terms of the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fujin_cli-0.10.0.tar.gz (128.6 kB view details)

Uploaded Source

Built Distribution

fujin_cli-0.10.0-py3-none-any.whl (35.1 kB view details)

Uploaded Python 3

File details

Details for the file fujin_cli-0.10.0.tar.gz.

File metadata

  • Download URL: fujin_cli-0.10.0.tar.gz
  • Upload date:
  • Size: 128.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for fujin_cli-0.10.0.tar.gz
Algorithm Hash digest
SHA256 8ce0162731815a1328a28532d3e4a8f64097bbb037c732d9c05e160e67d18cff
MD5 c116600565b4fca48e2b89d5a52d61ea
BLAKE2b-256 a0404430eec67bb51af828bec3ef7ddc56019db09eef07ce790b68b354d7bfa1

See more details on using hashes here.

Provenance

The following attestation bundles were made for fujin_cli-0.10.0.tar.gz:

Publisher: publish.yml on falcopackages/fujin

Attestations:

File details

Details for the file fujin_cli-0.10.0-py3-none-any.whl.

File metadata

  • Download URL: fujin_cli-0.10.0-py3-none-any.whl
  • Upload date:
  • Size: 35.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for fujin_cli-0.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 603f95e983ea6e2e48fe358e43e8a111c22e5ea6212fe67c8f56949db5b8ff3b
MD5 a9f1ef7bcec935b751a46de45e24ac84
BLAKE2b-256 3badaf0279ad5e04ee3a0ff2007e49916cb182b13f0f4553120e9f939ed89cf4

See more details on using hashes here.

Provenance

The following attestation bundles were made for fujin_cli-0.10.0-py3-none-any.whl:

Publisher: publish.yml on falcopackages/fujin

Attestations:

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page