From Zero to Live in 48 Hours
Building a web application used to require weeks of setup: configuring servers, setting up databases, handling deployment pipelines. In 2026, tools like Next.js and Vercel have simplified this to the point where you can build and deploy a functional web app in a single weekend. This guide walks you through building a personal bookmarking app from scratch and putting it live on the internet.
What We Are Building
A personal bookmarking app where you can save links with tags, search through your collection, and access it from any device. The tech stack: Next.js 15, Tailwind CSS, Prisma ORM, SQLite database, and Vercel for deployment.
Mesh, WiFi 6E & gaming routers
router&tag=wikiwax-20" class="ww-deal-btn" target="_blank" rel="nofollow sponsored">View Deal →Saturday Morning: Project Setup
Install Node.js 20+ and run npx create-next-app@latest bookmarks. Select TypeScript, Tailwind CSS, and the App Router. This generates a complete project structure. Run npm run dev to see your app at localhost:3000. Install Prisma with npm install prisma @prisma/client and initialize with npx prisma init. Define your Bookmark model with fields for id, url, title, description, tags, and createdAt. Run npx prisma db push to create the database.
Saturday Afternoon: Server Actions and CRUD
Next.js 15 Server Actions let you write server-side logic directly in components. Create actions for adding bookmarks, fetching with search filtering, and deletion. Server Actions eliminate the traditional API layer for simple CRUD: your form submits directly to a server function, it accesses the database, and the component re-renders with fresh data. No fetch calls, no API routes, no serialization boilerplate.
Saturday Evening: UI and Styling
Build the interface with React Server Components and Tailwind CSS. A grid of saved bookmarks showing title, URL, tags as colored pills, and delete button. A sticky form for adding new bookmarks. A search input with debounced filtering. Add loading states with Suspense, animations with Tailwind transitions, dark mode toggle, and responsive mobile design.
Sunday: Auth, Polish, and Deploy
Add authentication with Auth.js supporting GitHub or Google OAuth. Push to GitHub, connect to Vercel, and deploy. Your app is live with HTTPS on a global CDN in under 5 minutes. Add a custom domain, switch SQLite to Vercel Postgres for production, and configure environment variables. In one weekend you have touched React, TypeScript, server rendering, databases, auth, responsive design, and deployment.
Disclosure: WikiWax may earn a commission from qualifying purchases through affiliate links on this page. This does not affect our editorial integrity or the price you pay.