Skip to content

SystemForge is a modular, Rust-based DevOps platform for deploying, managing, and monitoring applications across distributed nodes.

Notifications You must be signed in to change notification settings

otobongfp/systemforge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SystemForge

SystemForge is a modular, Rust-based DevOps platform for deploying, managing, and monitoring applications across distributed nodes. Whether you're hosting local apps or coordinating workloads across remote machines, SystemForge offers a unified toolbox for secure, performant, and developer-friendly system orchestration.


🚀 Features

CLI Interface

  • Deploy, stop, and restart apps from a single command-line interface
  • Pass .env variables and config files
  • View running app status and logs

Caddy Integration

  • Automatic reverse proxy configuration
  • Free HTTPS with Let's Encrypt
  • Subdomain binding per app (e.g., app.node.systemforge.net)

Firewall & Port Management

  • Iptables or nftables wrappers
  • Block/allow ports per app
  • Prevent port conflicts and scan for availability

SystemForge Node Agent

  • Runs on each participating machine
  • Launches and monitors containers
  • Reports system stats and resource usage
  • Enforces resource quotas

Coordinator API (Optional Central Server)

  • Accepts node registrations with disk space, open ports, and geolocation
  • Matches apps with eligible nodes for deployment
  • Tracks and schedules multi-node deployment

Monitoring & Telemetry

  • Real-time resource usage (CPU, RAM, Disk, Network)
  • Exposes Prometheus-compatible metrics
  • Health probes for app uptime monitoring

Secure Environment Management

  • Injects secure .env variables at runtime
  • App sandboxing through Docker
  • Per-app isolation with resource caps

Distributed App Deployment

  • Define app as TOML/JSON spec
  • Deploy to local or remote nodes
  • Supports binaries, Docker images, and static files

🏗️ Project Structure

systemforge/
├── cli/                 # CLI tool (clap + async executor)
├── node/                # SystemForge agent (launches apps, reports metrics)
├── coordinator/         # Central Rust API (Actix or Axum)
├── caddy_integration/   # Lib or wrapper for automatic Caddyfile management
├── deploy_schemas/      # JSON/TOML app deployment specs
├── firewall/            # Iptables/nftables rules abstraction
├── telemetry/           # Metrics/logs subsystem (Prometheus-compatible)
├── shared/              # Common crates, utils, error types, models

📋 Development Checklist

  • cli/ – Deploy, stop, restart apps
  • node/ – App runner + metrics
  • coordinator/ – Node tracking + API
  • caddy_integration/ – Reverse proxy manager
  • deploy_schemas/ – App spec definitions
  • firewall/ – Port/network rules
  • telemetry/ – System + app monitoring
  • shared/ – Common models + helpers

About

SystemForge is a modular, Rust-based DevOps platform for deploying, managing, and monitoring applications across distributed nodes.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages