codingstairs
NotesEDULifeContact
⌕Search⌘K
koen

Navigation

  • Intro
  • Blog
  • Life

Get in touch

Send without signing in. Add your email if you'd like a reply.

  • Leave a message anonymously →
  • ✉ warragon112@gmail.com
  • KakaoTalk Open Chat ↗

© 2026 codingstairs

  • Notes
  • EDU
  • Search
  • Life
  • Contact
  • Legal
  • RSS
  • GitHub
EDU›Central admin platform — many domains behind one hub

Central admin platform — many domains behind one hub

An 8-step course for building an operator hub with Next.js 16 and multiple PostgreSQL pools. AdminResourceTable, audit log, OAuth, backups.

Start with Step 1 →
Difficulty
intermediate
Lessons
8

Central admin platform — many domains behind one hub

Teams running several domains (blog, marketplace, app, external SaaS) often build a separate admin UI per domain. Quick in the short term, but within months operators re-learn the UI per page and developers re-copy the same boilerplate. This course walks through an eight-step hub where one Next.js app directly connects to multiple PostgreSQL pools (domain DBs) and handles CRUD · audit logs · backups · OAuth.

Who it's for

  • Developers who want to unify side-projects into one admin hub
  • People using React 19 + Next.js App Router at realistic scale
  • Anyone looking to pick up audit logs · OAuth · backup automation in one place

What you can do afterwards

  • Orchestrate several PostgreSQL pools from one app
  • Implement CRUD pages in 30–70 lines each with a shared AdminResourceTable
  • Apply the logAdminAction fire-and-forget audit pattern
  • Run Kakao / Naver OAuth with an email allow-list
  • Automate pg_dump backups with cron and 7-day rolling retention
  • Run one-second smoke specs over dozens of pages with Playwright manifests

Flow

[1] Why ──▶ [2] Setup ──▶ [3] Multi-pool ──▶ [4] Shared table
                                                  │
                                                  ▼
[8] E2E manifest ◀── [7] Backup ◀── [6] Audit log ◀── [5] OAuth + allow-list

The first half (1–4) lays the foundation — why pool admin UIs and how to wire them up. The second half (5–8) makes it operable — permissions, traceability, durability.

Steps

  1. Why a central hub — the cost of N admin UIs, benefits of unifying
  2. Project setup — Next 16 + TypeScript strict + shadcn/ui + Tailwind 4
  3. Multiple PostgreSQL pools — env conventions · singleton pools · query helpers
  4. AdminResourceTable SSOT — shared table component · iconColor map · URL-first pagination
  5. OAuth providers + allow-list — Kakao · Naver · JWT cookie sessions
  6. Audit log (logAdminAction) — audit_logs table · enforced reason · per-domain viewer
  7. Backup automation — pg_dump + node-cron + 30-table allow-list
  8. E2E manifest + deploy — auto-generated Playwright manifest + Docker standalone

Prerequisites — getting-started + Node 20 / PostgreSQL 15 / Docker. nextjs-fullstack for App Router basics.

Lessons

  1. 1

    Why a central admin hub

    →
  2. 2

    Project setup

    →
  3. 3

    Connecting multiple PostgreSQL pools

    →
  4. 4

    AdminResourceTable component

    →
  5. 5

    OAuth 2 providers + allow-list

    →
  6. 6

    Audit log — logAdminAction

    →
  7. 7

    Backup automation — pg_dump + cron

    →
  8. 8

    E2E manifest + deploy

    →

Other courses

All courses →
  • Getting Started with a Dev Environment
  • From HTML/CSS/JS to React, Next.js, Tailwind
  • Build Your First Fullstack App with Next.js 16
  • Backend with Spring Boot 4
  • Python · FastAPI · Data Pipelines
  • AI-native developer tooling — Claude Code · MCP · design tools
  • Docker · Caddy · Cloud — 10 deploy options
  • Local LLM · pgvector · building a RAG chatbot
  • Tauri 2 — desktop · mobile in one codebase
  • Testing strategy and quality gates
  • Web security foundations — JWT · OAuth · OWASP
  • PostgreSQL in depth + Redis · Kafka
  • Building public-data crawlers
  • Monorepo · SSOT · layer separation thinking