Skip to content

This is our specialization portfolio project for Alx and Holberton software engineering program

Notifications You must be signed in to change notification settings

cherishegoyibo/along9ja

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Along9ja

DESCRIPTION

Along9ja App is a mobile and web-based application designed to solve navigation challenges for public transport passengers in Nigerian cities. The app provides detailed, crowdsourced directions for getting from point A to B via public transportation. With features like route recommendations, safety alerts, real-time updates, and AI-powered personalized suggestions, this platform enhances urban mobility while prioritizing user safety and convenience.

Features

  • Route Recommendations: Discover the best public transport routes for your journey.
  • Real-Time Updates: Stay informed with live traffic and safety alerts.
  • Crowdsourced Data: Leverage contributions from other users for accurate and current route information.
  • Personalized Suggestions: AI-driven recommendations tailored to your preferences and travel history.
  • Safety Alerts: Alerts about potentially risky areas or incidents along the route.
  • Customized Routes: Planning an event, create route directions for your guests.

Installation

Prerequisites

Ensure you have the following installed on your system:

  • Node.js (v16.x or higher)
  • MongoDB (or access to a hosted MongoDB instance)
  • React (for Web development)

Backend Setup

  1. Clone the repository:

    git clone https://github.com/cherishegoyibo/along9ja.git
    cd along9ja/backend
    
  2. Install dependencies:

npm install
  1. Create a .env file and add environment variables:
PORT=5500   # The port your backend server will run on
MONGO_URI=your-mongodb-connection-string # MongoDB connection string
JWT_SECRET=your-secret-key       # A secret key for signing and verifying JSON Web Tokens (JWTs)
GOOGLE_MAPS_API_KEY=your-google-maps-api-key # API key for Google Maps integration
  1. Start the server:
npm start

Frontend Setup (Web)

  1. Navigate to the root directory:
cd along9ja
  1. Download and install Node

  2. Run the following command in the command line to install dependencies:

npm install
  1. Install Vite (if not already included in your dependencies):
npm install vite
  1. Install Webpack (if not already included in your dependencies):
npm install webpack webpack-cli --save-dev
  1. Now that you have everything installed, run
npm run dev

inside the root directory to start development server.

Architecture

The application follows a modern, modular architecture to ensure scalability and maintainability.

  • Frontend: React.js and JSX (web) for intuitive user interfaces.
  • Backend: Node.js with Express.js for API handling and business logic.
  • Database: MongoDB for storing route data, user contributions, and app metadata.
  • Third-Party APIs: Google Maps API for mapping and route visualization.

Contributing

We welcome contributions to the project! Follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch:
git checkout -b feature/your-feature-name
  1. Implement your feature or fix and commit:
git commit -m "Add your message here"
  1. Push your changes to your branch:
git push origin feature/your-feature-name
  1. Submit a pull request to merge your changes into the main branch.

Challenges

  1. Integrating Google Maps API and ensuring compliance with its terms of use.
  2. Scaling the backend to handle real-time updates and high user traffic.

License

This project is licensed under the MIT License.

Contributors

About

This is our specialization portfolio project for Alx and Holberton software engineering program

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •