Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
137 commits
Select commit Hold shift + click to select a range
d768217
feat(modules): add modular system with example and armory modules
sayghteight Nov 12, 2025
c51a8d0
refactor(modules): remove armory module and implement dynamic module …
sayghteight Nov 12, 2025
ae8ae4c
feat(armory): implement modular armory feature with repository pattern
sayghteight Nov 18, 2025
8df5f23
refactor(module-structure): simplify module directory structure and c…
sayghteight Nov 18, 2025
bfe343d
refactor(MakeModuleCommand): improve module scaffolding command
sayghteight Nov 18, 2025
85cbb6b
build: update laravel framework and remove mysql ssl options
sayghteight Nov 27, 2025
68ae718
refactor: improve RedisLibrary with fallback to Cache and add validation
sayghteight Dec 31, 2025
01f77f2
build: add nixpacks configuration for PHP deployment
sayghteight Jan 1, 2026
1877553
build: update nixpacks configuration for deployment
sayghteight Jan 1, 2026
7541854
build(nixpacks): add required php extensions and nodejs for laravel
sayghteight Jan 1, 2026
3b9ead6
build(nixpacks): disable nodejs and clean up php extensions
sayghteight Jan 1, 2026
149bda5
fix: simplify start command by removing unnecessary operations
sayghteight Jan 1, 2026
f58bccb
build(nixpacks): update nixpacks configuration for postbuild phase
sayghteight Jan 1, 2026
aaa1f4e
style: remove extra blank line in routes file
sayghteight Jan 1, 2026
2ccdf06
refactor(RedisLibrary): remove redundant section comments
sayghteight Jan 1, 2026
38d8ff5
refactor: remove redundant comment in AccountLinked model
sayghteight Jan 1, 2026
98fc509
refactor: remove unused ArmoryController and add Redis enabled flag
sayghteight Jan 3, 2026
5a18e1a
feat(WoWConstants): update race and expansion constants
sayghteight Jan 3, 2026
358b204
feat(RealmHelper): add new playable races to faction lists
sayghteight Jan 3, 2026
737552d
refactor(RealmHelper): improve type hints and switch to match expression
sayghteight Jan 3, 2026
57fb270
feat(forum): implement forum module with models, routes and services
sayghteight Jan 3, 2026
c57a174
feat(armory): add realm validation in character search
sayghteight Jan 4, 2026
7578e69
chore: remove obsolete nixpacks configuration file
sayghteight Jan 4, 2026
76c8380
refactor(armory): remove realm validation and related methods
sayghteight Jan 4, 2026
bcba527
fix(ArmoryServiceProvider): throw exception when realm not found
sayghteight Jan 4, 2026
803d169
feat(donate): add donate module with routes and views
sayghteight Jan 4, 2026
08b7d74
feat(donate): implement braintree payment gateway integration
sayghteight Jan 7, 2026
2cb8dde
feat(donate): add donation receipt page and redirect after checkout
sayghteight Jan 7, 2026
c1377c7
feat(donate): implement donation transactions and UI improvements
sayghteight Jan 8, 2026
7ad9e58
feat(donate): implement donation plans feature
sayghteight Jan 10, 2026
b7b9bc1
refactor(donate): change amount handling to use decimal values
sayghteight Jan 11, 2026
ae93a41
fix(home): add conditional check for featured news image
sayghteight Jan 11, 2026
1296d10
fix(views): add conditional check for featuredNews existence.
sayghteight Jan 11, 2026
953e6c3
fix(views): replace foreach with forelse to handle empty news array.
sayghteight Jan 11, 2026
86c3651
fix(donations): handle empty transactions case in donations view
sayghteight Jan 11, 2026
8bfcbe4
feat(admin): implement admin module with roles, permissions and dashb…
sayghteight Jan 21, 2026
54534fd
feat(roles): add delete functionality and improve user display
sayghteight Jan 25, 2026
5637d21
build: add Dockerfile for Laravel with PHP 8.4 FPM
sayghteight Jan 25, 2026
74ed5ad
feat(docker): add nginx and entrypoint for full web server setup
sayghteight Jan 27, 2026
3650973
chore: remove unused openssl package and ssl config.
sayghteight Jan 27, 2026
85dba63
build: update PHP version requirement to ^8.4
sayghteight Jan 27, 2026
afbaca9
chore(docker): remove docker configuration files
sayghteight Jan 27, 2026
bf2430b
refactor(Admin): remove unused API service class
sayghteight Jan 27, 2026
da92424
feat(admin): add ApiService for checking GitHub releases and versions.
sayghteight Jan 27, 2026
c02da30
feat(api): add configurable API key support for external requests
sayghteight Jan 28, 2026
0527ed9
fix(admin): correct release notes and update links to open in new tab
sayghteight Jan 28, 2026
dc6c8fc
fix(admin): update admin panel link and simplify release notes
sayghteight Jan 28, 2026
224238b
refactor(admin): replace role checks with authorization gates
sayghteight Jan 28, 2026
2ff1ca9
fix(admin): remove debug code and incorrect permission check
sayghteight Jan 28, 2026
4a2c065
feat(admin): add user management module
sayghteight Jan 28, 2026
785cf25
refactor(admin): remove automatic Admin role assignment and update me…
sayghteight Jan 29, 2026
3947044
fix(seeder): prevent duplicate permissions and roles on re-run
sayghteight Jan 29, 2026
fdab273
docs: update README with project background and installation guide
sayghteight Jan 30, 2026
0eecb86
docs: update README with refined project description and community fo…
sayghteight Jan 30, 2026
31f2583
Add MIT License to the project
sayghteight Jan 30, 2026
4361128
docs: update Packagist package links in README
sayghteight Jan 30, 2026
a57ac1a
docs: update README badges to use GitHub-native shields
sayghteight Jan 30, 2026
a20a080
docs: update README with new badges and structure
sayghteight Jan 30, 2026
cc5ee58
docs: move badges to top of README for better visibility
sayghteight Jan 30, 2026
61f44f8
docs: remove paragraph tags from badge section in README
sayghteight Jan 30, 2026
adbd3c4
docs: update license badge from MIT to GPL-3.0 in README
sayghteight Jan 30, 2026
b0a4a33
Add GNU GPL v3 license
sayghteight Jan 30, 2026
75775b4
chore: remove LICENSE.md file
sayghteight Jan 30, 2026
258004d
feat(admin): enhance user management with DP/VP points and improved UI.
sayghteight Jan 30, 2026
f14d9ce
fix(admin): correct user deletion logic and update UI
sayghteight Jan 31, 2026
fe202bd
style(auth): enhance register page UI with improved visual design
sayghteight Jan 31, 2026
e83470d
feat(admin): add settings module with model, controller, views, and m…
sayghteight Feb 1, 2026
0c0501c
feat(admin): implement settings management with save functionality
sayghteight Feb 1, 2026
0971d50
feat: add maintenance mode and settings helper with caching
sayghteight Feb 3, 2026
0f41c70
feat(admin): add success message display to settings page.
sayghteight Feb 5, 2026
f340577
feat(admin): implement localization, security, and seo settings UI
sayghteight Feb 5, 2026
8f5821f
feat(admin): add multi-language support for admin settings
sayghteight Feb 5, 2026
e8344f2
feat(admin): externalize settings translations to language files
sayghteight Feb 7, 2026
564f83f
chore: remove unused admin translation files
sayghteight Feb 7, 2026
97314db
feat(admin): add localization support for settings menu items
sayghteight Feb 7, 2026
397bdf0
feat(auth): replace role-based with permission-based middleware
sayghteight Feb 8, 2026
c19a650
fix: increase homepage news pagination limit from 2 to 5 items
sayghteight Feb 9, 2026
7ec6232
fix: remove auth middleware from news routes and adjust featured news…
sayghteight Feb 9, 2026
bede901
feat(console): add artisan command to fix Laravel directory permissions
sayghteight Feb 17, 2026
5155042
fix(donations): replace Laravel collection methods with array functions
sayghteight Feb 17, 2026
73665b0
fix(views): handle null values in donations transaction table
sayghteight Feb 17, 2026
d17e239
feat(armory): add realm existence middleware and clean up views
sayghteight Feb 21, 2026
42c3f52
feat(forum): implement forum module with index view and routing
sayghteight Feb 22, 2026
fe572b9
test: replace example tests with specific helper tests
sayghteight Feb 22, 2026
bd0b372
style(views): fix permission selection container heights
sayghteight Feb 23, 2026
369f5a9
refactor(roles): simplify JS logic and fix drag-and-drop state
sayghteight Feb 23, 2026
3d75e2a
fix(roles): improve permission selection UI and fix drag-drop behavior
sayghteight Feb 23, 2026
b880240
Merge pull request #44 from WoW-CMS/43-fix-scroll-and-permission-clea…
sayghteight Feb 23, 2026
a96c72c
feat: Add backup and logging management features
sayghteight Mar 13, 2026
ef0f962
Merge pull request #45 from WoW-CMS/43-fix-scroll-and-permission-clea…
sayghteight Mar 13, 2026
def9d3b
fix(nav): update navigation links to use route helpers and improve ac…
sayghteight Mar 13, 2026
fea0851
fix(migrations): remove unused index on country from analytics_sessio…
sayghteight Mar 14, 2026
2febab6
feat: Implement Menu Manager and Module Configuration UI
sayghteight Mar 14, 2026
01fe99f
refactor: Simplify module loading and enhance module management funct…
sayghteight Mar 15, 2026
996cbfd
Merge pull request #46 from WoW-CMS/better-module-system
sayghteight Mar 15, 2026
5a4317c
refactor: Remove deprecated Forum, Thread, and Post models; update se…
sayghteight Mar 23, 2026
22340f2
test: Add feature tests for AnalyticsService, ModuleLoader, ModuleReg…
sayghteight Mar 23, 2026
a390d05
fix(security): remove debug route, add auth/throttle middleware, sani…
sayghteight Apr 5, 2026
25c4c92
refactor(modules): normalize Setting model namespace to Modules\Admin…
sayghteight Apr 5, 2026
8d006c2
Implement forum thread display and creation features
sayghteight Apr 20, 2026
e152acd
feat: Add Realm Management and Character Armory views
sayghteight Apr 21, 2026
92f41e3
fix(cache): improve settings caching logic and handle empty fallbacks
sayghteight Apr 21, 2026
de7b2b4
feat(users): add user detail view with donation transactions and upda…
sayghteight Apr 22, 2026
f4d8161
feat: Update installation success page and routing logic
sayghteight Apr 30, 2026
00ddf2d
fix(install): enhance installation process with improved lock file ha…
sayghteight Apr 30, 2026
8f25594
feat: add multilingual support for news articles
sayghteight May 2, 2026
148032f
feat(news): update excerpt handling for multilingual support
sayghteight May 2, 2026
7890029
feat(news): remove excerpt section for single language mode
sayghteight May 2, 2026
6d86df6
feat: upgrade wowcrypto/wowcrypto to 1.3.0 and update AccountLibrary …
sayghteight May 5, 2026
ee9f15c
feat: add SOAP server info test functionality for realm management
sayghteight May 10, 2026
71fe9a5
Merge pull request #47 from WoW-CMS/feat/wowcrypto-update
sayghteight May 10, 2026
69e0196
feat(api): add NexusCMS API configuration and error handling in ApiSe…
sayghteight May 10, 2026
7d40bd4
Merge branch 'feat/0.1.6' of https://github.com/WoW-CMS/NexusCMS into…
sayghteight May 10, 2026
20415e2
feat(admin): handle update server connection issues in dashboard view
sayghteight May 10, 2026
66790da
refactor(store): remove redundant realm selector section from store view
sayghteight May 10, 2026
66052ae
feat(store): implement store products management with JSON CRUD system
sayghteight May 16, 2026
9d601d4
Refactor form fields and enhance UI components
sayghteight May 17, 2026
bb83633
feat(admin): add advanced settings for database seeders and cache man…
sayghteight May 17, 2026
17f0f72
feat(provider): enhance view and translation loading for case sensiti…
sayghteight May 17, 2026
c312bae
feat: Implement built-in updater for NexusCMS
sayghteight May 23, 2026
c04dea0
feat: Add CSRF token meta tag and enhance GitHub remote handling in U…
sayghteight May 23, 2026
089b070
feat: Enhance CSRF token handling and improve GitHub remote managemen…
sayghteight May 23, 2026
6996e07
feat: Refactor update handling and settings for improved clarity and …
sayghteight May 25, 2026
fa6ef46
feat: Update application version to 0.1.6-alpha.3
sayghteight May 25, 2026
59cb7f1
feat: Enhance update page layout and improve preflight checks for upd…
sayghteight May 26, 2026
dea064e
feat: Implement role-based access control in RoleController and Updat…
sayghteight May 29, 2026
bfd51eb
feat: Implement comment deletion authorization and add security heade…
sayghteight May 29, 2026
1e041e7
Update app version to 0.1.6-alpha.4 and add SystemInfoService for sys…
sayghteight May 30, 2026
15496fa
feat: Update application version to 0.1.6-alpha.5
sayghteight May 30, 2026
fcbbf4b
feat(admin): add full-featured menu management system
sayghteight Jun 12, 2026
95d5578
fix(donate): replace dp_total references with dp_base
sayghteight Jun 14, 2026
43e7c19
feat(donate): add dynamic store products and admin transaction filters
sayghteight Jun 14, 2026
7a5178d
feat: implement Braintree donation checkout, user comment system, sit…
sayghteight Jul 5, 2026
0783e27
chore(Armory): remove admin crud and menu config
sayghteight Jul 6, 2026
815f90a
Update composer.lock
sayghteight Jul 8, 2026
37e8a1a
Update nixpacks
sayghteight Jul 8, 2026
c63b3f1
Update nixpacks
sayghteight Jul 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
76 changes: 76 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
APP_NAME="NexusCMS"
APP_ENV=local
APP_KEY=
APP_DEBUG=true
APP_URL="https://nexuscms.test"

