尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
A news budget management tool for tracking editorial stories and videos across daily, enterprise, edition, and shelved views with drag-and-drop scheduling.
• Next.js 16 (App Router, Turbopack) + React 19
• Prisma 5 + PostgreSQL (tested on Neon)
• next-auth v4 — credentials + Azure AD SSO auth with role support
• SWR for client-side data fetching
• @dnd-kit for drag-and-drop
• shadcn/ui + Tailwind 4
Fill in .env with your PostgreSQL connection string and a NextAuth secret:
The seed creates 9 demo user accounts. All use the password newsbudget2026:檢視完整 README ↗A news budget management tool for tracking editorial stories and videos across daily, enterprise, edition, and shelved views with drag-and-drop scheduling.
npm install
cp .env.example .env
Fill in .env with your PostgreSQL connection string and a NextAuth secret:
DATABASE_URL="postgresql://..."
NEXTAUTH_URL="http://localhost:3000"
NEXTAUTH_SECRET="$(openssl rand -hex 32)"
npx prisma migrate dev
npx prisma db seed
The seed creates 9 demo user accounts. All use the password newsbudget2026:
| Role | |
|---|---|
| [email protected] | Admin |
| [email protected] | Admin |
| [email protected] | Editor |
| [email protected] | Editor |
| [email protected] | Editor |
| [email protected] | Editor |
| [email protected] | Editor |
| [email protected] | Editor |
| [email protected] | Editor |
These are demo credentials. Change them or replace the seed before any real deployment.
npm run dev
Open http://localhost:3000 and log in with any seed account.
npm run dev # Dev server at http://localhost:3000
npm run build # Production build
npm run lint # ESLint
npx prisma studio # Database browser UI
npx prisma db seed # Re-seed (clears all data)
npx prisma migrate dev # Apply schema changes
The app supports Microsoft Entra ID (Azure AD) single sign-on alongside email/password login. When configured, a "Sign in with Microsoft" button appears on the login page.
SSO users are auto-provisioned as PRODUCER if they belong to a configured Azure AD security group. Admins can promote roles via /admin/users. Pre-provisioned users (created by an admin with a matching email) are matched automatically on first SSO sign-in.
To enable, set four additional environment variables:
AZURE_AD_CLIENT_ID=...
AZURE_AD_CLIENT_SECRET=...
AZURE_AD_TENANT_ID=...
AZURE_AD_ALLOWED_GROUP_ID=...
See docs/azure-sso-setup.md for full Azure Portal setup instructions.
Set the environment variables (DATABASE_URL, NEXTAUTH_URL, NEXTAUTH_SECRET, plus Azure AD vars if using SSO) in your Vercel project settings, then deploy.
Vercel automatically runs the vercel-build script (scripts/vercel-build-db-sync.js) instead of the normal build script. On preview deployments (VERCEL_ENV=preview) it runs prisma db push --accept-data-loss before next build, so the preview database's schema stays in sync with prisma/schema.prisma automatically. It intentionally does not do this for production builds — production schema changes are applied deliberately (see below).
See docs/aws-vps-deployment.md for a full guide covering EC2 setup, Nginx, SSL, PM2, and deploy scripts.