Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Contributing/ Developing #166

Open
dancesWithCycles opened this issue Jun 5, 2022 · 1 comment
Open

Contributing/ Developing #166

dancesWithCycles opened this issue Jun 5, 2022 · 1 comment

Comments

@dancesWithCycles
Copy link

Hi folks, Thank you so much for providing and maintaining this repository! After making some experiences with using, running and deploying the repository I am wondering how it is developed. For instance, I can not find a package.json file. That raised the question: What is a possible development process? Cheers!

@answerquest
Copy link
Collaborator

Hi @dancesWithCycles , this program is developed with python3.
package.json is commonly seen in nodejs applications, not here.

Further details:

  • There is a restful backend api using tornado lib in python
  • For frontend, it's basic HTML / client-side Javascript pages.
  • For populating the content, I did not implement any templating etc - it's only through api calls to the backend.
  • For the "database", it's .h5 files (lookup HDF5 : https://www.geeksforgeeks.org/hdf5-files-in-python/ ), one for each of stops.txt, routes.txt etc. If you start the application without any imported data to begin with, then as you go creating new data, a corresponding .h5 file is created by the backend.
  • Why not a real database : the project's initial requirements/scope included portability - the whole code was desired to be operable off a USB stick without a setup process, hence it wasn't possible to setup and tie the code to a DB server. I did check out SQLite, but came across HDF5 as a faster / more efficient way of storing larger amounts of data. Did a basic benchmarking exercise and found it to be faster, so went with it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants