Building a personal site with Next.js
Sep 11, 20261 min read2 views
Why own a personal site
Beyond social platforms, a personal site is the only space that fully belongs to you: domain, content and design are all yours. It extends your resume and accumulates your work over time.
Choosing the stack
- Next.js (App Router): pages and backend APIs in one process
- Tailwind CSS: build a design system quickly, dark mode included
- Prisma + SQLite: zero-config locally, a single file to back up in production
// The simplest server-side data read
const posts = await prisma.post.findMany({
where: { published: true },
orderBy: { publishedAt: 'desc' },
});
Recommended structure
| Folder | Responsibility |
|---|---|
app/(site) | Public pages |
app/admin | Admin panel |
app/api | Backend endpoints |
lib | Data access, auth, utilities |
Going live
PM2 plus an nginx reverse proxy gets you deployed in minutes.
Ship first, iterate later. A rough but real site beats a perfect design that never leaves the draft folder.