trener
trener copied to clipboard
A simple programming challenge for implementing a train station app
Trener Project Challenge
This was a project originally made for Software Construction undergraduate course (2012) at https://www.uvm.cl[Universidad de Viña del Mar].
Merval Metro System
http://www.merval.cl[Merval (Metro Valparaíso)] is a train/metro system that travels between https://en.wikipedia.org/wiki/Valpara%C3%ADso[Valparaíso] to https://en.wikipedia.org/wiki/Limache[Limache].
Requirements
The software must provide the following features.
Must: Return the next train
Given the current hour, day, destination and origin the software must return the nearest train that will travel from origin to destination.
Must: Return the total travel cost
Given the hour, day, origin, destination and user category the software must return the total travel cost.
Should: Optional Requirements
- Return the total travel time.
- Show a list of near trains.
- Show the prices for the other user categories.
- Alert the user when a train is near the station.
- Enable the user to set a default origin, destination.
- Other quality of life improvements.
Example
image:https://user-images.githubusercontent.com/292738/81207266-4f381600-8f9b-11ea-9253-cf7cc7ea4273.png[Tr5nr in iOS]
Documentation
Detailed documentation is available (in Spanish) at docs directory. An example implementation was made using XCode for iPhone devices, available at example.
Database
Some csv files and a sqlite database are provided with all the needed data to implement this software, available at data. For React projects you can use https://github.com/agershun/alasql[AlaSQL]. Data is available as trener.json or trener.js.
Challenge
Implement this software in the stack that you are most proficient. Maybe a website with React or an app with React Native.
++++ Made with ♥ by Ninjas.cl. ++++