Skip to content

flexycode/CTINFMGL_FINAL_PROJECT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💫 CTINFMGL INFORMATION MANAGEMENT

Subject & Section: CTINFMGL - COM231     

Professor: 👩 Jensen A. Santillan                    

No. of Units: 3 Units

📊 Table of Contents

A flight booking web application designed to simplify the process of booking flights with the used of modern JavaScript techstacks

🏦 Case Study: Flight Booking App

Overview The Flight Booking App is a web application designed to simplify the process of booking flights for users. The app allows users to search for flights, book tickets, manage their itineraries, and make payments seamlessly. The app also includes an admin panel for managing flights, users, and payments. The goal is to provide a user-friendly, efficient, and secure platform for flight bookings.

✨ Key Features

🚀 1. User Authentication: Users can create accounts, log in, and manage their profiles.

🚀 2. Flight Search: Users can search for flights based on destination, departure time, and other criteria.

🚀 3. Booking Management: Users can book flights, view their bookings, and cancel or modify them.

🚀 4. Payment Integration: Secure payment gateway integration for processing payments.

🚀 5. Admin Panel: Admins can manage flights, users, and payments.

💻 Techstacks

PERN STACK

  • Frontend: React.js or Next.js (JavaScript)
  • Backend: Node.js with Express.js or NestJS (Node.js framework)
  • Database: PostgreSQL (Recommended for its robustness and scalability; If we choose SQL standard; It depends on the flow and overall decicion)
  • Database: MySQL for flexible use of SQL
  • Authentication: JWT (JSON Web Tokens)
  • Payment Gateway: Stripe or PayPal ( Not required!)
  • State Management: Redux or Context API
  • Styling: CSS-in-JS (Styled-components) or Tailwind CSS
  • Deployment: Vercel (for Next.js) or Heroku or Dokploy

🕵️ Resources

https://dokploy.com/#pricing)

💻 How to Run this Application

👷 Install Dependencies

Run npm install to to install node modules

npm install

🚀 Run React-app

Direct to frontend folder after you install the node modules

cd frontend
npm start

🚍 Run Node.js

Open another terminal in the current codebase to run nodejs for VS Code or other IDE base on what you are using such as Webstorm

cd backend
node index.js

🚀 Screenshot of Project Overview

🌟 Design Overview

🌟 Search Flight

🌟 Background Video

🧊 Database Schema

SQL

See Database folder above

🧊 Data Insertion Example

sql

INSERT INTO `flights` (departure_city, arrival_city, flight_date, duration_hours, base_price, flight_status) VALUES
('New York', 'London', '2024-11-10', 7, 500.00, 'Full'),
('Los Angeles', 'Paris', '2024-11-11', 10, 900.00, 'Available');

INSERT INTO `users` (username, password_hash, role, email, phone_number) VALUES
('akosidogi', '$2b$10$yFTXogxecYrNSRLvFMb.dej4A4snSkHF72ZLItUjwrDFT16tlHCvK', 'admin', 'admin@example.com', '1234567890');

INSERT INTO `carts` (flight_id, user_id) VALUES
(1, 1);

INSERT INTO `seats` (flight_id, seat_number, class, status, seat_price) VALUES
(1, '1A', 'Economy', 'Available', 100.00),
(1, '1B', 'Economy', 'Booked', 100.00);

INSERT INTO `flight_names` (flight_id, region, name) VALUES
(1, 'Europe', 'Transatlantic Express');

🧊 Data Model

Description Coming Soon

🧊 Flow Chart

🧊 Entity Attribute Value Model

Entity Attribute Value Model will be uploaded in this section file after 💥 Myckle Vince fininish the Normalization

🧊 Normalization

Full Overview of Normalization is in the Folder of documentation

🧊 Entity Relationship Diagram

🧊 Sequence Diagram

🧊 Cloud Architecture

📜 Folder Structure  

Coming Soon

🏆 Contributing    

Contributing     

If you would like to contribute to the Flight Booking App, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix.
  3. Make your changes and commit them.
  4. Push your changes to your forked repository.
  5. Submit a pull request to the main repository.

🧠 Submitting Changes

🧠 Contributions are welcome! If you have ideas for improvements or want to add more exercises, follow these steps:

  1. Fork the repository.
  2. Create a new branch.
  3. Make your changes and commit them.
  4. Push to your fork and submit a pull request. 💕💕💕💕

👋 Contributors

Special thanks to all my groupmates:

  • 😎 Jay Arre Talosig - Machine Learning Engineer | Blockchain Developer | Bioinformatics Scientist    

  • 🧭 Custer Valencerina - Machine Learning Engineer | Full Stack Engineer | Front-End Developer

  • 💥 Myckle Vince Natividad - Cybersecurity Forensic Engineer | Cloud Security Architect | Cyber Defense Forensic Analyst | Cybersecurity Scrum Master

  • 🎲 Angelo Castillo - Network Security Engineer | Machine Learning Engineer | Security Forensic Analyst

  • 🤖 Neo Flores - Machine Learning Engineer | Network Engineer | DevOps Engineer

  • 🌟 Yeshua Venezuela - Cyber Intelligence Specialist | Software Engineer | UI / UX Designer | Digital Forensic Analyst

🛸 Reporting Issues

Some changes need to be address
- Coming Soon
- Coming Soon
- Coming Soon
🤖 If you encounter any issues or have suggestions, please open an issue to let us know.

🔑 License     

Coming Soon In the License tab 

National University of Manila License   

The National University of Manila License grants permission to students of the National University of Manila to use, modify, and distribute this project for educational purposes within the scope of their coursework and assignments.

Usage 

  • You may use this project as a reference or learning material for your studies at the National University of Manila.
  • You may modify the project to suit your educational needs and requirements.
  • You may share the project with your fellow students or instructors for educational purposes.

Restrictions

  • You may not use this project for commercial purposes.
  • You may not redistribute or publish this project outside the National University of Manila without explicit permission.

Disclaimer

This project is provided "as is" without warranty of any kind, express or implied. The National University of Manila and the project contributors disclaim any liability or responsibility for any direct, indirect, incidental, special, exemplary, or consequential damages arising out of the use or misuse of this project.

🔭 Acknowledgements     

✨ Professor

Professor Mrs. Jensen Santillan is a highly respected academic and industry practitioner. Her expertise spans a wide range of areas, including Data Analytics, Data Science, Data Analysis, Data Structures, and Information Management. As a distinguished faculty member at the College of Computing and Information Technology at National University, she shares her knowledge and skills with students.

✨ CCIT Dean

Your dedication to advancing knowledge in this field and your commitment to educating future professionals have been invaluable. Thank you for your guidance, support, and the wealth of information you have shared. Your efforts have greatly enriched this final project and will undoubtedly have a lasting impact on all who engage with this repository.

📫 Changelogs

Chronological list of updates, bug fixes, new features, and other modifications for our Flight Booking Appplication.

💻 [01.1.5] - 2024-01-29      

Added

  • 💻 Final Project requirements for our project
  • ✨ Create a repository for this Flight Booking App
  • ✨ Brainstorming for our Project requirements
  • ✨ Coming Soon 💻 🚀
  • ✨ Coming Soon 🧠 🔑

💻 [01.1.1] - 2024-01-29

Activity

  • ✨ Brainstorming on what database should we use

💻 [01.1.1] - 2024-01-31

Added

  • ✨ Custer Uploaded ERD Diagram

💻 [10.1.1] - 2025-02-01

Activity

  • ✨ Angelo, Myckle, Neo revise the EAV model
  • ✨ Uploaded the EAV model

💻 [01.1.1] - 2025-02-10

Fix

  • ✨ Fix Node modules for Flight Booking Client source codebase

💻 [01.1.2] - 2025-02-12

Changes

  • ✨ Fix EAV and Normalization
  • ✨ Revise the Entity Attributes View model

💻 [01.1.2] - 2025-02-16

Added

  • ✨ FrontEnd (Client) for our Flight Booking

Changes

  • ✨ Fix attributes for EAV and Normalization
  • ✨ Revision for Backend and database

💻 [01.1.2] - 2025-02-21

Added

  • ✨ Revise ERD

💻 [01.1.2] - 2025-02-24

Added

  • ✨ Upload ERD
  • ✨ Upload Screenshot for Flight Booking
  • ✨ Push the Front-end folder
  • ✨ Update Changelogs for Flight Booking

💻 [01.1.2] - 2025-02-24

Added

  • ✨ Upload Normalization

🧊 Flight Booking


mystreak

mystreak