• v1.0.1 12e4a07e48

    v1.0.1
    Deploy / deploy (push) Skipped
    Deploy / release (push) Successful in 8s

    remco released this 2026-07-24 14:49:07 +02:00 | 1015 commits to main since this release

    EpicNext-CMS v1.0.1

    Modern, high-performance CMS for Habbo hotel emulators — built on Next.js 16, React 19 and Prisma 7. Integrates with Polaris / Arcturus Morningstar databases.

    Menu

    What is EpicNext-CMS?

    EpicNext-CMS is a full public-facing hotel website plus an administrative panel. It features NextAuth authentication (argon2id/bcrypt with MD5 upgrade), real-time RCON communication with the emulator, Server-Sent Events for live radio, smooth page transitions and extensive extensibility. Full documentation: https://gitlab.epicnabbo.nl/remco/EpicNext-Cms/src/branch/main/README.md

    System Requirements

    What you need to install before running the CMS:

    Component Version Notes
    Node.js >= 22 Required by Next.js 16
    pnpm >= 10.33.4 Package manager (npm/yarn not supported)
    MySQL / MariaDB 8.0+ / 10.6+ Shared with the emulator
    Redis 7.x+ Optional — caching, rate limiting, SSE
    Java 17+ Only if building the emulator
    Maven 3.9+ Only if building the emulator

    The CMS shares its database with the Polaris / Arcturus emulator. It only reads/writes emulator-owned tables and never alters them.

    Installation Wizard

    A complete hotel stack = EpicNext-CMS (this repo) + Polaris Emulator + Nitro V3 client + Catalogus data. Follow the steps in order.

    Quick links: Full setup guide · EpicNext-CMS repo · Reference configs in this repo

    1. Clone & Install the CMS

    git clone https://gitlab.epicnabbo.nl/remco/EpicNext-Cms.git
    cd EpicNext-Cms
    pnpm install
    

    2. Database Setup

    The CMS shares the emulator database. Import the Polaris/Arcturus database first, then create the CMS schema:

    CREATE DATABASE IF NOT EXISTS epicnext_cms CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    

    3. Configure Environment

    cp .env.example .env
    

    Edit .env with at minimum: DATABASE_URL, AUTH_SECRET, HOTEL_NAME and APP_URL. See .env.example for RCON, email, Redis, OAuth and PayPal options.

    4. Generate Prisma Client

    pnpm prisma:generate
    

    5. Run CMS Migrations

    pnpm db:migrate
    

    Creates all CMS-owned tables (website_, radio_, acl_*, admin_audit_log). Emulator tables are never touched. Check status with pnpm db:migrate:status.

    6. Polaris Emulator

    Clone and build the emulator (requires Java 17+ and Maven 3.9+):

    git clone https://github.com/duckietm/Polaris-Emulator.git /var/www/emulator
    cd /var/www/emulator/Emulator
    mvn clean package
    

    Place the built Habbo-*-jar-with-dependencies.jar next to config.ini (see setup/emulator/config.ini), then create a systemd unit from setup/emulator/emulator.service with the emulator launcher so it starts on boot. The bundled update-Nitrov3.sh in this repo automates cloning, building and updating the emulator and Nitro — run it any time to pull the latest commits and rebuild:

    ./update-Nitrov3.sh
    

    7. Nitro V3 & Renderer

    Clone both Nitro repos and build the client:

    git clone https://github.com/duckietm/Nitro_Render_V3.git /var/www/Nitro_Render_V3
    git clone https://github.com/duckietm/Nitro-V3.git /var/www/Nitro-V3
    cd /var/www/Nitro_Render_V3 && yarn install && yarn link
    cd /var/www/Nitro-V3 && yarn install && yarn link "@nitrots/nitro-renderer" && yarn build
    

    Copy the reference configs from setup/nitro/ into /var/www/Nitro-V3/public/configuration, keep them as *.json, and replace MY_DOMAIN with your domain, API URL and gamedata paths (see the Full setup guide, NitroV3_And_Emulator.md).

    8. Catalogus (catalog & gamedata)

    Catalogus holds the daily-updated catalog/gamedata. Clone the Beta-3 branch alongside the other components:

    git clone -b Beta-3 https://gitlab.epicnabbo.nl/remco/Epicnabbo-Catalogus-Updated-Daily.git /var/www/catalogus
    

    9. Build & Start the CMS

    # Development (hot reload)
    pnpm dev
    
    # Production
    pnpm build && pnpm start
    

    Open http://localhost:3000 in your browser.

    10. First Login

    1. Register at /register, or log in with an existing emulator account.
    2. Grant admin access: UPDATE users SET rank = 7 WHERE username = 'yourname';
    3. Visit /admin and configure your hotel via Admin -> CMS Settings.

    How it is used

    • Public site: browse the hotel, news, radio and the Nitro client at /client.
    • Admin panel: /admin for CMS settings, theming (12 presets), users, radio and more.
    • Background jobs: run pnpm jobs:worker for daily backups and cleanup.
    • Optional: Cloudflare Turnstile / reCAPTCHA, OpenAI moderation and email/PayPal via .env.

    Changes

    12e4a07e polish: typewriter SSR fix, Community link label, verify premium cards, loading skeleton
    fc42a1c1 docs: update README for v1.0.1 — PM2 deploy, premium features, production-ready
    fee71fe7 chore: remove Features and Client/Play sections from homepage
    e8ade7af fix(deploy): remove standalone logic, fix chown errors in workspace
    3773c6cb chore: switch from standalone to normal next start
    c432d4e9 fix: service worker cache busting — unregister old sw on load, bump cache version, stop caching HTML
    b37b6bc2 feat: premium polish pass — typing effect, animated counters, ambient orbs, input glow, show/hide password, redesigned settings, Reveal animations
    5fa34201 chore: remove dead code and unused dependencies
    7f8d0837 Remove Discord and Google OAuth verification from CMS
    f7f6e091 Fix migration connection exhaustion and polish auth pages
    a9f1f4f9 Fix Turbopack NFT warning
    f6ee9980 Fix migration 'Too many connections' error during deploy
    7fc7412f Remove experimental Next.js config options
    dae381e0 Persist .next/cache across deploys for faster rebuilds
    7dbca411 Fix BCRYPT_ROUNDS override — use function to read env at call time
    331a18e9 Add BCRYPT_ROUNDS env override, use 4 in CI
    f7551166 Speed up tests: lower argon2 params in CI, env overrides
    b6ba5543 Fix deploy error handler: cd to safe dir before pm2
    aabf14aa Fix deploy workflow tests for PM2
    9226558a Optimize deploy script
    d9e95c82 Update deploy to use PM2, add .next.prev to gitignore
    a058a6e9 Rename deploy script to avoid pnpm conflict
    5913328a Switch to PM2, add deploy script
    71a3b0a4 Add date and holiday detection to clock
    eb603b50 Add live clock to top bar
    b9c09f58 Use CMS logo in top bar, improve switcher area
    83356b9a Polish home, register, and login pages
    a82cf7d2 Add top bar with hotel logo, language switcher, and theme toggle
    4457117f Premium index page redesign with hubbly icons, Habbo gradient headers, login sidebar, scroll animations
    24c4279a Update duckets icon from hubbly.pw
    36d9046a Revert "Replace PNG icons with Habbo-style SVG pixel art icons across index, nav, and mobile nav"
    ac16df98 Replace PNG icons with Habbo-style SVG pixel art icons across index, nav, and mobile nav
    255c09b9 fix(admin): restore sidebar categories via ACL grant repair
    ce6e8235 fix(admin): housekeeping TS returns + clearer permissions UX
    75cace41 feat(mod): tickets+team tabs; retire HK writes for live ACL
    084cca6e feat(mod): lite /mod panel + clarify ACL vs housekeeping legacy
    a384c9a8 feat(admin): guilds console + user sanctions timeline
    1e77398a Add all missing translation keys to all 22 languages (English baseline)
    5be5405b Add missing translations for all 21 languages (home/register/login keys)
    dfc768c2 Add missing Dutch translations for stats/features keys on index
    db464539 Use next_header.jpg as index hero background
    6a160298 Add missing Dutch translations for register/login/home keys
    782271a3 Premium polish: enhanced toolbar, glass cards, Habbo bg panels, animations
    7aec61d1 Add theme + language toolbar to index, register, login pages
    025af147 feat(admin): marketplace console + analytics degraded banners
    f150aea8 feat(admin): P1 — clearer tickets labels, pagination, min_staff_rank, analytics errors
    75cdfdeb fix(admin): P0 integrity — permanent bans, ACL sidebar, rank guards
    11004626 Add newest registered users section to index, register, login pages
    8d28739c feat(admin): expand/collapse all sidebar groups with scrollable nav
    e00e9ca2 refactor: centralize hotel name fallback via FALLBACK_HOTEL_NAME
    

    Linked repositories (exact commits)

    The game components below are pinned to the exact commits used by this release and are deployed alongside the CMS:

    Component Repository Commit
    Catalogus https://gitlab.epicnabbo.nl/remco/Epicnabbo-Catalogus-Updated-Daily c3657942d708db11d9715fe9706f877dbbf15eb3
    Nitro-V3 https://github.com/duckietm/Nitro-V3 c6ad9f7b01aea4cfd0e5e8c9561f7e3bebe941ae
    Nitro-Render-V3 https://github.com/duckietm/Nitro_Render_V3 0c6e61f2006edfd2e1c5948838a5235e92fde22f
    Polaris Emulator https://github.com/duckietm/Polaris-Emulator cd1d3c8caf052bffaa5f6e56f5e1fe8d50bd1c6a

    Nitro-V3 · Nitro Renderer · Polaris Emulator · Catalogus


    Automated release from Gitea Actions

    Downloads