Server-side logic of the Argo Project.
- Manages Argo tour graphs
- Runs computationally expensive tasks
- Mounts machine learning models for general use
The Argo Editor updates the data in the Argo Backend. Users interact with the tour graphs via the Argo Tour.
(Note: It's probably a good idea to use a virtual environment! This will make sure your dependencies don't clash with each other).
- Clone the repo :
git clone https://github.com/calpoly-csai/argo-backend.git
- Install dependencies:
pip install -r requirements.txt
- Start development server:
python ./src/main.py -l
- the
-l
option launches a mock development database, so any updates you make won't change real data. The mock database is stored in memory so closing your server erases the contents of the database. The starting template can be easily updated by changing the JSON insrc/assets/example-tour.json
.
- the
- Flask: Runs the REST API server.
- TensorFlow: For writing machine learning models.
- Cloudinary: A service that hosts our panoramic images and path videos.
- MongoMock: Our development database that launches with the
-l
command line option. - PyMongo: Database API that allows us to update persistent storage in Python functions.