A full-stack Flight Booking System built with Next.js. This project was developed as part of a 2110423 (2025/1) Software Engineering Course, focusing on building scalable, secure, and user-friendly web applications.
Fly-with-Sigma is a flight booking platform that allows users to:
- Search and book flights easily
- Manage accounts securely with authentication & authorization
- Access real-time flight information from a modern responsive interface
The project is built in Next.js (with API routes for backend logic), styled with TailwindCSS, connected to a Neon serverless PostgreSQL database via Prisma ORM, and deploy with Vercel.
-
Authentication & Authorization
- NextAuth.js with JWT & bcrypt for secure login and role-based access
-
Flight Search & Booking
- Dynamic forms and filtering
- Intuitive booking flow with confirmation page
-
User Profiles
- Manage bookings and personal details
-
Scalable Database Layer
- Neon PostgreSQL + Prisma ORM
| Layer | Technology |
|---|---|
| Framework | Next.js (Frontend + Backend API routes) |
| Authentication | NextAuth.js with JWT & bcrypt |
| Database | Neon (serverless PostgreSQL) |
| ORM | Prisma |
| Styling | TailwindCSS |
| Deployment | Vercel |
frontend/
├── public/ # Static assets
├── src/
│ ├── app/ # Next.js App Router (pages, layouts, routing)
│ ├── components/ # Reusable UI components
│ ├── lib/ # Utilities & helpers
│ ├── styles/ # Global Tailwind styles
│ └── prisma/ # Prisma schema & client
├── .env # Environment variables
├── package.json
└── README.md
- Node.js (18+)
- npm or pnpm
- Neon PostgreSQL connection string
-
Clone the repository:
git clone https://github.com/Mysterioucz/Se-Project.git cd Se-Project/frontend -
Install dependencies:
pnpm install
-
Configure environment variables (
.env):DATABASE_URL="your_neon_connection_string" NEXTAUTH_SECRET="your_secret" NEXTAUTH_URL="http://localhost:3000" NEXT_PUBLIC_API_URL="http://localhost:3000"
-
Setup database with Prisma (This step is automatically done with
pnpm install):npx prisma generate npx prisma migrate dev
-
Run the development server:
pnpm run dev
-
Open http://localhost:3000 in your browser.
This project was built by a team of 9 using GitHub workflows, Agile methodology, and code reviews.
- Collaborative sprint planning & task allocation
- Merge requests with peer reviews
- Integration of multiple features across backend and frontend
Through this project, we gained experience in:
- Building a full-stack application with Next.js
- Implementing secure authentication with JWT & NextAuth
- Designing and integrating a relational database using Prisma ORM
- Working with a serverless database (Neon PostgreSQL) for scalability
- Collaborating effectively in a team of 9 engineers with GitHub workflows
- Writing clean, modular, and maintainable code
👤 Chatrin Yoonchalard
Role: Full-Stack Developer, CI/CD Workflow
- Email: chatrinyoonchalard@gmail.com
- GitHub: Mysterioucz
- LinkedIn: Chatrin Yoonchalard
👤 Chanatda Konchom
Role: Front-end, UX-UI Design
- Email: chanatdakc@gmail.com
- Github: 098ff
- LinkedIn: Chanatda Konchom
👤 Nantaporn Phuaphanbun
Role: Back-end Developer, UX-UI Design
- Email: feihao28@gmail.com
- GitHub: uunws
- LinkedIn: Nantaporn Phuaphanbun
👤 Punyapat Kijvorachai
Role: Back-end Developer
- Email: mewpunyapat@gmail.com
- GitHub: mewpunyapat
- LinkedIn: Punyapat Kijvorachai