A modern, community-driven Retro CMS built with Laravel 12.x
Live Demos β’ Installation β’ Documentation β’ Contributing
Note
Disclaimer: Educational Use Only
Atom CMS is provided as an educational resource for learning purposes only. The creators and contributors are not responsible for any misuse or unintended consequences arising from its use. By using Atom CMS, you agree to take full responsibility for your actions and ensure compliance with all applicable laws and regulations in your jurisdiction.
Atom CMS is a modern, community-driven CMS designed to provide a flexible and user-friendly platform for retro hotel management. Built on Laravel 12.x with a focus on extensibility and ease of use, Atom CMS features a built-in theme system that allows you to use any CSS framework or create fully customized vanilla designs.
- Laravel 12.x - Elegant PHP framework powering the backend
- Vite - Next-generation frontend tooling for blazing-fast builds
- TailwindCSS - Utility-first CSS framework for responsive design
- π¨ Built-in Theme System - Use any CSS framework or create custom themes
- π Secure Authentication - Laravel-powered authentication and authorization
- π Multi-language Support - Built-in localization for global audiences
- π Integrated Housekeeping - Comprehensive admin panel
- π Rcon System - Real-time server communication
- π± Responsive Design - Mobile-first approach with TailwindCSS
- π Modern Stack - Latest PHP 8.2+ features
Experience Atom CMS with our official themes:
- Dusk Theme: https://dusk.atomcms.dev
- Atom Theme: https://atom.atomcms.dev
| Requirement | Version |
|---|---|
| PHP | 8.2 or higher |
| MySQL | 8.x or higher |
| MariaDB | 10.x or higher |
| Composer | v2 |
| Node.js | LTS |
| Database | Arcturus Morningstar |
Ensure the following extensions are enabled in your php.ini:
extension=curl
extension=fileinfo
extension=gd
extension=mbstring
extension=openssl
extension=pdo_mysql
extension=sockets
extension=intlNote: Remove the semicolon (;) prefix if the extension is commented out.
# Clone the repository
git clone https://github.com/ObjectRetros/atomcms.git
cd atomcms
# Configure environment
copy .env.example .env
# Edit .env and update your database credentials
# Install dependencies
composer install
npm install
# Set up database and generate key
php artisan migrate --seed
php artisan key:generate
# Build assets
npm run build:atom
# For development: npm run dev:atomPoint your IIS site to the public folder inside the atomcms directory.
Grant "Full control" to both IUSR and IIS_IUSRS for the atomcms folder.
Visual guide: Permission setup tutorial
If you encounter cURL 60 errors:
- Download the latest cacert.pem
- Place it in
C:/ - Edit
php.iniand update:curl.cainfo = "C:/cacert-2025-09-09.pem"
- Restart your web server
New to retro hotel setup? Follow our comprehensive three-part series:
# Clone the repository
git clone https://github.com/ObjectRetros/atomcms.git
cd atomcms
# Configure environment
cp .env.example .env
# Edit .env and update your database credentials
# Install dependencies
composer install
npm install
# Set up database and generate key
php artisan migrate --seed
php artisan key:generate
# Build assets
npm run build:atom
# For development: npm run dev:atomsudo chown -R $USER:www-data storage
sudo chown -R $USER:www-data bootstrap/cache
chmod -R 775 storage
chmod -R 775 bootstrap/cacheFor NGINX setup, refer to Laravel's deployment documentation.
Need help setting up your retro hotel on Linux? Follow our comprehensive Ubuntu tutorial:
- Complete Ubuntu Setup Guide - Step-by-step instructions for Ubuntu
Update these variables in your .env file for production:
APP_ENV=production
APP_DEBUG=false
FORCE_HTTPS=true # If using Cloudflare's "Always use HTTPS"Protect your site from bots:
- Visit Cloudflare Turnstile
- Sign in and select your site
- Copy the site and secret keys to your
.envfile
Atom CMS uses JavaScript that conflicts with Cloudflare's Rocket Loader. To disable:
- Go to your Cloudflare dashboard
- Navigate to Speed β Optimization
- Find Rocket Loaderβ’ and disable it
If migrating from Cosmic CMS or similar platforms:
Set RENAME_COLLIDING_TABLES=true in your .env file. Atom CMS will automatically handle table conflicts.
Note: We recommend proper manual cleanup, but this feature helps avoid common migration issues.
Atom CMS includes a growing test suite using Pest.
# Using Pest
vendor/bin/pest
# Using Artisan
php artisan testFor detailed documentation, addons, tips, and tricks, visit our official wiki.
New to Laravel? These free resources will help:
- Official bootcamp & course - Official Laravel bootcamp & course
- Laravel 11 from Scratch - Official Laracasts course
We welcome contributions! To maintain code quality and streamline reviews, please read our contribution guidelines before submitting a pull request.
Atom CMS is made possible by our amazing community:
- Kasja - Design direction, Dusk theme, ideas & graphics
- INicollas - Dark mode, Turbolinks, article reactions, user sessions, PT-BR translations, Orion Housekeeping
- Kani - Rcon system, FindRetros API, Atom CMS v2 creator/maintainer
- DuckieTM - Badge drawer, bugfixes, housekeeping features
- EntenKoeniq - Auto language registration, color scheme selection, various page fixes
- Dominic - Performance improvements, user sessions
- Beny - FindRetros API fixes, Cloudflare fixes
- Live - French translations, bugfixes
- MisterDeen - Custom Discord widget
- DamienJolly, Danbo, Diddy/Josh - Various bugfixes and improvements
- Sonay - Material theme inspiration
- Raizer - Circinus
- Oliver - Finnish
- Damue & EntenKoeniq - German
- Talion - Turkish
- CentralCee, Rille & Tuborgs - Swedish
- Yannick - Dutch
- Gedomi - Spanish
- Lorenzune - Italian
- Twana - Norwegian
- Plow - French
Made with β€οΈ by the Atom CMS Community