Skip to content

SulgX/SulgX-Panel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 SulgX Panel (Version 1.0)

Status Python License Platform

Readme: English | فارسی

SulgX Panel Screenshot

A lightweight, self-hosted subscription management panel for VLESS over WebSocket + TLS.
Built entirely in a single Python file, powered by FastAPI and SQLite.

📸 Panel Overview

پنل SulgX - تصویر ۱

پنل SulgX - تصویر ۲


📖 Table of Contents


✨ Key Features

🔐 Security & Access

  • Robust Authentication: JWT-based sessions with HTTP‑only, secure cookies.
  • Anti‑Brute Force: Rate limiting applied to logins and API interactions.
  • Strict Passwords: Enforced policy (min 8 chars, uppercase, lowercase, numbers).
  • Audit Logging: Logs all login attempts (Success/Fail, IP, User‑Agent).

📡 Inbound Management

  • Full Lifecycle: Create, edit, toggle, and safely delete VLESS configs.
  • Granular Control: Per‑user traffic limits (GB), expiration days, and max concurrent connections.
  • Advanced Routing: Custom Path, SNI, Host, and TLS Fingerprints per inbound.
  • Bulk Operations: Batch activate, deactivate, reset, or delete configs.
  • Immutable Core: The default SulgX inbound is systematically protected against accidental deletion.

📊 Real‑Time Analytics

  • Live Speed Engine: Highly accurate Download/Upload charts with adaptive spike‑filtering.
  • Dynamic Metrics: 24‑hour real‑time traffic bars (timezone‑aware) and distribution doughnuts.
  • System Health: Live CPU, Memory, and Disk monitoring with loadavg fallbacks.

🗺️ Clean IP & Safe Scanner

  • IP Management: Add, edit, and bulk‑import IPv4/IPv6 addresses dynamically attached to subscriptions.
  • Safe Scanner: Scan port 443 across 24 predefined cloud providers (Cloudflare, AWS, Azure, etc.).
  • Anti‑Crash: Safely handles massive CIDR ranges (e.g., /14) by capping at 4,096 IPs to prevent browser freezing. Automatically excludes public DNS (8.8.8.8).

🤖 Smart Telegram Bot

  • Bilingual (EN/FA): Fully translatable templates.
  • Event Alerts: Panel Logins, Expired Users, Errors, and 90% Quota warnings.
  • Live Preview: Real‑time JSON template rendering in the dashboard.

🚀 Quick Start & Deployment

Note

SulgX will run on any platform that supports ASGI Python applications (Uvicorn/Gunicorn) and standard WebSocket connections.

🍴 Step 1: Fork the Repository

  1. Go to the main repository on GitHub: https://github.com/SulgX/SulgX-Panel
  2. Click the Fork button at the top right of the page.
  3. In the window that appears, select your own account as the destination and wait for the fork to complete.
  4. You now have a complete copy of the project under your GitHub account, which you can modify as you wish.

☁️ Step 2: Sign Up for a Cloud Platform

Choose one of the three recommended platforms below and sign up (you can often sign in directly with your GitHub account and grant access):

  • Render ← Main recommendation, no credit card required
  • Railway ← Modern interface, free initial credit
  • Dockfly ← Minimal and simple

🚀 Step 3: Deploy the Project

🔹 Deploy on Render
  1. In the Render dashboard, click New + and select Web Service.
  2. In the GitHub connection section, find your forked repository (SulgX-Panel) and click Connect.
  3. Render automatically reads the render.yaml file. Confirm the service name and branch.
  4. Scroll down to the Environment Variables section and enter the following variables:
    • ADMIN_PASSWORD
    • SECRET_KEY
    • DOMAIN
      (Values should follow the environment variables table later in this section.)
  5. Click Create Web Service. After a few minutes, your service's public URL will be generated (e.g., sulgx-test.onrender.com).
🔹 Deploy on Railway
  1. In Railway, click New Project and select Deploy from GitHub repo.
  2. Choose your forked repository.
  3. Railway automatically detects the Procfile. To add environment variables, go to the Variables tab and add ADMIN_PASSWORD, SECRET_KEY, and DOMAIN with appropriate values.
  4. The build starts automatically, and you'll receive a public domain.

[!TIP] 🗝️ Railway users: Add Railway's IP range to the Clean IP list for accurate scanning.