APP_VERSION="0.1.6-alpha.5"
APP_CODENAME="Anvil"

APP_LOCALE="en"
APP_FALLBACK_LOCALE=en
APP_FAKER_LOCALE=en_US

APP_MAINTENANCE_DRIVER=file
# APP_MAINTENANCE_STORE=database

PHP_CLI_SERVER_WORKERS=4

BCRYPT_ROUNDS=12

LOG_CHANNEL=stack
LOG_STACK=single
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug

DB_CONNECTION="mysql"
DB_HOST="127.0.0.1"
DB_PORT="3306"
DB_DATABASE="test"
DB_USERNAME="root"
DB_PASSWORD="root"

SESSION_DRIVER=database
SESSION_LIFETIME=120
SESSION_ENCRYPT=false
SESSION_PATH=/
SESSION_DOMAIN=null

BROADCAST_CONNECTION=log
FILESYSTEM_DISK=local
QUEUE_CONNECTION=database
MEMCACHED_HOST=127.0.0.1

CACHE_DRIVER=redis
REDIS_CLIENT=phpredis
REDIS_HOST=127.0.0.1
REDIS_PORT=6379

MAIL_MAILER=smtp
MAIL_HOST=localhost
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="noreply@nexuscms.test"
MAIL_FROM_NAME="${APP_NAME}"
MAIL_SCHEME=null

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false

