LavaPanel is a sophisticated, openβsource web panel that allows administrators to deploy, monitor, and control Discord bots and Minecraft servers with minimal overhead. Built on the basis of proven patterns and modern tooling, LavaPanel offers the same polishes as monolithic hosting solutions β but without the need for Docker, custom images, or complex infrastructure tutorials.
- Zero Docker Dependency β Unlike many competitor panels, LavaPanel is a pure Nodeβruntime app. That means you can install it on any VβPS, bare metal, or even a lightweight cloud instance without worrying about image size or registry access.
- Full Feature Parity β Core features such as oneβclick deployment, autoβupdate, OAuth integration, token management, and realβtime logs are all present and battleβtested.
- Developer Friendly β The codebase follows strict ES2022 conventions, uses TypeScript behind the scenes, and exposes an extensible plugin API for custom workflows.
- SelfβUpdating β The panel fetches the latest commit from the GitHub repo hourly. The update script checks for semantic version changes and automatically rolls back on failure.
- InternationaliseβReady β Asset bundles are available in English, Spanish, French, German, Italian, Portuguese, Russian, and Chinese.
- Compliance & Logging β All HTTP traffic is logged to a rotating file drive. Exports are available in both JSON and CSV for SOX/PCIβDSS audit requirements.
The oneβliner is the most recommended method. It handles OS detection, dependency installation, cloning the repo, running npm, and finally starting the panel via PM2 (recommended for production) or npm start for local debugging.
curl -fsSL https://raw.githubusercontent.com/IN3PIRE/LavaPanel/main/install.sh | bashTip: On macOS or any ARMβbased system, use the platformβspecific suffix (
--arm64) to automatically pull the native binaries.
-
Clone the repo:
git clone https://github.com/IN3PIRE/LavaPanel.git cd LavaPanel -
Install Node (must be 14+ with npm 8+):
curl -fsSL https://deb.nodesource.com/setup_18.x | bash - apt-get install -y nodejs -
Install dependencies:
npm ci --legacy-peer-deps
-
Configure environmental variables β copy the example and set the required values:
cp .env.example .env
Open
.envand provide:- Discord OAuth
DISCORD_CLIENT_ID&DISCORD_CLIENT_SECRET - Telegram
TELEGRAM_BOT_TOKEN JWT_SECRET,SESSION_SECRET- Optional
PORT,AUTO_UPDATE_INTERVAL
- Discord OAuth
-
Start the application:
Production (
pm2):npm install -g pm2 pm2 start server/index.js --name lavapanel pm2 save
Development:
npm start
-
Open the UI β Point your browser to
http://localhost:<PORT>(default3000).
| Feature | Description |
|---|---|
| Oneβclick Bot Deployment | Installs a Discord or Telegram bot template and forks the repo into your GitHub account. |
| Minecraft Templates | Deploy a vanilla, Spigot, Paper, Forge, or Bedrock server with preβconfigured JavaΒ OpenJDK 17. |
| OAuth 2.0 & JWT | Secure authentication for Discord, Telegram, and local GitHub accounts with singleβsignβon. |
| AutoβUpdate | Polls the upstream main branch, evaluates commit messages, and performs a graceful restart. |
| WebSocketβBased Live Log | Realβtime streaming of server logs; clients autoβscroll and can filter by keyword. |
| Resource Monitoring | CPU, RAM, and network usage are displayed per server, with Lorenz curves. |
| Backup & Restore | Onβdemand ZIP backups with optional encryption; restore via file upload. |
| Extensible Plugin API | Write custom tasks under plugins/ that hook into server lifecycle events. |
| Theme System | 3 preβbuilt UI themes (Lava, Midnight, Forest). Add custom CSS via the admin panel. |
| RESTful API | CRUD endpoints for servers, users, logs, and audits. Supports pagination and filtering. |
| Audit Trail | Each change (deployment, config update, delete) is logged with user ID, timestamp, and diff. |
| MobileβResponsive UI | Fully responsive design ensures operators can manage from phones or tablets. |
| MultiβTenant | Administrators can create multiple tenant accounts and allocate server quotas. |
| Data Encryption | Sensitive fields like secrets or tokens are encrypted with AESβ256 in the database. |
LavaPanel βββββββββββββββββββββββββ¬ββββββββββββββββββββββββ
β β Repository Update β PM2 / systemd β
β β Node 18 Runtime β
βββββββββ¬βββββββββββββββββββββ¬βββββββ
β panel β server β db β
βββββββββ΄βββββββββββββββββββββ΄βββββββ
β β β β
β β β β
β Templates (Discord, Minecraft) β
β ββββhomebrew/iOS/β¦ β ββ SQLite (encrypted) ββββββββ
β ββββrestβSPIβ β β
β β β β
βββββββββββββ β Plugins/ β
β β
(scheduled jobs) β
Key Takeβaways
- EventβDriven β All plugins listen to a central
EventEmitter. - PerformanceβOptimised β Only the required Node modules are bundled; treeβshaking ensures minimal memory usage.
- Democratized β Every panel install is fully openβsource and packageβcontrolled.
# Install dependencies
npm ci --legacy-peer-deps
# Run in watch mode
npm run dev
# Build for production
npm run buildTip: Use
nodemonfor hotβrefresh onsrc/changes.
# Run tests (Jest + supertest)
npm test
# Coverage report
npm run coverage
# Build Docker image for CI (optional)
docker build -t lavapanel/test .- GitHub Repository β https://github.com/IN3PIRE/LavaPanel
- Discord Community (Support) β https://discord.gg/your-discuss-guild
- Telegram Forum β https://t.me/yourTelegramChannel
- Reports & Metrics β Stored in the
logs/directory; rotate monthly.
Licensed under the MIT license. See the LICENSE file for full details.
For issue triage, feature requests, or PR reviews, please use the GitHub issue tracker. Urgent production problems should be routed via our support email: support@in3spire.com. Follow the<|reserved_200173|> download link for the current release and feel free to open a PR.