Octa Travel Booking Platform

Backend for Octa Platform

README Documentation

This documentation provides an overview of the Octa travel Booking Management System, its features, project structure, installation steps, API documentation, and more.

Table of Contents

Overview

The Octa Travel Booking Management System is a robust backend service designed for managing travel bookings. Built using Node.js and Express.js, it serves various user roles including admins, customers, and drivers. This system is scalable, secure, and follows modern practices to handle high-volume operations.

Features

Project Structure

Project Structure

.
├── controller
│   ├── adminController.js
│   ├── customerController.js
│   └── driverController.js
├── database
│   └── mysql.js
├── libs
│   ├── bcrypt.js
│   └── token.js
├── middleware
│   └── verifyToken.js
├── node_modules
├── properties
│   └── constants.js
├── public
│   └── index.html
├── routes
│   ├── adminRoutes.js
│   ├── customerRoutes.js
│   └── driverRoutes.js
├── utilities
│   ├── bookingUtilities.js
│   ├── customerUtilities.js
│   ├── driverUtilities.js
│   └── geoUtils.js
├── validators
│   ├── driverValidator.js
│   └── [other validator files...]
├── .env
├── .gitignore
├── index.js
└── package.json

Installation & Setup

  1. Clone the repository to your local machine.
  2. Navigate to the project directory in your terminal.
  3. Run npm install to install all dependencies.
  4. Create a .env file with the necessary environment variables.

Running the Application

Use the following commands for different environments:

API Documentation

The backend exposes a RESTful API with the following main routes:

Versioning & Dependencies

This project is currently versioned at 1.0.0 and requires Node.js version 14.0.0 or higher. Key dependencies include:

Additional Notes

This system is designed with scalability and security in mind. It supports both development and production environments and is structured to allow easy extensions and modifications as the project grows.