Oussama-Abderrahim / spuf-314

a Web Application prototype for public transportation, serving a RESTful API to find Stations, Bus, Metro and Tramway's Lines, while also computing the best multimodal path between two stations or addresses

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

I still don't have a name for this project but it's nice !

spuf-314 is a Web Application prototype for public transportation, serving a RESTful API to find Stations, Bus, Metro and Tramway's Lines, while also computing the best multimodal path between two stations or addresses.

By the way, this was my final year project at the University of Science and Technology of Oran.

Check the API documentation at {domain}:{port}/api/docs

Install

Be sure to have NodeJs v8.11.2 or higher installed, get the latest version at https://nodejs.org/. open up a terminal and type the following

git clone https://github.com/Sakasaky/spuf-314.git
cd spuf-314
npm install
npm run dev # for server
npm run serve-client # to serve client app in app/client
npm run dev-admin  # to serve admin app in app/admin

Be sure to add a .env file, or just rename the .env.example for a quick test

API side TODOs

  • Add authentication for client use and admin use
  • Implement some security features
  • Add subdomain to serve client, API and admin app
  • Set up a log system
  • Handle errors with correct HTTP status codes

Tools and Languages:

  • Javascript, Javascript everywhere.
  • Visual Studio Code.
  • NodeJs with ExpressJs for the REST API implementation.
  • Neo4J as the graph database.
  • MongoDB for document storage.
  • VueJs for front end application.

Screenshots

HomePage

HomePage

RequestPage

RequestPage

ResponsePage

ResponsePage

AdminHomePage

AdminHomePage

AdminAddNewLine

AdminAddNewLine

About

a Web Application prototype for public transportation, serving a RESTful API to find Stations, Bus, Metro and Tramway's Lines, while also computing the best multimodal path between two stations or addresses


Languages

Language:JavaScript 51.8%Language:Vue 46.1%Language:HTML 1.6%Language:CSS 0.5%