One-Command Installation. Zero Configuration Headaches.
./install.shAccount: testcms
Password: testcms
https://discord.gg/m2core
- https://gtmetrix.com/reports/m2core.xyz/zBHGT5mA/
- GTmetrix Performance: 99%
- GTmetrix Structure: 96%
- Lighthouse Performance: 94/100
- Lighthouse Accessibility: 100/100
- Lighthouse Best Practices: 100/100
- First Contentful Paint: 0.6s
- Largest Contentful Paint: 1.5s
- Total Blocking Time: 10ms
- Time to Interactive: 2.0s
- Fully Loaded: 3.5s
DISCORD: saintlevant337
Full Admin Control Panel
- Everything configurable from browser — site title, description, theme, fonts, colors, border radius, email template, currency names, date format, upload limits, and 80+ more settings
- No code editing required — ever
- Live theme editor with color picker, preset themes, font customization
- Support ticket management — view all tickets, reply as staff, change status/priority, manage categories
- Sandbox/Demo mode — let users explore ACP without saving changes
One CMS. Four completely different looks. One click to switch.
Most CMSes lock you into a single design. If you want a new look, you rebuild, pay for a redesign, or start over. M2Core ships with four full homepage layouts built into
the same codebase — your accounts, characters, news, shop, tickets, forum, and admin data stay exactly the same while the entire visual experience changes.
Pick the one that matches your server's identity. Change your mind next month — switch again in 3 seconds. No data migration, no broken settings, no lost progress.
How it works
- Every layout is a separate React component with its own scoped CSS file
- Selecting a layout adds a layout-<name> class on the HTML root, so styles never leak between them
- Shared data: all four layouts read from the same settings store, the same user accounts, the same news/events/rankings/tickets — nothing is duplicated
- Layout-specific settings (per-card backgrounds, header images, navbar mode, etc.) are stored with a prefix so each layout remembers its own customization independently
- Switch with a single dropdown in ACP → Settings → Appearance. The change goes live instantly for every visitor on the next page load.
1. Classic
The original. Single-column main content with a sidebar, traditional phpBB/Metin2 server aesthetic. Clean, proven, fast. If your audience values familiarity, this is the one.
2. Citadel
A three-column fortress layout. Left sidebar holds the account/login card and player rankings. Center column shows news, presentation pages, and hero. Right sidebar holds server
stats, event calendar, and guild rankings. Each sidebar card is wrapped in a configurable decorative frame — upload your own border PNG, your own titlebar image, your own
body-background image per card. Cards you don't want? Drag them out in the sidebar editor. Want a custom promo button between cards? Add it inline with its own image, color,
label, subtitle, and URL.
3. Obsidian
Cinematic video-hero layout. The hero plays a fullscreen background video (muted, looped, autoplay) with your stats bar overlaid. Below the hero: a large featured card with
optional video-modal player, news section, and a mid content band. Then two banded rows — Statistics (events card + server stats) and Rankings (players + guilds). Each of the 4
homepage cards has its own editable background image, its own header strip image, and inherits the global theme colors for consistency. Add an optional hero download button that
sits above or beside the stats bar, fully editable (label, subtitle, URL, image or color, text color).
4. Aurora
The modern masterpiece. Sidebar-driven layout with a dynamic card list (drag to reorder: Login, Ranking, Events, Download, custom buttons). The ranking card has a tab switcher
between Players and Guilds — live data. The events card shows 4 auto-cycling slots sorted by live > upcoming > ended, with colored countdowns (green for LIVE, red for ENDED).
Guild rankings show the leader's name colored by their empire (red Shinsoo / yellow Chunjo / blue Jinno). The main area has 2 featured banner cards above a wide event banner
(drag-to-reposition the crop in ACP), an events grid, and a news list with corner decorations. Every card has its own background image plus a shared or individual header strip.
What you control per layout
Each layout has its own ACP section with its own editors, so switching between them doesn't erase your work. You can fully configure:
- Per-card backgrounds — individual images for each card (News, Events, Server Stats, Players, Guilds), with a shared fallback
- Per-card header strips — titlebar background images with auto-darkening overlay so text stays readable on any image
- Per-card border frames — upload decorative PNG borders (especially useful for Citadel)
- Hero area — video URL, fallback image, height, stats bar composition
- Hero stats container — wraps the whole stats bar with a configurable background (solid color or gradient), border, and opacity slider; adapts width to stat count
- Hero stats cards — each stat configurable: label, data source (online now / online 24h / total accounts / total characters / total guilds), Bootstrap icon OR custom
image, position (next to text or as full-size background behind centered text), icon opacity - Navbar background — 4 modes (default theme gradient / fully transparent / solid color or gradient / image), plus transparency slider and custom bottom-border color
- Footer — background image or color, logo, copyright text, custom links list (label + URL + external flag per link). Each layout has its own visual style.
- Sidebar composition — pick which cards appear in which sidebar, reorder them, add custom promo buttons between them
- Sidebar buttons — per button: label, subtitle, URL, image (fully covers the button) OR background color/gradient, text color
- Download button — on Aurora and Obsidian, the download button is fully editable (label, subtitle, target URL, background image or color or gradient, text color).
Obsidian adds a position picker (above or beside the hero stats). - Featured banners — 2 promotional cards above the events grid with image, title, version label, click URL (Aurora)
- Top buttons — 2 image buttons above the sidebar for quick links (Aurora)
These work identically regardless of which layout is active:
- Navbar items — fully customizable label, URL, and external flag. One editor, all layouts.
- Theme colors — the base palette (background shades, primary color, accent, text variants) is a single global theme editor. Change once, all layouts update.
- Fonts — heading font and body font, global
- Back-to-top button — fully editable (position, size, color/gradient, custom image, scroll threshold)
- Cookie banner — configurable title, text, button text, position
- Countdown timer — global, visible on every layout
- Discord widget, maintenance page, captcha, sandbox mode — all global
- No vendor lock-in to a look — you're never stuck with a design that went stale
- A/B test looks — run Aurora for a month, switch to Obsidian, see which drives more registrations
- Event-driven redesigns — switch to Citadel for a fantasy event, back to Aurora for a modern season launch
- No rebuild cost — all four ship with the CMS, no extra purchase
- Your data doesn't care — news, tickets, shop, characters, everything persists across layout switches
Maintenance Page
- One-click enable/disable from ACP — instantly blocks all non-admin visitors
- Fully customizable page — title, subtitle, description, background image, logo
- Upload background or use external URL
- Countdown timer with configurable target date and label
- Info cards — add multiple cards with title, text, icon, and image
- Discord invite button with custom label and URL
- Custom navbar items during maintenance — choose which links visitors can still access
- Admin login link always visible at the bottom
- Admins and superadmins bypass maintenance automatically
- Auth routes (login, register, password reset) always accessible
- All settings stored as JSON — no database migration needed
- Users create tickets from their account panel — title, category, rich text description
- Admin-managed categories (Technical, Sales, Account, Bug Report, etc.)
- Full conversation thread — user and staff replies in one unified view
- Staff replies highlighted with gold border + shield icon for easy distinction
- Status flow: Open → In Progress (auto on admin reply) → Resolved → Closed
- Priority levels: Low, Normal, High, Urgent
- Admin controls: change status, priority, assign to admin, delete
- Real-time notification bell in navbar for both users and admins
- Polling-based notification count (every 30s) with badge counter
- Notification dropdown with clickable links to tickets
- Users can't reply to resolved/closed tickets; admins can reply to resolved
- Rich text editor (TipTap) for ticket content and replies
- Double XSS protection on all ticket content
- Rate limiting on ticket creation and replies
- Content size validation (50KB max)
- Audit logging for all admin ticket actions
- Default categories auto-seeded on first startup
- 16 page transition effects: Fade, Slide Up, Slide Down, Slide Left, Slide Right, Zoom In, Zoom Out, Blur Fade, Flip, Rotate, Bounce, Swing, Drop, Glitch, Curtain, or None
- Configurable from ACP — dedicated Animations settings page with visual card picker
- Live preview panel to test animations before saving
- Applied globally on every page navigation
- Category & subcategory organization with drag-and-drop ordering
- Two currency support (Dragon Coins + JCoins) — fully renameable
- Per-item sealbind toggle
- Stock management with atomic race-condition protection
- Quantity selector with configurable max limit
- Promotion system (global, per-category, per-item discounts with time windows)
- Two delivery methods: Item Award (server processes) or Direct Inventory (instant to mall)
- Character selector for delivery
- Purchase history
- One-click coin package purchases via Stripe Checkout
- Webhook signature verification
- Atomic coin crediting (no double-spend)
- Package metadata validation (prevents tampering)
- Country-based pricing with VPN/proxy detection
- Configurable from ACP — no code changes needed
- Set different real-money prices per country on coin packages
- IP geolocation via ip-api.com with 24h caching
- VPN/proxy detection — VPN users always see default pricing
- Toggle on/off from ACP
- English, Romanian, German, Spanish, French, Italian, Hungarian, Polish, Portuguese, Turkish + add any language from ACP
- 143 translatable strings — every user-facing text
- Auto-detection by browser region
- DeepL API integration for auto-translation
- Add/remove languages from ACP
- Categories with custom icons
- Topics with rich text editor (TipTap)
- Replies with emoji reactions
- Pin, close, delete moderation tools
- Admin toolbar on every topic
- HTML sanitization (DOMPurify + server-side HtmlSanitizer)
- Visual calendar with cycling event icons
- 15 preset event types with custom icons and colors
- Tooltip on hover showing all events
- Sidebar widget with live countdown
- Full-day scheduling (multiple events per day)
- Player rankings (level + exp based)
- Guild rankings
- Cached for performance (120s)
- CMS-managed content sections
- Rich text editor with HTML templates
- Hero image, intro logo, stats badges
- Race cards, tabbed interfaces, promo banners
- Rich text editor with image support
- Tag system (News, Events, Patchnotes, Updates)
- Featured cards (configurable count)
- Category filtering
- Pagination
- Character list with empire, level, rank
- Change password / change email
- Request safebox password (via email)
- Request delete code (via email)
- Referral system with coin rewards
- Purchase history
- Configurable from ACP — SMTP host, port, credentials
- Customizable email template — logo, colors, footer text
- Password reset, account verification, safebox, delete code
- Beautiful HTML emails with site branding
- JWT authentication with refresh token rotation
- Admin privilege revalidation from database on every request (prevents JWT forgery)
- Atomic coin operations — no double-spend, no race conditions
- Stripe webhook signature verification + metadata validation
- DOMPurify (frontend) + HtmlSanitizer (backend) — double XSS protection
- SQL injection proof — all queries parameterized, zero string concatenation
- SVG upload scanning — blocks script injection
- Rate limiting — login (5/15min), global (120/min), purchase (10/15min)
- Password reset — 16-char cryptographic tokens (not 6-digit codes)
- SameSite strict cookies with Secure flag
- CSRF protection via SameSite strict
- Brute force protection — 5 failed attempts = 15min lockout
- Sandbox mode — demo without risk
- ForwardedHeaders middleware for proper IP detection behind nginx
- HSTS, X-Frame-Options, X-Content-Type-Options, CSP headers
- SWR caching — settings fetched once, shared across all components
- ResponseCache on 15+ endpoints (30s-1hr)
- Nginx — gzip level 4, keepalive connections, proxy buffering
- Brotli + Gzip compression
- Font optimization — WOFF2, preload, font-display: optional
- Image optimization — AVIF/WebP, 1-year cache TTL
- Pagination capped at 100 on all endpoints
- Database indexes on frequently queried columns
- Base64 auto-decoding in game logs
- Tested at 320px, 375px, 480px, 768px, 1024px, 1440px+
- Mobile-optimized calendar, forms, modals, tables
- Touch-friendly (44px minimum targets)
- One-command install with automated SSL
- 4 containers: API, Web, Nginx, Certbot
- Auto SSL renewal via Let's Encrypt
- Multiple compose configs: production (SSL), no-SSL, development
- Health monitoring via docker compose ps
- Easy updates via update.sh
- Clean uninstall via uninstall.sh
🛠 Tech Stack
- Backend: C# / .NET 9.0
- Frontend: Next.js 16.2 / React 19.2
- Database: MySQL 8.0+
- ORM: Entity Framework Core 9.0
- Payments: Stripe
- Email: MailKit (SMTP)
- Auth: JWT (HS256)
- CSS: Tailwind CSS 3.4
- Rich Text: TipTap 3.21
- Sanitization: DOMPurify + HtmlSanitizer
- Containerization: Docker + Docker Compose
- Reverse Proxy: Nginx Alpine
- SSL: Let's Encrypt + Certbot
- Geolocation: ip-api.com (Free)
- Translation: DeepL API (Free)
- Data Fetching: SWR 2.4
⚖ What Makes M2Core Different
Installation
M2Core: 1 command, 5 minutes
Others: Manual config, hours of setup
SSL
M2Core: Automatic via Let's Encrypt
Others: Manual certbot configuration
Theme
M2Core: Live editor, 80+ settings, preset themes
Others: Edit CSS files manually
Maintenance Page
M2Core: Full page with countdown, cards, Discord link, custom nav
Others: Static HTML file or none
Languages
M2Core: 12 built-in + add any from ACP
Others: 1-2 languages, hardcoded
Item Shop
M2Core: Built-in with Stripe, promotions, stock management
Others: External plugin or none
Country Pricing
M2Core: Built-in with VPN protection
Others: Not available
Security
M2Core: Production-hardened, full pentest audit
Others: Basic at best
Performance
M2Core: 99% GTmetrix
Others: 60-80% typical
Responsive
M2Core: Fully tested 320px-1440px+
Others: Often broken on mobile
Email Template
M2Core: Configurable from ACP (logo, colors, footer)
Others: Edit HTML template files
Updates
M2Core: One command (update.sh)
Others: Manual file replacement
Demo Mode
M2Core: Built-in sandbox
Others: Not available
- VPS with 1GB+ RAM (2GB recommended)
- Ubuntu 20.04+ or Debian 11+
- Docker (auto-installed if missing)
- MySQL 8.0+ database (can be remote)
- Domain name pointed to VPS IP
- Installation support included
- Documentation included
- Update support included
Built with security, performance, and ease of use as the top priorities. Every feature is configurable from the admin panel — zero code editing required.
Some images in case you can't go to live preview:
*Declar că voi presta serviciile în termenii menționați mai sus și înțeleg că, în cazul nerespectării acestora, pot fi supus unei reclamații: DA












![[Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 1 [Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 1](https://i.postimg.cc/68xxt7Kg/screencapture-localhost-admin-settings-animations-2026-04-03-10-53-35.png)
![[Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 2 [Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 2](https://i.postimg.cc/hXRRcJgW/Screenshot-1.png)
![[Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 3 [Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 3](https://i.postimg.cc/nXffpsZf/Screenshot-2.png)
![[Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 4 [Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 4](https://i.postimg.cc/Y4856bF1/Screenshot-3.png)
![[Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 5 [Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 5](https://i.postimg.cc/3kQQYy7Y/screencapture-localhost-admin-support-2026-04-03-10-54-00.png)
![[Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 6 [Servicii] [ASP.NET Core + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 4 - Imagine 6](https://i.postimg.cc/bZffpG8P/screencapture-localhost-admin-support-2-2026-04-03-10-55-39.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 5 - Imagine 1 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 5 - Imagine 1](https://i.imgur.com/k4Pj0rd.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 5 - Imagine 2 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 5 - Imagine 2](https://i.imgur.com/4JeEHZW.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 5 - Imagine 3 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 5 - Imagine 3](https://i.imgur.com/ereCoF8.png)

![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 1 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 1](https://i.imgur.com/pY79Mzl.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 2 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 2](https://i.imgur.com/jZBq2YN.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 3 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 3](https://i.imgur.com/kgRWV13.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 4 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 4](https://i.imgur.com/erF01WT.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 5 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 5](https://i.imgur.com/Fu6WNXW.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 6 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 7 - Imagine 6](https://i.imgur.com/l1GgrYh.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 10 - Imagine 1 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 10 - Imagine 1](https://i.imgur.com/6Tl0Ngz.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 10 - Imagine 2 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 10 - Imagine 2](https://i.imgur.com/3KtH4ge.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 10 - Imagine 3 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 10 - Imagine 3](https://i.imgur.com/DUXlaKI.png)
![[Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 10 - Imagine 4 [Servicii] [C# / .NET 9.0 + NEXTJS] M2CORE CMS [CHEAPEST AND MOST ADVANCED CMS] - Mesaj 10 - Imagine 4](https://i.imgur.com/k088T2Z.png)