server side
Our ML model will be trained locally first. After the local stage, the model will be deployed in the cloud using Flask
and Amazon EC2
. The data will be stored using MongoDB
, and we will use MongoDB Atlas
to host it remotely. Below are the reasons why we choose above stacks:
MongoDB
and MongoDB Atlas
- Schema-less (Easy to add/remove attributes)
- It is easy to set up and run in Amazon EC2
Flask
:
- python library support
- easy and simple to use
Amazon EC2
:
- Easy to use/configure
- Secure
Client side
JavaScript will be our main language for front-end. We will use React
to build our web interfaces. Material-UI
will be used for designing the theme, because it has lots of pre-defined themes. Redis
is a great tool for caching due to its in-memory data structure, it can be used to improve user experience. In terms of visualizing data, we use Chart.js
. Because it is light weight and easy to learn.
Project management
We use Slack
for communication, because it is efficient, light weight and easy to use. GitHub
will be used as our primary version control, issue tracking, and roadmapping tool. Because it provides a all-in-one place for code writing and progress tracking.