{"id":21107320,"url":"https://github.com/ninjascl/trener","last_synced_at":"2025-07-08T16:31:40.254Z","repository":{"id":119741444,"uuid":"261816808","full_name":"NinjasCL/trener","owner":"NinjasCL","description":"A simple programming challenge for implementing a train station app","archived":false,"fork":false,"pushed_at":"2020-06-15T18:45:54.000Z","size":1348,"stargazers_count":28,"open_issues_count":0,"forks_count":4,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-04T06:33:11.894Z","etag":null,"topics":["challenge","chile","merval","software","train"],"latest_commit_sha":null,"homepage":"https://ninjas.cl","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NinjasCL.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-06T16:27:22.000Z","updated_at":"2022-01-28T15:10:25.000Z","dependencies_parsed_at":"2023-07-18T01:15:42.445Z","dependency_job_id":null,"html_url":"https://github.com/NinjasCL/trener","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/NinjasCL/trener","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NinjasCL%2Ftrener","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NinjasCL%2Ftrener/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NinjasCL%2Ftrener/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NinjasCL%2Ftrener/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NinjasCL","download_url":"https://codeload.github.com/NinjasCL/trener/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NinjasCL%2Ftrener/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264304591,"owners_count":23587990,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["challenge","chile","merval","software","train"],"created_at":"2024-11-20T00:38:38.051Z","updated_at":"2025-07-08T16:31:40.249Z","avatar_url":"https://github.com/NinjasCL.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Trener Project Challenge\n\nThis was a project originally made for _Software Construction_ undergraduate course (2012) at https://www.uvm.cl[Universidad de Viña del Mar].\n\n## Merval Metro System\n\nhttp://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].\n\n## Requirements\n\nThe software must provide the following features.\n\n### Must: Return the next train\n\nGiven the current _hour_, _day_, _destination_ and _origin_ the software *must* return the nearest train that will travel from _origin_ to _destination_. \n\n### Must: Return the total travel cost\n\nGiven the _hour_, _day_, _origin_, _destination_ and _user category_ the software *must* return the total travel cost.\n\n### Should: Optional Requirements \n\n- Return the total travel time.\n- Show a list of near trains.\n- Show the prices for the other user categories.\n- Alert the user when a train is near the station.\n- Enable the user to set a default origin, destination.\n- Other quality of life improvements.\n\n### Example\n\nimage:https://user-images.githubusercontent.com/292738/81207266-4f381600-8f9b-11ea-9253-cf7cc7ea4273.png[Tr5nr in iOS]\n\n## Documentation\n\nDetailed documentation is available (in Spanish) at _docs_ directory. An example implementation was made using _XCode_ for _iPhone_ devices, available at _example_.\n\n## Database\n\nSome _csv_ files and a _sqlite_ database are provided with all the needed data to implement this software, available at _data_.\nFor _React_ projects you can use https://github.com/agershun/alasql[AlaSQL]. Data is available as _trener.json_ or _trener.js_.\n\n## Challenge\n\nImplement this software in the stack that you are most proficient. Maybe a website with _React_ or an app with _React Native_.\n\n\n++++\nMade with \u003ci class=\"fa fa-heart\"\u003e\u0026#9829;\u003c/i\u003e by \u003ca href=\"http://ninjas.cl\" target=\"_blank\"\u003eNinjas.cl\u003c/a\u003e.\n++++\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fninjascl%2Ftrener","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fninjascl%2Ftrener","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fninjascl%2Ftrener/lists"}