🎉 Evento
Evento is a content-focused application built with Next.js that showcases the core capabilities of the framework including dynamic routing, server-side rendering, static generation, API integration, animations, and database connectivity. It is designed to demonstrate best practices for building a performant and scalable full-stack app.
🚀 Features
- ✅ Built with Next.js App Router
- 🎨 Styled using Tailwind CSS, extended with custom theme colours
- 🧠 Intelligent class merging with
clsx
andtailwind-merge
- 📍 Active route tracking using
usePathname
hook - ⚡ Smooth header animations with Framer Motion
- 💽 Local development with SQLite and Prisma ORM
- 🐘 Production deployment using PostgreSQL on Vercel
- 💡 Suspense and loading skeletons for both individual event and event list pages
- 🔄
notFound()
anderror.tsx
for graceful error handling - 🔁 Server-side pagination for event listing
- 🛡️ Type-safe validation with Zod
- 🧭 Redirect handling via custom
middleware.ts
- 🧱 Static generation with
generateStaticParams
,revalidate
, anddynamicParams
- 📦 Cached network requests using
unstable_cache
- 🔗 Prefetching enabled for detail pages using
Link
component - 🖼️ Auto-generated Open Graph images for social sharing
- 📱 Fully responsive design for mobile, tablet, and desktop
- ♿ Accessible components with semantic HTML and best practices
🛠️ Tech Stack
- Framework: Next.js 14+
- Database (Dev): SQLite
- Database (Prod): PostgreSQL (hosted via Vercel)
- ORM: Prisma
- Animations: Framer Motion
- Validation: Zod
- Styling: Tailwind CSS
- Class Utils:
clsx
,tailwind-merge
- Deployment: Vercel