# HSL Bike Helper [![Unlicense](https://img.shields.io/badge/License-Unlicense-2ea44f)](https://github.com/ElliotAtHelsinki/data-science-project/blob/main/LICENSE.md) ![v - 1.0.0](https://img.shields.io/badge/v-1.0.0-blue) ![PRs Welcome](https://img.shields.io/badge/PRs-welcome-green.svg)

HSL Bike Helper is an app that predicts the number of bikes at stations in [`Helsinki`](https://hel.fi/) and [`Espoo`](https://espoo.fi/) at any hour using the [`SARIMA`](https://en.wikipedia.org/wiki/Autoregressive_integrated_moving_average) model.

### Repository
https://gitea.elliot-at-zuri.ch/root/DATA11001-Introduction-to-Data-Science

### Installation
The application can be directly accessed via a web browser at the following addresses, without requiring any installation:  
\- **Frontend**: https://hsl-frontend.elliot-at-zuri.ch   
\- **Backend**: https://hsl-backend.elliot-at-zuri.ch/app/predict

Optionally, however, the application can be installed as a mobile or desktop app, since it is a PWA.

### Development
To run the `Django` backend locally, navigate to the `backend` folder and:  
\- Source the `env`: `source env/bin/activate`  
\- Create an empty `.env` file: `touch .env`  
\- Install the dependencies: `pip install -r requirements.txt`  
\- Run the first two code blocks of the `main.ipynb` file  
\- Start the server: `python manage.py runserver`  

To run the `Next.js` frontend locally, navigate to the `frontend` folder and:  
\- Install the dependencies: `npm install`   
\- Start the application: `npm run dev`  
