Planora is a full-stack event management and booking web application built with Next.js (App Router) and TypeScript.
It incorporates essential real-world features such as user authentication, protected routes, dynamic pages, booking forms, and a comprehensive data management dashboard.
This project serves as a comprehensive example showcasing proficiency in modern Next.js and TypeScript best practices.
- User login and signup with NextAuth.js using Google and Email providers.
- UI adapts dynamically based on authentication status.
- Protected routes for dashboard and user-specific pages.
- Responsive, visually appealing landing page with multiple sections (Hero, Features, Testimonials, FAQ, CTA).
- Additional public routes: Events listing, Blog, About, Contact.
- Authenticated users can create, edit, delete, and view event posts.
- Dynamic routing for detailed event pages.
- Event booking form that stores booking data in the user's dashboard.
- Simulated booking process (no payment integration).
- Styled with Tailwind CSS and Lucide Icons for accessible, consistent UI.
- Optimized images using
next/image
. - Custom fonts loaded and optimized with
next/font
.
- Server-side data fetching using
fetch
. - Client-side state management and live data updates with React Query.
- Next.js (App Router)
- TypeScript
- NextAuth.js
- Tailwind CSS
- React Query
- Lucide Icons
- Vercel (Deployment)
- Node.js v20
- Package manager: npm
Clone the repository:
git clone https://github.com/ismail-dev-code/planora.git
cd planora