## Donate Gateways
BRAINTREE_ENVIRONMENT=sandbox
BRAINTREE_MERCHANT_ID=
BRAINTREE_PUBLIC_KEY=
BRAINTREE_PRIVATE_KEY=

VITE_APP_NAME="${APP_NAME}"

## NexusCMS API
NEXUS_API_URL=https://api.wow-cms.com/api/github
NEXUS_API_KEY=
NEXUS_API_KEY_HEADER=X-API-Key
674 changes: 674 additions & 0 deletions LICENSE

Large diffs are not rendered by default.

61 changes: 52 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,64 @@
# NexusCMS

<p align="center">
<a href="https://github.com/yourusername/NexusCMS/actions"><img src="https://github.com/yourusername/NexusCMS/workflows/tests/badge.svg" alt="Build Status"></a>
<a href="https://packagist.org/packages/yourusername/nexuscms"><img src="https://img.shields.io/packagist/v/yourusername/nexuscms" alt="Latest Stable Version"></a>
<a href="https://packagist.org/packages/yourusername/nexuscms"><img src="https://img.shields.io/packagist/l/yourusername/nexuscms" alt="License"></a>
</p>
[![GPL-3.0 License](https://img.shields.io/badge/License-GPL--3.0-green.svg)](https://choosealicense.com/licenses/gpl-3.0/)
![GitHub repo size](https://img.shields.io/github/repo-size/WOW-CMS/NexusCMS)
![GitHub commits since latest release](https://img.shields.io/github/commits-since/WOW-CMS/NexusCMS/latest/feat/0.1.6)
![Release](https://img.shields.io/github/v/release/WOW-CMS/NexusCMS)

## About NexusCMS

NexusCMS is a modern Content Management System built with Laravel. Currently under active development, this project aims to provide a flexible and powerful solution for managing digital content.
Born from our earlier BlizzCMS, a PHP/CodeIgniter 3 project, NexusCMS is a Laravel-based platform designed for teams seeking reliability, flexibility, and a developer-friendly workflow. Over time, we’ve gathered years of community feedback, feature requests, and performance improvements, shaping a single, cohesive codebase that grows with your project, rather than getting in the way.

## Project Status
Our focus has always been on making development easier and more approachable. While we are a team with technical training and experience, we are not “gurus”—we build tools that make sense for real people working on real projects. This philosophy has guided every decision in NexusCMS, from its architecture to its user interface.

🚧 **Currently Under Development** 🚧
In addition to supporting modern features, we’ve ensured compatibility with all World of Warcraft expansions, including Classic, Retail, and Wrath of the Lich King, as well as the legacy versions of the game. Whether you’re managing a private server, building a community project, or experimenting with new ideas, NexusCMS provides a flexible, stable foundation to help you succeed.

With a strong focus on community-driven development, we continue to refine and expand NexusCMS based on the feedback and needs of the people who use it, making it not just a tool, but a platform built with the community, for the community.

## Key Highlights

- **Years of Expertise** – Over a decade of focused development on CMS architecture and implementation.
- **Laravel 12.x Core** – Modern PHP foundation with strict PSR standards and battle-tested packages.
- **Scalable Infrastructure** – Multi-database, Redis cache, queue workers, and horizontal scaling support.

## Project Maturity

NexusCMS is currently in **public alpha** and is **not recommended for production use**. While core functionality is stable and has been tested in several mid-scale environments, the software is still under active development. We are expanding modules, refining documentation, and welcoming community contributions.

This project is in its early stages of development. Features and documentation will be updated regularly.

## Installation

1. Clone the repository:
```bash
git clone https://github.com/yourusername/NexusCMS.git
cd NexusCMS
```

2. Install dependencies:
```bash
composer install
npm install && npm run build
```

3. Configure your environment:
```bash
cp .env.example .env
php artisan key:generate
```

4. Run migrations (configure your database in `.env` first):
```bash
php artisan migrate
```

5. Start the local server:
```bash
php artisan serve
```

Visit [http://localhost:8000](http://localhost:8000) and log in with the default admin credentials provided in the `.env` file.

## Documentation

[Documentation]()

Loading