RAILWAY MANAGEMENT SYSTEM
:FOLDERS:
/Assets : Contains the data that is to be inserted in the MySQL tables in csv format
Files: Train_details.csv -> Contains all the data about the trains in the format
(Train No, Station Code, Station Name, Arrival time, Departure Time,
Distance, Source Station, Source Station Name, Destination Station,
Destination Station Name)
/core : Contains all the files that are required by the project to work
Files: __init__.py -> Makes the folder to be recognized as a module
Checks.py -> This file contains the functions that verify the requirements of the Project
InsertData.py -> This file contains the functions to insert the data in the MySQL tables
User_Functions.py -> This file contains the function that allow a user to perform certain task
Other.py -> This file contains some commonly used functions
:ROOT FOLDER FILES:
Main.py -> This is the main file that connects all the other modules and is used to run the project
requirements.txt -> It contains the required packages for this project to work that can be installed via the command
pip3 install -r requirements.txt
:FEATURES:
Overview: It is a Railway Management system in which a user can book tickets, cancel reservations, check fares etc. It uses MySQL as the backend database.
- Book a Ticket: Users can book a ticket
- Cancel a Booking: Users can cancel a booked ticket
- Check Fares: Users can check fares before booking
- Show my Bookings: User can check their bookings
- Show Available Trains: Users can see the available trains
- Clear Screen: Clears the terminal screen
- Menu: Shows the menu
- About: Prints the content of this file to the screen
- Exit: Exit the program
:ENVIRONMENT SETUP:
- Clone the Repository to your machine.
- Create a Virtual Environment using virtualenv or pipenv.
pip3 install -r Requirements.txt
to install the required packages automatically.- Make sure the MySQL Service is running and change the YOUR_PASSWORD in the files with the password and the YOUR_USERNAME with the username of your local SQL server.
python3 Main.py
to see if the program is running correctly and is able to connect to MySQL Server. (Feel free to ask for help if you face any error)