Admin Console
Portfolio content, moderation, and publishing control.
Backend-enforced login lockouts after repeated failures.
Admin routes are noindex and blocked from public host access.
TinyMCE loads from local assets only inside editor pages.
Secure Login
Sign in to continue
Use the seeded admin account after running the Prisma migration.
First setup: start PostgreSQL, run migrations, then run npm run seed:admin.