🔹 Deploy on Dockfly
  1. In Dockfly, create a New Project, set the source to GitHub, and select your forked repository.
  2. In the Environment section, add the same three variables.
  3. If the start command doesn't run automatically, enter the following manually:
gunicorn -k uvicorn.workers.UvicornWorker main:app --bind 0.0.0.0:$PORT
  1. Click Deploy.

📌 Environment Variables

You must set the following environment variables in your provider's dashboard:

Variable Example Value Description
ADMIN_PASSWORD StrongPass!123 Required for panel access (min 8 chars, upper & lowercase, numbers).
SECRET_KEY random_long_string Used to secure JWT login cookies.
DOMAIN sulgx.up.railway.app Your public domain. Highly recommended for correct link generation.
DB_PATH /tmp/panel.db Where the SQLite DB is stored. Use /data/panel.db if using persistent volumes.

📌 Start Command

Use this exact command on all platforms (if needed manually):

gunicorn -k uvicorn.workers.UvicornWorker main:app --bind 0.0.0.0:$PORT

☁️ Deployment Platforms

SulgX is built to run flawlessly across cloud PaaS providers. No Dockerfile or complex setup required.

🏆 Top Recommended Providers

Platform Free Tier Limit WebSocket Sleep Mode Credit Card Req? Deployment Method
Render 750 hours / month Yes (Delay) No Auto via render.yaml
Railway $5 Initial Credit No No Auto via Procfile
Dockfly 1 Project (256MB) No No Manual Start Command
🌍 Click to view other compatible platforms
Platform Free Tier WebSocket Sleep Mode Card Req?
Koyeb 1 Eco Service No No
Fly.io Up to 3 Small VMs No Yes (Verification)
Heroku Eco ($5/mo) Yes Yes
DigitalOcean $5/mo Base No Yes
Oracle Cloud Always Free ARM No Yes (Verification)

📁 Repository Architecture

The repository is kept intentionally minimal. Everything required for production is included:

File Type Purpose
main.py Core The beating heart of SulgX. Contains FastAPI backend, WebSocket tunnels, and embedded HTML/JS frontend.
requirements.txt Config Strictly pinned Python dependencies ensuring build stability.
Procfile Deploy Standardized startup instructions for Heroku, Railway, and Render.
render.yaml Deploy Infrastructure‑as‑Code blueprint for instant 1‑click deployments on Render.
sulgx-config.toml Docs Reference guide containing the required Environment Variables for manual setups.
.gitignore Git Keeps the repository clean by excluding logs, caches, and local .db files.

💸 Bandwidth & Pricing Guide

Important

SulgX Panel is 100% Free. However, your cloud provider will charge you for the bandwidth your users consume.

Hosting Platform Included Free Bandwidth Cost Per Extra GB (Approx.)
Render 5 GB / month $0.10 / GB
Railway Pay as you go $0.10 / GB
Koyeb 5 GB / month $0.04 to $0.10 / GB
Fly.io Varies by region $0.02 / GB
Oracle Cloud 10 TB / month Standard Cloud Rates

Monitor your cloud provider's billing dashboard to avoid unexpected charges. Use the Panel's monthly limits to control usage.


⚖️ Strict Disclaimer

Warning

READ CAREFULLY BEFORE DEPLOYING

  • Free & Non‑Commercial: This software is provided 100% free of charge. It is NOT for sale.
  • No Commercial VPNs: Do NOT use this panel to sell VPN subscriptions. It is designed strictly for personal, educational, and experimental purposes.
  • No Platform Abuse: Do not abuse the free tiers of cloud providers by creating multiple accounts with temporary emails.
  • Reporting: If you see someone selling access to this specific panel or abusing infrastructure, please report it to the respective hosting provider.
  • Zero Liability: The developer assumes absolutely zero liability for any damages, billing overages, or Terms of Service violations incurred. You are solely responsible for your traffic.

🙏 Acknowledgements

A massive thank you to the platforms and communities that make free internet tools possible:

About

🚀 SulgX Panel: A single-file, powerful, and free panel for managing VLESS subscriptions via WebSocket + TLS. Responsive UI, JWT auth, per-user bandwidth limits, clean IP scanner, bilingual Telegram bot, and real-time traffic charts. Runs smoothly on Render, Railway, Dockfly, and other cloud platforms.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages