Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: DarkCore v1.0.0 — Open-Source CMS for MU Online  (Visto 356 veces)

0 Miembros and 1 Guest are viewing this topic.

Offline Darkheim Posteado: March 18, 2026, 08:09:55 PM | Modificado: March 18, 2026, 08:15:43 PM by Darkheim

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca
DarkCore is a free, open-source CMS and framework for MU Online private servers. It is built strictly on modern PHP standards and runs entirely within Docker. No manual server configuration or extension installation is required.


Live Demo: Live Demo  Developer: Darkheim Studio  GitHub Repository: xDarkheim/DarkCore

Architecture & Tech Stack
  • Core: PHP 8.4 + Apache (mod_rewrite)
  • Standards: Strict PSR-4 autoloading and Dependency Injection (DI) Container. No global variables.
  • Database: Microsoft SQL Server via pdo_dblib / FreeTDS.
  • Environment: Docker & docker-compose.
  • Security & Performance: All background tasks (caching, rankings, rewards) are executed strictly via CLI (bin/console.php), isolated from HTTP requests.
  • Testing: Core stability is covered by 200+ PHPUnit tests and PHPStan static analysis.
Supported Emulators
  • Ready out of the box: X-Team, MuEmu, Louis.

Core Features
  • Account Management: Registration, login, email verification, password recovery.
  • Characters: Viewer, editor, and class management.
  • Rankings: Player and guild rankings with class filters.
  • News System: Multi-language (EN, RU, CN, ES, PT, RO).
  • Economy: PayPal integration and credits system.
  • Administration: Full-featured Admin Control Panel.
  • Modules: Runtime-loadable plugin system via DI.
  • API: REST API endpoints.
License: MIT. Free to use, modify, and redistribute. Pull Requests are welcome.

Gracias:


Offline Darkheim #1 Posteado: March 19, 2026, 12:50:57 AM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca
The new core engine is live, with legacy modules still supported out of the box. I am now beginning a phased refactoring to decouple all business logic from the views. The long-term vision is to transition completely from a rigid CMS model to a flexible framework, empowering you to build the frontend with either pure JavaScript or your favorite JS frameworks.


Offline bafta100 #2 Posteado: March 19, 2026, 07:17:13 AM

  • 0 puntos por ventas
  • *
  • Rank: Liga mayor
  • Posts: 190
  • Gracias recibida: 81
  • gb

Offline cepo #3 Posteado: March 19, 2026, 11:00:31 AM

  • Web Developer
  • 0 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 268
  • Gracias recibida: 2581
  • ar
maybe you forgot add Lautaro Angelico to the credits


Offline Darkheim #4 Posteado: March 19, 2026, 12:25:56 PM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca
maybe you forgot add Lautaro Angelico to the credits

Yeah, you're right. I'll add him to the credits for the original templates. Thanks!


Offline Darkheim #5 Posteado: March 19, 2026, 12:31:16 PM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca
its working for s21?

Season 21 usually means you're using IGCN. Currently, DarkCore doesn't support the IGCN database structure.


Offline alevarxz #6 Posteado: March 19, 2026, 01:36:22 PM

  • 0 puntos por ventas
  • *
  • Rank: Destacado
  • Posts: 88
  • Gracias recibida: 1279
  • cl
maybe you forgot add Lautaro Angelico to the credits

Yeah, you're right. I'll add him to the credits for the original templates. Thanks!

It's actually the template I reworked.  boxing


Offline Darkheim #7 Posteado: March 19, 2026, 01:42:33 PM | Modificado: March 19, 2026, 01:50:14 PM by Darkheim

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca
maybe you forgot add Lautaro Angelico to the credits

Yeah, you're right. I'll add him to the credits for the original templates. Thanks!

It's actually the template I reworked.  boxing

😅 Awesome work on the template, by the way. I'll definitely add you to the credits for the rework too. Just let me know how you want to be listed.


Offline bafta100 #8 Posteado: March 19, 2026, 07:22:50 PM

  • 0 puntos por ventas
  • *
  • Rank: Liga mayor
  • Posts: 190
  • Gracias recibida: 81
  • gb
its working for s21?

Season 21 usually means you're using IGCN. Currently, DarkCore doesn't support the IGCN database structure.

so this is only for season 6 and lower?


Offline Darkheim #9 Posteado: March 19, 2026, 08:29:39 PM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca
its working for s21?

Season 21 usually means you're using IGCN. Currently, DarkCore doesn't support the IGCN database structure.

so this is only for season 6 and lower?

This doesn't depend on the season, but rather on the database structure of a particular emulator. This engine works perfectly with all databases from Louis, X-Team, and MuEmu. Season 21 is only available from IGCN, and our engine doesn't support this structure (we plan to add an abstraction to easily integrate any database formats from different emulators; it'll a simple configuration addition), but the other seasons are easily supported by the emulators mentioned above.


Offline Arazox #10 Posteado: March 19, 2026, 08:52:09 PM

  • +1 puntos por ventas
  • *
  • Rank: Puto amo
  • Posts: 601
  • Gracias recibida: 2953
  • ve
buenas, quiero saber que diferencia hay con la webengine de lautaro? ya que por lo visto esto no es una cms creada desde 0 es simplemente una modificación de la webengine (mas que todo parte visual y de modulos), de resto no veo nada fuera de lo normal, lindo trabajo igualmente.


Offline alevarxz #11 Posteado: March 20, 2026, 08:12:29 AM

  • 0 puntos por ventas
  • *
  • Rank: Destacado
  • Posts: 88
  • Gracias recibida: 1279
  • cl
buenas, quiero saber que diferencia hay con la webengine de lautaro? ya que por lo visto esto no es una cms creada desde 0 es simplemente una modificación de la webengine (mas que todo parte visual y de modulos), de resto no veo nada fuera de lo normal, lindo trabajo igualmente.

Dio el GitHub puedes revisar tu mismo. Tiene similitudes pero en varias cosas por lo que vi, para empezar esta buena, le falta mas desarrollo como todo proyecto recién empezando.

Gracias:


Offline Darkheim #12 Posteado: March 20, 2026, 09:28:38 AM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca
buenas, quiero saber que diferencia hay con la webengine de lautaro? ya que por lo visto esto no es una cms creada desde 0 es simplemente una modificación de la webengine (mas que todo parte visual y de modulos), de resto no veo nada fuera de lo normal, lindo trabajo igualmente.

Hello, and thank you for the feedback! I completely understand why it looks like a simple WebEngine modification from the outside, but the reality is exactly the opposite.

​In Phase 1 (the current v1.0.0 release), there was absolutely no manipulation of the visual appearance. The entire focus of this release was strictly on rewriting the internal engine itself.

​Under the hood, the old procedural backend has been completely replaced with a modern, secure OOP architecture running on strict PHP 8.4 (featuring an AppKernel, Dependency Injection, and a Database Factory). To ensure that the community's existing websites don't break, I intentionally kept the old frontend and module structure intact by routing them through a compatibility layer (compat.php). That is why it looks the same on the surface.

​The structural changes to the modules and the final transition to a strict MVC model (where backend PHP logic is completely separated from HTML UI) are planned for the upcoming versions. Once the template handling is fully reworked in the next phase, the differences will become very obvious on the outside as well.

​Feel free to check the src/ directory on GitHub to see how the new engine operates under the old hood! 🤝

Gracias:


Offline alevarxz #13 Posteado: March 20, 2026, 01:33:02 PM

  • 0 puntos por ventas
  • *
  • Rank: Destacado
  • Posts: 88
  • Gracias recibida: 1279
  • cl
buenas, quiero saber que diferencia hay con la webengine de lautaro? ya que por lo visto esto no es una cms creada desde 0 es simplemente una modificación de la webengine (mas que todo parte visual y de modulos), de resto no veo nada fuera de lo normal, lindo trabajo igualmente.

Hello, and thank you for the feedback! I completely understand why it looks like a simple WebEngine modification from the outside, but the reality is exactly the opposite.

​In Phase 1 (the current v1.0.0 release), there was absolutely no manipulation of the visual appearance. The entire focus of this release was strictly on rewriting the internal engine itself.

​Under the hood, the old procedural backend has been completely replaced with a modern, secure OOP architecture running on strict PHP 8.4 (featuring an AppKernel, Dependency Injection, and a Database Factory). To ensure that the community's existing websites don't break, I intentionally kept the old frontend and module structure intact by routing them through a compatibility layer (compat.php). That is why it looks the same on the surface.

​The structural changes to the modules and the final transition to a strict MVC model (where backend PHP logic is completely separated from HTML UI) are planned for the upcoming versions. Once the template handling is fully reworked in the next phase, the differences will become very obvious on the outside as well.

​Feel free to check the src/ directory on GitHub to see how the new engine operates under the old hood! 🤝

Hey, I really like the direction you're taking with the core rewrite. Moving away from procedural code is definitely a great improvement.
Just as a suggestion, I think it might be worth keeping the architecture as simple and practical as possible, especially for a MU Online CMS.
Instead of relying on a heavy AppKernel or a complex setup, maybe a more lightweight structure could bring more value in the long run. Something like a simple bootstrap, a clear application entry point, a basic router, and well-defined services.

In this kind of project, what usually matters most is:
  • how easy it is to build and modify modules
  • how fast development can move
  • and how maintainable the code is over time

So rather than focusing too much on a large core structure, it could be more impactful to keep things modular, clean, and easy to extend.
The foundation you’re building looks solid. Simplifying how it’s applied could make it even stronger and more practical.

Regards.

Gracias:


Offline Darkheim #14 Posteado: March 20, 2026, 02:23:35 PM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca
buenas, quiero saber que diferencia hay con la webengine de lautaro? ya que por lo visto esto no es una cms creada desde 0 es simplemente una modificación de la webengine (mas que todo parte visual y de modulos), de resto no veo nada fuera de lo normal, lindo trabajo igualmente.

Hello, and thank you for the feedback! I completely understand why it looks like a simple WebEngine modification from the outside, but the reality is exactly the opposite.

​In Phase 1 (the current v1.0.0 release), there was absolutely no manipulation of the visual appearance. The entire focus of this release was strictly on rewriting the internal engine itself.

​Under the hood, the old procedural backend has been completely replaced with a modern, secure OOP architecture running on strict PHP 8.4 (featuring an AppKernel, Dependency Injection, and a Database Factory). To ensure that the community's existing websites don't break, I intentionally kept the old frontend and module structure intact by routing them through a compatibility layer (compat.php). That is why it looks the same on the surface.

​The structural changes to the modules and the final transition to a strict MVC model (where backend PHP logic is completely separated from HTML UI) are planned for the upcoming versions. Once the template handling is fully reworked in the next phase, the differences will become very obvious on the outside as well.

​Feel free to check the src/ directory on GitHub to see how the new engine operates under the old hood! 🤝

Hey, I really like the direction you're taking with the core rewrite. Moving away from procedural code is definitely a great improvement.
Just as a suggestion, I think it might be worth keeping the architecture as simple and practical as possible, especially for a MU Online CMS.
Instead of relying on a heavy AppKernel or a complex setup, maybe a more lightweight structure could bring more value in the long run. Something like a simple bootstrap, a clear application entry point, a basic router, and well-defined services.

In this kind of project, what usually matters most is:
  • how easy it is to build and modify modules
  • how fast development can move
  • and how maintainable the code is over time

So rather than focusing too much on a large core structure, it could be more impactful to keep things modular, clean, and easy to extend.
The foundation you’re building looks solid. Simplifying how it’s applied could make it even stronger and more practical.

Regards.

The heavier architecture with the AppKernel and services setup is actually intentional. The ultimate goal with DarkCore isn't just to make another lightweight CMS, but to build a robust framework foundation for the MU community.

I'm putting all the heavy lifting—routing, dependency injection, security, and strict typing—inside the core so that I take the architectural headache upon myself. The idea is that once this complex foundation is set, other developers and server admins won't have to reinvent the wheel or fight the system. They will get a clean, dead-simple API to drop in their own modules and build their sites on top of our base.

It’s complex under the hood specifically so the developer experience for creating custom features remains as fast and straightforward as possible. I definitely agree that the entry point for module creation needs to stay simple, and that's exactly what this core will allow.


Offline Pinponw #15 Posteado: March 20, 2026, 11:59:40 PM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 22
  • Gracias recibida: 15
  • br
Warning: Undefined variable $handler in /var/www/html/views/subpages/language/switch.php on line 10

Fatal error: Uncaught Error: Call to a member function switchLanguage() on null in /var/www/html/views/subpages/language/switch.php:10 Stack trace: #0 /var/www/html/src/Infrastructure/Routing/SubpageRouteDispatcher.php(43): include() #1 /var/www/html/src/Infrastructure/Routing/Handler.php(109): Darkheim\Infrastructure\Routing\SubpageRouteDispatcher->dispatch() #2 /var/www/html/public/themes/default/index.php(200): Darkheim\Infrastructure\Routing\Handler->loadModule() #3 /var/www/html/src/Infrastructure/Routing/PageAccessDispatcher.php(22): include('...') #4 /var/www/html/src/Infrastructure/Routing/Handler.php(67): Darkheim\Infrastructure\Routing\PageAccessDispatcher->dispatch() #5 /var/www/html/src/Infrastructure/Bootstrap/AppKernel.php(68): Darkheim\Infrastructure\Routing\Handler->loadPage() #6 /var/www/html/includes/bootstrap/boot.php(18): Darkheim\Infrastructure\Bootstrap\AppKernel->boot() #7 /var/www/html/public/index.php(7): include('...') #8 {main} thrown in /var/www/html/views/subpages/language/switch.php on line 10


Offline Darkheim #16 Posteado: Today at 12:29:26 AM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca
Warning: Undefined variable $handler in /var/www/html/views/subpages/language/switch.php on line 10

Fatal error: Uncaught Error: Call to a member function switchLanguage() on null in /var/www/html/views/subpages/language/switch.php:10 Stack trace: #0 /var/www/html/src/Infrastructure/Routing/SubpageRouteDispatcher.php(43): include() #1 /var/www/html/src/Infrastructure/Routing/Handler.php(109): Darkheim\Infrastructure\Routing\SubpageRouteDispatcher->dispatch() #2 /var/www/html/public/themes/default/index.php(200): Darkheim\Infrastructure\Routing\Handler->loadModule() #3 /var/www/html/src/Infrastructure/Routing/PageAccessDispatcher.php(22): include('...') #4 /var/www/html/src/Infrastructure/Routing/Handler.php(67): Darkheim\Infrastructure\Routing\PageAccessDispatcher->dispatch() #5 /var/www/html/src/Infrastructure/Bootstrap/AppKernel.php(68): Darkheim\Infrastructure\Routing\Handler->loadPage() #6 /var/www/html/includes/bootstrap/boot.php(18): Darkheim\Infrastructure\Bootstrap\AppKernel->boot() #7 /var/www/html/public/index.php(7): include('...') #8 {main} thrown in /var/www/html/views/subpages/language/switch.php on line 10

Now it is possible to notice the development and debugging process live. Live Demo is currently in the development phase


Offline Darkheim #17 Posteado: Today at 04:42:53 AM

  • 0 puntos por ventas
  • *
  • Rank: Principiante
  • Posts: 11
  • Gracias recibida: 4
  • ca


I'll be working under this huge update a while. Right now I'll testing this and soon will be released.
Frontend guys will love it. No more PHP and SQL on HTML


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
4 Replies
3778 Views
Last post August 17, 2018, 09:09:15 AM
by T-LEGENDARY
34 Replies
16096 Views
Last post March 22, 2023, 02:31:31 AM
by minhdc3
0 Replies
2345 Views
Last post July 17, 2021, 05:12:14 PM
by efe.L
4 Replies
4023 Views
Last post January 26, 2023, 10:02:34 PM
by plyn
4 Replies
2441 Views
Last post May 08, 2025, 10:31:06 PM
by CAPITOL