尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗A full-stack personal finance app built with the Next.js App Router. Record income and expenses by category, then edit, duplicate or delete them — all through Server Actions, with every query scoped to the signed-in user.
Live demo: https://nextjs-crud-gold-gamma.vercel.app (sign up with any email — it's a demo database)
/transaction/* and signed-in users away from the auth pagesnext-themesServer Actions are public HTTP endpoints — anyone can POST to them, not just the UI. So every action re-checks on the server:
where: { id, userId } on update/delete, so another user's ID simply matches nothing),| Area | Tools |
|---|---|
| Framework | Next.js 15 (App Router, Server Actions, Turbopack), React 19, TypeScript |
| Auth | Auth.js v5 (NextAuth) |
| Database | PostgreSQL (Neon) + Prisma ORM |
| Forms & validation | React Hook Form + Zod |
| UI | Tailwind CSS 4, shadcn/ui (Radix), lucide-react, sonner |
Requires Node.js 20+, pnpm and a PostgreSQL database (e.g. a free Neon project).
pnpm install # also runs `prisma generate`
cp .env.example .env # fill in DATABASE_URL and AUTH_SECRET
pnpm prisma migrate deploy # create tables
pnpm db:seed # insert income/expense categories
pnpm dev # http://localhost:3000
| Variable | Description |
|---|---|
DATABASE_URL | PostgreSQL connection string |
AUTH_SECRET | Secret for signing session tokens — generate with npx auth secret |
AUTH_TRUST_HOST | Set to true when running next start outside Vercel (Vercel is detected automatically) |
NEXT_PUBLIC_APP_NAME / NEXT_PUBLIC_APP_DESCRIPTION | Optional branding (defaults to "Expense Tracker") |
src/
├── app/
│ ├── (auth)/ # /signin, /signup
│ └── (transaction)/ # /transaction, create, [id]/edit, [id]/create (duplicate)
├── components/ # auth forms, transaction list/form, layout, shadcn/ui
├── lib/
│ ├── actions/ # Server Actions (auth, transactions)
│ ├── datas/ # Server-side data fetching
│ ├── schemas/ # Zod schemas shared by client and server
│ ├── services/ # Sign-up logic
│ └── auth/ # Auth.js configuration
└── middleware.ts # Route protection
prisma/
├── schema.prisma
└── migrations/