# AtomCMS — Remco Epicnabbo Edition [](https://discord.gg/pP6HyZedAj) [](https://laravel.com) [](https://php.net) [](#) A modern Habbo retro CMS powered by Laravel 13, Filament 5, React 19, and Nitro. Forked and maintained by Remco (Epicnabbo). --- ## Quick Start ```bash git clone https://your-gitea-server/remco/Atomcms-edit.git /var/www/atomcms cd /var/www/atomcms cp .env.example.linux .env php artisan key:generate # Edit .env with your DB credentials, then: composer install --no-dev --optimize-autoloader php artisan migrate --seed yarn install && yarn build:all ``` > **Full installation guide** → `.env.install` or scroll down to [Installation](#installation-ubuntu-2604) --- ## Features | Module | What it does | |--------|-------------| | **Commandocentrum** | Nitro V3 one-click updater, emulator start/stop/restart, hotel alerts, live monitoring, log viewer, clothing sync, social login (Google/Discord/GitHub) | | **Radio** | DJ apps, live sessions, song requests, shoutbox, leaderboard, contests | | **Shop** | Product catalog, virtual currency, vouchers, PayPal | | **Community** | Articles, photo gallery, leaderboard, teams, rare values, badge lottery | | **Users** | Public profiles, 2FA, referrals, session logs | | **Help** | Ticket system, FAQ, rules | | **Filament Admin** | Users, bans, radio, shop, articles, emulator settings/texts/catalog, chatlogs, word filters, permissions, navigation | | **Themes** | Atom (light) & Dusk (dark) | --- ## Nitro V3 Update One-click update from **Commandocentrum** → "Configureer Paths" → "Run Update". **What it does:** `git pull` emulator → DB backup → SQL imports → Maven build → `git pull` Nitro_Render_V3 + Nitro-V3 → `yarn build` → sync Gamedata → cleanup → restart emulator. **Configurable paths** (9 settings, stored in DB): | Setting | Default | |---------|---------| | Emulator map | `/var/www/emulator` | | Service naam | `emulator` | | Database | `habbo` | | SQL updates | `{emulator}/Database Updates` | | Backups | `{emulator}/Database Updates/backups` | | Gamedata | `/var/www/Gamedata/config` | | Nitro client | `{nitro}/public/configuration` | | Nitro-V3 bron | `/var/www/Nitro-V3` | | Nitro Render V3 | `/var/www/Nitro_Render_V3` | **Sudoers** (needed for restart/chown): ```bash sudo tee /etc/sudoers.d/www-data << 'EOF' www-data ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart emulator www-data ALL=(ALL) NOPASSWD: /usr/bin/systemctl status emulator www-data ALL=(ALL) NOPASSWD: /usr/bin/chown EOF sudo chmod 440 /etc/sudoers.d/www-data ``` --- ## Requirements | Component | Version | |-----------|---------| | **PHP** | 8.5+ | | **Database** | MariaDB 10.6+ or MySQL 8.0+ | | **Web Server** | Nginx or Apache | | **Node.js** | 20+ | | **Yarn** | 1.22+ | | **Composer** | 2.x | | **Redis** | Recommended (Linux) | --- ## Environment Files | File | Use | Cache | DB | |------|-----|-------|----| | `.env.install` | Step-by-step setup guide | — | — | | `.env.example.linux` | Linux production | Redis | MariaDB | | `.env.example.windows` | Windows development | File | MySQL | ```bash cp .env.example.linux .env php artisan key:generate ``` > ⚠️ **XAMPP is not supported.** Extremely unsafe for production. --- ## Installation (Ubuntu 26.04) ```bash # 1. System dependencies sudo apt update sudo apt install -y git curl wget unzip nginx mariadb-server redis-server \ php8.5 php8.5-{cli,fpm,mysql,xml,mbstring,curl,zip,bcmath,gd,sockets,intl} \ build-essential # 2. Composer curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer # 3. Node.js + Yarn curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash - sudo apt install -y nodejs sudo corepack enable corepack install -g yarn@latest # 4. Secure MariaDB sudo mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED BY 'your_root_password'; FLUSH PRIVILEGES;" # 5. Clone git clone https://your-gitea-server/remco/Atomcms-edit.git /var/www/atomcms cd /var/www/atomcms # 6. Configure cp .env.example.linux .env # EDIT .env first: set DB_PASSWORD, APP_URL, SESSION_DOMAIN nano .env php artisan key:generate # 7. Create database + user sudo mysql -e "CREATE DATABASE IF NOT EXISTS habbo CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" sudo mysql -e "CREATE USER IF NOT EXISTS 'cms'@'localhost' IDENTIFIED BY 'your_db_password';" sudo mysql -e "GRANT ALL ON habbo.* TO 'cms'@'localhost'; FLUSH PRIVILEGES;" # 8. Install PHP & JS deps composer install --no-dev --optimize-autoloader yarn install # 9. Migrate, seed & build php artisan migrate --seed yarn build:all # 10. Permissions sudo chown -R www-data:www-data storage bootstrap/cache public/build sudo chmod -R 775 storage bootstrap/cache # 11. Start services sudo systemctl enable --now redis-server # 12. PHP tuning sudo sed -i 's/upload_max_filesize = .*/upload_max_filesize = 64M/' /etc/php/8.5/fpm/php.ini sudo sed -i 's/post_max_size = .*/post_max_size = 64M/' /etc/php/8.5/fpm/php.ini sudo sed -i 's/memory_limit = .*/memory_limit = 256M/' /etc/php/8.5/fpm/php.ini sudo sed -i 's/max_execution_time = .*/max_execution_time = 300/' /etc/php/8.5/fpm/php.ini ``` ### Nginx ```nginx server { listen 80; server_name your-domain.com; root /var/www/atomcms/public; index index.php; charset utf-8; add_header X-Frame-Options "SAMEORIGIN" always; add_header X-Content-Type-Options "nosniff" always; add_header Referrer-Policy "strict-origin-when-cross-origin" always; gzip on; gzip_types text/plain text/css application/json application/javascript text/xml image/svg+xml; gzip_vary on; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { fastcgi_pass unix:/var/run/php/php8.5-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.(?!well-known).* { deny all; } location ~ /(\.env|\.git|composer\.(json|lock)) { deny all; } } ``` ```bash sudo ln -sf /etc/nginx/sites-available/atomcms /etc/nginx/sites-enabled/ sudo nginx -t && sudo systemctl reload nginx sudo systemctl restart php8.5-fpm redis-server sudo ufw allow 80/tcp && sudo ufw allow 443/tcp && sudo ufw --force enable ``` ### SSL (recommended) ```bash sudo apt install -y certbot python3-certbot-nginx sudo certbot --nginx -d your-domain.com ``` --- ## Yarn Scripts ```bash yarn build:all # Build all themes yarn build:atom # Atom theme only yarn build:dusk # Dusk theme only yarn dev # Vite dev server yarn lint # Lint JS/Vue yarn format # Format code ``` --- ## Tech Stack **Laravel 13 · React 19 + Alpine.js · Vite 8 · TailwindCSS 4 · Filament 5 · MariaDB/MySQL · Redis** --- ## Support - **Discord:** [Join our server](https://discord.gg/pP6HyZedAj) - **Issues:** Report bugs via the project issue tracker - **Contributions:** Fork & submit merge requests — all help is welcome! --- ## Credits **Remco (Epicnabbo)** — Core Maintainer · **Kasja** — Design & Themes · **Kani** — RCON & API · **Atom Community** — Testing & Feedback