Add atomcms-next README (how to run + try)
This commit is contained in:
1 parent
08a9882be8
commit
73f0f54624
1 file changed
+64
@@ -0,0 +1,64 @@
|
||||
# atomcms-next
|
||||
|
||||
AtomCMS (Laravel) converted to **Next.js 16** (App Router) + **Prisma 7** against the
|
||||
same Arcturus-emulator MySQL/MariaDB database. Auth via NextAuth (argon2id/bcrypt +
|
||||
md5→argon2id upgrade), RCON to the emulator, full public site + admin panel.
|
||||
|
||||
## Try it now (no database)
|
||||
|
||||
The dev/preview server is already running — open:
|
||||
|
||||
> **http://localhost:3000**
|
||||
|
||||
Public pages render with fallback defaults (empty data). Login / register / admin
|
||||
need a database (below).
|
||||
|
||||
## Try it for real (your AtomCMS database)
|
||||
|
||||
Point it at your live (or a copy of your) AtomCMS database to log in with real
|
||||
accounts and see real data:
|
||||
|
||||
1. Edit `atomcms-next/.env`:
|
||||
```dotenv
|
||||
DATABASE_URL=mysql://USER:PASSWORD@HOST:3306/DBNAME
|
||||
DATABASE_CONNECT_TIMEOUT_MS=10000
|
||||
AUTH_SECRET=any-long-random-string-at-least-32-chars
|
||||
HOTEL_NAME=YourHotel
|
||||
# Optional emulator link (for RCON: give credits, ban, motto, disconnect):
|
||||
RCON_HOST=127.0.0.1
|
||||
RCON_PORT=3001
|
||||
```
|
||||
2. Restart the server (`pnpm -C atomcms-next start`, or `pnpm dev`).
|
||||
3. Log in at `/login` with any existing account. Staff (rank ≥ `min_staff_rank`,
|
||||
default 7) get the **/admin** panel. New users can `/register`.
|
||||
|
||||
It reads the schema you already have — no migrations are run against the emulator
|
||||
tables (introspect/conform only). `prisma generate` is already done; if you add
|
||||
tables, `pnpm -C atomcms-next prisma:generate`.
|
||||
|
||||
## Run it yourself
|
||||
|
||||
```bash
|
||||
cd atomcms-next
|
||||
pnpm install # already done
|
||||
pnpm dev # dev server (hot reload) on :3000
|
||||
# or:
|
||||
pnpm build && pnpm start # production
|
||||
pnpm typecheck # tsc --noEmit
|
||||
pnpm test # vitest (unit tests)
|
||||
```
|
||||
|
||||
## What's built
|
||||
|
||||
- **Public:** home, news (+comments/reactions), shop, marketplace, community,
|
||||
rankings, staff, photos, guilds, rares, leaderboard, help (+tickets), profile
|
||||
`/u/<name>` (badges/photos/guestbook), client launcher `/client` (SSO ticket),
|
||||
login / register / logout, settings, voucher redeem.
|
||||
- **Admin (`/admin`, staff-gated):** users (give currency/motto/rank/alert/kick via
|
||||
RCON), rooms, articles, catalog, vouchers, badges, radio, achievements,
|
||||
rare-values, photos, bans, applications, word-filter, IP, logs, teams,
|
||||
housekeeping, permissions, emulator config, email templates, calendar,
|
||||
subscriptions, CMS settings.
|
||||
- **Core:** Prisma data layer (190 models), NextAuth auth core (byte-compatible
|
||||
argon2id/bcrypt/md5 + SSO ticket + Laravel encrypter + TOTP), RCON client +
|
||||
currency service, atom visual theme (self-hosted Nunito).
|
||||
Reference in new issue
Block a user