Skip to content

Mysterioucz/Se-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

867 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

✈️ Fly-with-Sigma

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.

📖 Overview

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.

🚀 Features

  • 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

🛠️ Tech Stack

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

📂 Project Structure

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

⚡ Getting Started

Prerequisites

  • Node.js (18+)
  • npm or pnpm
  • Neon PostgreSQL connection string

Setup

  1. Clone the repository:

    git clone https://github.com/Mysterioucz/Se-Project.git
    cd Se-Project/frontend
  2. Install dependencies:

    pnpm install
  3. 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"
  4. Setup database with Prisma (This step is automatically done with pnpm install):

    npx prisma generate
    npx prisma migrate dev
  5. Run the development server:

    pnpm run dev
  6. Open http://localhost:3000 in your browser.


🤝 Collaboration

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

📚 Learning Outcomes

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

📬 Collaborator

👤 Chatrin Yoonchalard
Role: Full-Stack Developer, CI/CD Workflow

👤 Chanatda Konchom
Role: Front-end, UX-UI Design

👤 Nantaporn Phuaphanbun
Role: Back-end Developer, UX-UI Design

👤 Punyapat Kijvorachai
Role: Back-end Developer

About

This Repo is part of 2110423 (2025/1) SOFTWARE ENGINEERING

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors