Built for Small to Medium Businesses, Local Stores, Freelancers & Startups: Host your websites and apps with $0 recurring hosting overhead. You literally only pay for your domain name (~$10/year) — Web Hosting, Free SSL Certificates, Business Email in Gmail, and Unlimited Telegram Cloud Storage are 100% free forever.
| Application | Runtime | Internal Port | Public Hostname | Status |
|---|---|---|---|---|
| company-portal | HTML / STATIC | 127.0.0.1:8100 |
portal.yourdomain.com |
RUNNING |
| rest-api-v1 | NODE.JS (EXPRESS) | 127.0.0.1:8101 |
api.yourdomain.com |
RUNNING |
| ai-model-service | PYTHON (FASTAPI) | 127.0.0.1:8102 |
ai.yourdomain.com |
RUNNING |
| personal-blog | PHP RUNTIME | 127.0.0.1:8103 |
blog.yourdomain.com |
RUNNING |
Engineered around mobile hardware constraints without compromising on enterprise features.
Supervise static HTML websites, Node.js applications, Python services (Flask/FastAPI), and PHP scripts with automatic port allocation (8100–8999).
Bind apex domains and unlimited subdomains with 1-click Cloudflare DNS sync, automatic Universal SSL certificates (HTTPS ), and strict HTTP-to-HTTPS redirect.
Receive support@yourdomain.com forwarded directly to Gmail ($0 cost). Reply from Gmail with custom domain DKIM via Brevo SMTP & live DNS health auditor.
Unlimited free cloud object storage powered by Telegram Bot API. 1-click static site exports (.zip), instant web deployments, and automated 7-day backup pruning.
Expose your sites via outbound-only encrypted tunnels. Bypass carrier CGNAT and dynamic IPs without opening a single router port.
Embedded SQLite analytics engine with zero external dependencies. Live RPS gauge, unique visitors, bandwidth meters, status breakdown, and top URLs.
Unified multi-tunnel abstraction supporting Cloudflare Zero Trust, Ngrok, LocalXpose, and Tailscale with automatic credential encryption.
Path-traversal safe file browser with a built-in code editor, file uploader, and downloader. Edit HTML, JS, and Python directly in your browser.
Inspect SQLite database files, view schemas, browse table rows with pagination, execute custom SQL statements, and export raw database files.
Automate scheduled background tasks with preset schedules (every minute, hourly, daily) synchronized directly with the Android crond daemon.
Real-time battery temperature and charging health telemetry with automated thermal-throttling alarms sent directly to your Telegram bot.
Continuous monitor resurrects Node.js and Cloudflare processes within 60 seconds if Android's memory manager ever kills them.
You literally only pay for your domain name (~$8–$12/year). Every other layer of your web presence is 100% free forever.
Run Node.js APIs, Python Flask/FastAPI, PHP, and static HTML websites on a repurposed Android phone or tablet. Zero server rental fees, zero VPS contracts.
Automatic Cloudflare Universal SSL with auto-renewing TLS 1.3 certificates, green security padlock, and strict HTTP-to-HTTPS redirect without paid SSL add-ons.
Receive support@yourdomain.com in your personal Gmail via Cloudflare Inbound Routing, and reply from Gmail with custom domain branding via free Brevo SMTP.
TeleDrive utilizes Telegram Bot API as unlimited offsite object storage. Store media, export static .zip websites, and schedule automated 7-day backup archives at $0 cost.
| Infrastructure Component | Traditional Cloud / SaaS Providers | Traditional Cost | TermuxPanel Self-Hosted Stack | TermuxPanel Cost |
|---|---|---|---|---|
| Domain Name (yourdomain.com) | Namecheap / GoDaddy / Cloudflare | ~$10 / year | Standard Domain Registrar of your choice | ~$10 / yr (Only Cost!) |
| Web Hosting Server (VPS / Cloud) | DigitalOcean / AWS / Linode | $120 – $360 / year | Repurposed Android Phone / Tablet | $0.00 (FREE) |
| SSL Security Certificates (HTTPS ) | Sectigo / DigiCert / Comodo | $50 – $100 / year | Automatic Cloudflare Universal SSL | $0.00 (FREE) |
| Custom Domain Business Email | Google Workspace / Microsoft 365 | $72 – $216 / user / yr | Cloudflare Inbound + Brevo SMTP in Gmail | $0.00 (FREE) |
| Cloud Object Storage & Backups | AWS S3 / Google Cloud Storage | $60 – $180 / year | Unlimited Telegram Cloud & TeleDrive | $0.00 (FREE) |
| Web Traffic Analytics Engine | Plausible / Fathom Analytics | $108 – $240 / year | Embedded Privacy-First SQLite Engine | $0.00 (FREE) |
| Database Engine | Managed Supabase / PlanetScale | $180 – $300 / year | Built-in Pure SQLite3 (WAL Mode) | $0.00 (FREE) |
| TOTAL ESTIMATED ANNUAL SPEND | $600 – $1,400+ / year | ~$10 / year total | ||
Each application runs in an isolated process with its own dedicated port and access/error logs.
Runs node server.js with PID tracking, automatic restarts on crash, and segregated stdout/stderr logging.
const http = require('http');
const PORT = process.env.PORT || 8101;
const server = http.createServer((req, res) => {
res.writeHead(200, { 'Content-Type': 'application/json' });
res.end(JSON.stringify({ status: 'online', runtime: process.version, time: new Date() }));
});
server.listen(PORT, '127.0.0.1', () => console.log(`API live on :${PORT}`));
Supervised Python interpreter injecting environment variables (PORT, HOST) with virtualenv support.
import os
from http.server import HTTPServer, BaseHTTPRequestHandler
import json
PORT = int(os.environ.get('PORT', 8102))
class Handler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-Type', 'application/json')
self.end_headers()
self.wfile.write(json.dumps({'message': 'Hello from Python on Termux!'}).encode())
HTTPServer(('127.0.0.1', PORT), Handler).serve_forever()
Supervises php -S 127.0.0.1: to host dynamic PHP sites and SQLite CMSs.
<?php
header('Content-Type: application/json');
echo json_encode([
'status' => 'online',
'runtime' => 'PHP ' . phpversion(),
'timestamp' => date('c')
], JSON_PRETTY_PRINT);
?>
High-speed embedded static server with path-traversal protection and instant MIME-type resolution.
<!DOCTYPE html> <html> <head><title>My Hosted Site</title></head> <body> <h1>Hosted on Android with TermuxPanel!</h1> </body> </html>
Bypass CGNAT and mobile firewalls through an outbound-only encrypted tunnel to Cloudflare.
Opens https://panel.yourdomain.com in any browser worldwide.
Provides free SSL certificate (HTTPS), WAF protection, and DDoS mitigation.
Receives request via outbound tunnel and forwards locally to localhost.
Control Plane (:9000) and Hosted Sites (:8100..:8999) respond instantly.
Follow these instructions directly on your Android phone.
Install Termux on your Android phone from Google Play Store, F-Droid, or GitHub Releases.
Open Termux and paste this single command block:
pkg update -y && pkg install -y git && git clone https://github.com/himalayladha/termux-hosting-panel.git ~/termux-panel && cd ~/termux-panel && bash installer/install.sh
Open Chrome or your phone's browser and go to http://127.0.0.1:9000 to create your administrator password.
Access your panel securely from anywhere in the world.
1. Go to Cloudflare Zero Trust Networks Tunnels.
2. Create a tunnel named android-host and copy the token (starts with eyJh...).
3. Paste it in TermuxPanel under Cloudflare Tunnel tab.
4. Add Public Hostname: panel.yourdomain.com HTTP 127.0.0.1:9000.
1. Generate a Cloudflare API token with DNS & Tunnel edit permissions.
2. Enter your API Token and Domain in TermuxPanel.
3. Click Run Fully-Automatic Setup.
4. TermuxPanel will auto-create the tunnel, upload ingress routes, and generate DNS CNAMEs automatically!
Zero open ports. Bcrypt password encryption. Optional Cloudflare Access protection.
Put an identity gateway in front of your panel. Require a One-Time Email PIN code or Google login before anyone even sees your login page.
Strictly guarded with Bcrypt password hashing (10 salt rounds), secure HTTP-only cookies, and brute-force rate limiters.
Path-traversal proof security ensures file operations cannot escape the assigned website root directory (blocks ../../etc/passwd).
Real-world performance metrics tested on standard Android ARM64 hardware with Cloudflare Edge CDN offloading.
Cloudflare absorbs 90%–98% of static assets and cache hits globally. The phone only handles dynamic API endpoints & cache misses.
In-memory static asset Gzip compression with non-blocking V8 event loop serving HTML, CSS, and JS directly from mobile RAM.
Pure SQLite with WAL mode on fast UFS 3.1/4.0 mobile storage delivers sub-millisecond query execution (0.1–0.4ms).
| Stack / Scenario | Throughput (RPS) | Concurrent Users | Daily Hits Capacity | Average Latency | Recommended Use Case |
|---|---|---|---|---|---|
| Cloudflare CDN + Static Site | 5,000+ req/s | 500 – 2,000+ active | 500,000 – 2,000,000+ | 10 – 25 ms (Edge) | Landing pages, blogs, docs, portfolios |
| Direct Static Serving (Node/Nginx) | 400 – 1,200 req/s | 100 – 300 active | 100,000 – 500,000 | 15 – 45 ms | SPA apps (React/Vue), marketing sites |
| Node.js / Express API + SQLite | 150 – 500 req/s | 50 – 150 active | 50,000 – 200,000 | 20 – 60 ms | REST APIs, webhook receivers, SaaS backends |
| Python (FastAPI / Flask) + SQLite | 80 – 250 req/s | 30 – 80 active | 25,000 – 100,000 | 35 – 90 ms | Microservices, automation bots, scraping |
| PHP (Built-in Web Server) + SQLite | 40 – 120 req/s | 15 – 50 active | 15,000 – 50,000 | 50 – 120 ms | Lightweight CMSs, contact forms, admin tools |
PRAGMA journal_mode = WAL; for non-blocking concurrent reads while writes occur.An honest, realistic guide for small business owners on what TermuxPanel excels at, and when your growing platform should upgrade to dedicated cloud datacenters.
TermuxPanel is ideally suited for 95% of small and medium businesses looking to host their online presence with zero recurring server bills:
As your business scales, you should transition to cloud datacenters (AWS, GCP, DigitalOcean) if you encounter:
Why running TermuxPanel on Android beats traditional setups.
| Feature | TermuxPanel (Android) | Cloud VPS ($5-$20/mo) | Port-Forwarded Home PC |
|---|---|---|---|
| Hardware Cost | Free (Use Old Phone) | Monthly Recurring Fee | High PC Power Consumption |
| Port Forwarding Needed? | NO (Zero-Trust Tunnel) | No | YES (Security Risk) |
| Built-in Battery Backup | YES (Phone Battery) | Datacenter UPS | Requires expensive UPS |
| Mobile & Wi-Fi IP Survival | Auto-Reconnects | Static IP required | Dynamic DNS required |
| Multi-Runtime Support | HTML, Node, Python, PHP | Manual CLI Setup | Manual CLI Setup |
| Component | Minimum Requirement | Recommended Specification |
|---|---|---|
| Android Version | Android 7.0 (Nougat) or higher | Android 10.0+ |
| RAM | 2 GB | 3 GB – 4 GB+ |
| Free Storage | 1 GB | 4 GB+ (for website files & backups) |
| Architecture | ARM64 (aarch64), ARMv7 (arm), or x86_64 |
ARM64 |
| Termux Source | Google Play Store, F-Droid, or GitHub | Google Play Store, F-Droid (with Termux:Boot), or GitHub |
termux-wake-lock). Simply go to Android Settings Apps Termux Battery and select "Unrestricted" so Android doesn't put the app to sleep.panel.yourdomain.com, api.yourdomain.com) to your local server ports. Cloudflare automatically issues free Universal SSL certificates (HTTPS ) with TLS 1.3 encryption and automatic HTTP-to-HTTPS redirect — without router port forwarding.support@yourdomain.com to your personal Gmail. Outbound is handled by free Brevo SMTP (300 emails/day) connected to your Gmail account with DKIM/SPF/DMARC authentication so people see your domain name when you reply..zip archives, 1-click deploy websites from Telegram Cloud, and push automated .tar.gz server/database backups with automated 7-day retention pruning.tp in Termux to launch the interactive terminal management menu, or use commands like tp status, tp start, tp stop, and tp logs.