TovHost is a fully custom-built game server hosting platform developed from scratch using Node.js, Express, MySQL, and the Pterodactyl API. It is designed to run as a complete hosting business website — not a theme or plugin, but a full standalone system.
——————————————————————————
CORE PLATFORM
——————————————————————————
——————————————————————————
USER ACCOUNTS & AUTH
——————————————————————————
——————————————————————————
GAME SERVERS
——————————————————————————
Supported games out of the box:
Features:
——————————————————————————
PLUGINS SYSTEM
——————————————————————————
——————————————————————————
FASTDL SYSTEM
——————————————————————————
——————————————————————————
PAYMENTS & BILLING
——————————————————————————
——————————————————————————
ADMIN PANEL
——————————————————————————
——————————————————————————
SUPPORT TICKET SYSTEM
——————————————————————————
——————————————————————————
PUBLIC PAGES
——————————————————————————
——————————————————————————
SECURITY
——————————————————————————
——————————————————————————
EMAIL SYSTEM
——————————————————————————
——————————————————————————
ANALYTICS & MONITORING
——————————————————————————
——————————————————————————
TECH STACK
——————————————————————————
——————————————————————————
WHAT YOU GET
——————————————————————————
TovHost — File Structure Overview
Total: ~150 files (excluding images & node_modules)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ROOT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── index.js — Main server entry point
├── node-monitor.js — Node health monitoring script
├── ecosystem.config.js — PM2 production config
├── package.json — Dependencies & scripts
├── .env — Environment variables (fill before use)
├── .env.example — Template with instructions
└── .gitignore
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
config/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── database.js — MySQL connection & pool setup
└── logger.js — Logging configuration
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
middleware/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── auth.js — Session authentication middleware
├── activityLog.js — User activity tracking
├── avatarUpload.js — Avatar image upload handler
├── healthCheck.js — Server health check endpoint
├── maintenance.js — Maintenance mode middleware
├── requirePassword.js — Password verification middleware
├── security.js — Helmet, rate limiting, CSRF
└── verify2fa.js — 2FA / TOTP verification
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
routes/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── account.js — User account management
├── admin.js — Admin panel API routes
├── authLocal.js — Login / register / logout
├── forgotPassword.js — Password reset flow
├── paypal.js — PayPal payment routes
├── discount.js — Discount & coupon codes
├── referral.js — Referral program
├── wallet.js — Credit wallet system
├── invoice.js — Invoice generation
├── tickets.js — Support ticket system
├── profile.js — User profile
├── nodes.js — Pterodactyl node management
├── manager.js — Server manager dashboard
├── maintenance.js — Maintenance mode routes
├── partners.js — Partners page
├── reviews.js — Reviews system
├── pricing.js — Pricing plans
├── plugins.js — Plugin marketplace
├── fastdl.js — FastDL node management
├── subdomain.js — Subdomain management
├── subusers.js — Sub-users per server
├── session.js — Session handling
├── visitors.js — Visitor analytics
├── bot-proxy.js — Discord bot proxy
├── auto-backup.js — Automatic backup system
│
├──
servers/
│ ├── servers.js — Main server routes
│ ├── servers-console.js — Live console (WebSocket)
│ ├── servers-features.js — Server features (databases, backups)
│ ├── servers-helpers.js — Shared helper functions
│ ├── servers-management.js — Start/stop/restart/delete
│ ├── servers-orders.js — Server order processing
│ ├── servers-payments.js — Server payment flow
│ └── servers-transfer.js — Server transfer between nodes
│
├── mc-mods.js — Minecraft mods integration
├── mc-players.js — Minecraft player stats
├── mc-plugins.js — Minecraft plugins (Spigot/Bukkit)
├── mc-properties.js — server.properties editor
├── modrinth-plugins.js — Modrinth plugin browser
├── spiget-plugins.js — Spiget (SpigotMC) plugin browser
├── umod-plugins.js — uMod plugins (Rust, GMod, etc.)
└── ark-mods.js — ARK mods integration
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
services/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── pterodactyl.js — Pterodactyl API wrapper
├── pterodactylTransfer.js — Server transfer logic
├── paypal.js — PayPal API integration
├── mailer.js — Email sending (SMTP/Nodemailer)
├── cache.js — In-memory caching
├── dbSetup.js — Auto database table creation
├── errorHandler.js — Global error handler
├── fastdlSync.js — FastDL sync service
├── freeTrialQueue.js — Free trial queue manager
├── freeTrialExpiryWorker.js— Trial expiry background worker
├── gameEnvironments.js — Game environment configs
├── imageDownloader.js — Auto game image downloader
├── invoicePdf.js — PDF invoice generator
├── nodeManager.js — Node status manager
├── pendingActivations.js — Pending server activations
├── pricing.js — Pricing calculation logic
├── sanitize.js — Input sanitization
├── transferWorker.js — Background transfer worker
└── utils.js — Shared utility functions
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
public/ — Frontend Pages
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Public pages:
├── index.html — Homepage
├── games.html — Games listing
├── plans.html — Pricing plans
├── hosting.html — Hosting info
├── about.html — About page
├── partners.html — Partners page
├── reviews.html — Reviews page
├── services.html — Services page
├── referral-program.html — Referral program
├── privacy.html — Privacy policy
├── terms.html — Terms of service
├── refund.html — Refund policy
├── login.html — Login page
├── forgot-password.html — Forgot password
├── reset-password.html — Password reset
├── maintenance.html — Maintenance page
│
User dashboard:
├── manager.html — Server manager
├── console.html — Live server console
├── profile.html — User profile
├── wallet.html — Credit wallet
├── tickets.html — Support tickets
├── cart.html — Order cart
│
Admin pages (14 pages):
├── admin.html — Main admin dashboard
├── admin-users.html — User management
├── admin-accounts.html — Account management
├── admin-games.html — Games management
├── admin-nodes.html — Node management
├── admin-plugins.html — Plugin management
├── admin-fastdl-nodes.html — FastDL management
├── admin-discounts.html — Discount codes
├── admin-referral.html — Referral management
├── admin-partners.html — Partners management
├── admin-reviews.html — Reviews management
├── admin-services.html — Services management
├── admin-subdomains.html — Subdomain management
├── admin-tickets.html — Ticket management
├── admin-visitors.html — Visitor analytics
├── admin-hero.html — Homepage hero editor
└── admin-maintenance.html— Maintenance mode control
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
public/assets/css/ — Stylesheets (16 files)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
admin.css, badges.css, buttons.css, cards.css,
components.css, forms.css, global.css, modals.css,
nav.css, responsive.css, toast.css, utilities.css,
variables.css, mobile.css, mobile-enhance.css,
mobile-fixes-v2.css, mobile-nav-fix.css
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
public/assets/js/ — JavaScript (20 files)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── admin-common.js
├── admin-all.min.js
├── admin-services-transfer.js
├── api-helper.js
├── console.js
├── discount-banner.js
├── mobile.js
├── nav.js
├── password-setup-modal.js
├── toast.js
├── visitor-tracker.js
└──
services/ (14 JS modules)
services-ark.js, services-backup.js,
services-cancel.js, services-cards.js,
services-core.js, services-databases.js,
services-mods.js, services-panel.js,
services-payment.js, services-reviews.js,
services-spiget.js, services-switch.js,
services-umod.js, services-upgrade.js
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
bot-manager-files/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── server.js — Bot manager backend
├── config.js — Bot manager config
├── security.js — Bot manager security
└── public/index.html — Bot manager UI
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
tests/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
└── main.test.js — Test suite
Important Notice
This is a large-scale and advanced project that requires time, experience, and a solid understanding of server management, Node.js, MySQL, and Pterodactyl.
By purchasing, you acknowledge that installation and setup are entirely your responsibility. We do not provide setup assistance or step-by-step installation guidance.
Any mistake in the configuration or incorrect setup may cause some features to malfunction, parts of the system not to work properly, or lead to system issues. Therefore, it is essential to ensure the project is installed and configured correctly before use.
If you lack sufficient experience, you may need extra time or a qualified developer to complete the setup properly.
We can, however, offer a professional third-party installation service for an additional fee of $40. This service includes the complete installation and initial configuration of the project on your server.
Additional modifications, custom features, integrations, or configuration requests can also be provided upon request. Please note that these services are quoted separately, and pricing will vary depending on the complexity and scope of the requested work.
Stripe + Paypal Payments
Link to Try Demo https://tovhost.com/
——————————————————————————
——————————————————————————
- Built with Node.js + Express (no PHP, no WordPress)
- MySQL database with full relational structure
- Pterodactyl API fully integrated (admin + client API)
- PM2 ready for production deployment
- Nginx reverse proxy compatible
- SSL/HTTPS ready (Certbot)
- Mobile responsive design
- Dark themed modern UI
——————————————————————————
——————————————————————————
- Full registration & login system
- Email/password authentication with bcrypt hashing
- Google OAuth login
- Discord OAuth login
- Two-Factor Authentication (2FA / TOTP) with AES-256-GCM encryption
- Avatar upload system
- User dashboard with server overview
- Account settings & password management
- Session-based auth with MySQL session store
- Activity log per user
——————————————————————————
——————————————————————————
Supported games out of the box:
- Minecraft (Java & Bedrock)
- Rust
- ARK: Survival Evolved / Ascended
- Garry's Mod
- CS2 / CS:GO
- FiveM (GTA V)
- Valheim
- Terraria
- Team Fortress 2
- 7 Days to Die
- V Rising
- Palworld
- Any game supported by Pterodactyl eggs
Features:
- Create, start, stop, restart, delete servers
- Real-time server status
- Resource usage display (RAM, CPU, Storage)
- File manager access via Pterodactyl
- Console access via Pterodactyl
- Backup management
- Sub-domain management per server
- Server limits per user (configurable)
——————————————————————————
——————————————————————————
- Built-in plugin marketplace page
- Admin can add/manage plugins from dashboard
- Plugin listings with descriptions and download links
- Supports Minecraft, Rust, ARK, Garry's Mod plugins
- Categories and filtering for plugins
——————————————————————————
——————————————————————————
- FastDL node management (for Garry's Mod / CS servers)
- Admin panel to add/remove FastDL nodes
- Node status monitoring
- Linked per server automatically
——————————————————————————
——————————————————————————
- PayPal integration (sandbox + live)
- PayPal Webhook support for automatic order processing
- Discount codes / coupon system
- Referral system (users earn credits by referring)
- Credit balance system
- Order history per user
- Admin can manually adjust balances
——————————————————————————
——————————————————————————
- Full admin dashboard at /admin
- Manage all users (ban, edit, delete, promote)
- View all servers across all users
- Manage games (add/edit/remove game listings)
- Manage nodes (add/edit Pterodactyl nodes)
- Manage eggs (Pterodactyl server types)
- Manage plugins
- Manage FastDL nodes
- Manage discount codes
- Manage referral system
- Manage partners/affiliates
- Manage hero section (homepage banner)
- Manage reviews
- Manage services listings
- Manage sub-domains
- Support ticket system (open/reply/close)
- Visitor analytics dashboard
- Activity logs for all users
- Maintenance mode with bypass IPs
——————————————————————————
——————————————————————————
- Users can open support tickets
- Admin replies from admin panel
- Ticket status: Open / In Progress / Closed
- Email notifications on reply
——————————————————————————
——————————————————————————
- Homepage with hero section (fully editable from admin)
- Games listing page
- Pricing/services page
- About page
- Partners page
- Reviews section
- Sub-domain checker
——————————————————————————
——————————————————————————
- Rate limiting on all routes
- Helmet.js security headers
- CSRF protection
- Session encryption
- 2FA with TOTP (Google Authenticator compatible)
- Password strength enforcement
- IP-based maintenance bypass
- Cloudflare API integration
- Input validation & sanitization
——————————————————————————
——————————————————————————
- SMTP email integration (Zoho / Gmail / any provider)
- Welcome emails on registration
- Password reset emails
- Ticket reply notifications
- Order confirmation emails
——————————————————————————
——————————————————————————
- Visitor tracking dashboard
- Real-time node status monitoring
- Server health checks
- Node monitor script included (node-monitor.js)
- PM2 ecosystem config included
——————————————————————————
——————————————————————————
- Runtime: Node.js 18+
- Framework: Express.js
- Database: MySQL 8
- Auth: express-session + bcrypt + TOTP
- Payments: PayPal REST API
- Panel API: Pterodactyl Admin + Client API
- OAuth: Google + Discord
- DNS: Cloudflare API
- Email: Nodemailer (SMTP)
- Process Manager: PM2
- Proxy: Nginx
——————————————————————————
——————————————————————————
- Full source code (no encryption, no obfuscation)
- Clean .env file with instructions for every variable
- Complete setup guide (SETUP.md) step by step
- Database schema included
- PM2 ecosystem config
- All frontend assets (CSS, JS, images)
- All admin pages included
- Version: 2.0.0
Total: ~150 files (excluding images & node_modules)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── index.js — Main server entry point
├── node-monitor.js — Node health monitoring script
├── ecosystem.config.js — PM2 production config
├── package.json — Dependencies & scripts
├── .env — Environment variables (fill before use)
├── .env.example — Template with instructions
└── .gitignore
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── database.js — MySQL connection & pool setup
└── logger.js — Logging configuration
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── auth.js — Session authentication middleware
├── activityLog.js — User activity tracking
├── avatarUpload.js — Avatar image upload handler
├── healthCheck.js — Server health check endpoint
├── maintenance.js — Maintenance mode middleware
├── requirePassword.js — Password verification middleware
├── security.js — Helmet, rate limiting, CSRF
└── verify2fa.js — 2FA / TOTP verification
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── account.js — User account management
├── admin.js — Admin panel API routes
├── authLocal.js — Login / register / logout
├── forgotPassword.js — Password reset flow
├── paypal.js — PayPal payment routes
├── discount.js — Discount & coupon codes
├── referral.js — Referral program
├── wallet.js — Credit wallet system
├── invoice.js — Invoice generation
├── tickets.js — Support ticket system
├── profile.js — User profile
├── nodes.js — Pterodactyl node management
├── manager.js — Server manager dashboard
├── maintenance.js — Maintenance mode routes
├── partners.js — Partners page
├── reviews.js — Reviews system
├── pricing.js — Pricing plans
├── plugins.js — Plugin marketplace
├── fastdl.js — FastDL node management
├── subdomain.js — Subdomain management
├── subusers.js — Sub-users per server
├── session.js — Session handling
├── visitors.js — Visitor analytics
├── bot-proxy.js — Discord bot proxy
├── auto-backup.js — Automatic backup system
│
├──
│ ├── servers.js — Main server routes
│ ├── servers-console.js — Live console (WebSocket)
│ ├── servers-features.js — Server features (databases, backups)
│ ├── servers-helpers.js — Shared helper functions
│ ├── servers-management.js — Start/stop/restart/delete
│ ├── servers-orders.js — Server order processing
│ ├── servers-payments.js — Server payment flow
│ └── servers-transfer.js — Server transfer between nodes
│
├── mc-mods.js — Minecraft mods integration
├── mc-players.js — Minecraft player stats
├── mc-plugins.js — Minecraft plugins (Spigot/Bukkit)
├── mc-properties.js — server.properties editor
├── modrinth-plugins.js — Modrinth plugin browser
├── spiget-plugins.js — Spiget (SpigotMC) plugin browser
├── umod-plugins.js — uMod plugins (Rust, GMod, etc.)
└── ark-mods.js — ARK mods integration
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── pterodactyl.js — Pterodactyl API wrapper
├── pterodactylTransfer.js — Server transfer logic
├── paypal.js — PayPal API integration
├── mailer.js — Email sending (SMTP/Nodemailer)
├── cache.js — In-memory caching
├── dbSetup.js — Auto database table creation
├── errorHandler.js — Global error handler
├── fastdlSync.js — FastDL sync service
├── freeTrialQueue.js — Free trial queue manager
├── freeTrialExpiryWorker.js— Trial expiry background worker
├── gameEnvironments.js — Game environment configs
├── imageDownloader.js — Auto game image downloader
├── invoicePdf.js — PDF invoice generator
├── nodeManager.js — Node status manager
├── pendingActivations.js — Pending server activations
├── pricing.js — Pricing calculation logic
├── sanitize.js — Input sanitization
├── transferWorker.js — Background transfer worker
└── utils.js — Shared utility functions
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Public pages:
├── index.html — Homepage
├── games.html — Games listing
├── plans.html — Pricing plans
├── hosting.html — Hosting info
├── about.html — About page
├── partners.html — Partners page
├── reviews.html — Reviews page
├── services.html — Services page
├── referral-program.html — Referral program
├── privacy.html — Privacy policy
├── terms.html — Terms of service
├── refund.html — Refund policy
├── login.html — Login page
├── forgot-password.html — Forgot password
├── reset-password.html — Password reset
├── maintenance.html — Maintenance page
│
User dashboard:
├── manager.html — Server manager
├── console.html — Live server console
├── profile.html — User profile
├── wallet.html — Credit wallet
├── tickets.html — Support tickets
├── cart.html — Order cart
│
Admin pages (14 pages):
├── admin.html — Main admin dashboard
├── admin-users.html — User management
├── admin-accounts.html — Account management
├── admin-games.html — Games management
├── admin-nodes.html — Node management
├── admin-plugins.html — Plugin management
├── admin-fastdl-nodes.html — FastDL management
├── admin-discounts.html — Discount codes
├── admin-referral.html — Referral management
├── admin-partners.html — Partners management
├── admin-reviews.html — Reviews management
├── admin-services.html — Services management
├── admin-subdomains.html — Subdomain management
├── admin-tickets.html — Ticket management
├── admin-visitors.html — Visitor analytics
├── admin-hero.html — Homepage hero editor
└── admin-maintenance.html— Maintenance mode control
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
admin.css, badges.css, buttons.css, cards.css,
components.css, forms.css, global.css, modals.css,
nav.css, responsive.css, toast.css, utilities.css,
variables.css, mobile.css, mobile-enhance.css,
mobile-fixes-v2.css, mobile-nav-fix.css
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── admin-common.js
├── admin-all.min.js
├── admin-services-transfer.js
├── api-helper.js
├── console.js
├── discount-banner.js
├── mobile.js
├── nav.js
├── password-setup-modal.js
├── toast.js
├── visitor-tracker.js
└──
services-ark.js, services-backup.js,
services-cancel.js, services-cards.js,
services-core.js, services-databases.js,
services-mods.js, services-panel.js,
services-payment.js, services-reviews.js,
services-spiget.js, services-switch.js,
services-umod.js, services-upgrade.js
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
├── server.js — Bot manager backend
├── config.js — Bot manager config
├── security.js — Bot manager security
└── public/index.html — Bot manager UI
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
└── main.test.js — Test suite
This is a large-scale and advanced project that requires time, experience, and a solid understanding of server management, Node.js, MySQL, and Pterodactyl.
By purchasing, you acknowledge that installation and setup are entirely your responsibility. We do not provide setup assistance or step-by-step installation guidance.
Any mistake in the configuration or incorrect setup may cause some features to malfunction, parts of the system not to work properly, or lead to system issues. Therefore, it is essential to ensure the project is installed and configured correctly before use.
If you lack sufficient experience, you may need extra time or a qualified developer to complete the setup properly.
We can, however, offer a professional third-party installation service for an additional fee of $40. This service includes the complete installation and initial configuration of the project on your server.
Additional modifications, custom features, integrations, or configuration requests can also be provided upon request. Please note that these services are quoted separately, and pricing will vary depending on the complexity and scope of the requested work.
