Skip to main content

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

Project description

fujin

[!IMPORTANT] This tool 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 via Caddy
  • 🛠️ Secrets injection from password managers (Bitwarden, 1Password, etc.)
  • 📝 Ejectable Defaults: Full control over systemd and caddy templates
  • 👨‍💻 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 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.26.0.tar.gz (3.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fujin_cli-0.26.0-py3-none-any.whl (65.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fujin_cli-0.26.0.tar.gz
  • Upload date:
  • Size: 3.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fujin_cli-0.26.0.tar.gz
Algorithm Hash digest
SHA256 708689f364e48f1e3e80d0a567bfd232bca337139a14b3ea6f4d579a00ce4ccf
MD5 d20fddbaa478ce9e36717174a9389af2
BLAKE2b-256 333694dce6b3111bd3b911632e8ffdeb8fc52a564f671d32f36ee0f7e2435f80

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on Tobi-De/fujin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: fujin_cli-0.26.0-py3-none-any.whl
  • Upload date:
  • Size: 65.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for fujin_cli-0.26.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a45b744238bcd840fc5fba4a131c5d518512856f38eb2274796d00eb9b9ad0c8
MD5 ca250ca8dd90cb60e7f4d8b5e80d13b3
BLAKE2b-256 cbb96e2b262868d161805d45df2605a0f1fd3f40453e08b015f39cac2d47f16f

See more details on using hashes here.

Provenance

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

Publisher: publish.yml on Tobi-De/fujin

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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