The project is divided into:
-
Client: It contains the implementation of dynamic dashboards using libraries such as Streamlit, Plotly, etc.
-
Server: Api that is consumed to obtain the necessary resources to supply the client. Api that is consumed to obtain the necessary resources to supply the customer. The Api is implemented using the FastApi python framework
-
Data: This directory contains the csv file with the statistics for each Euro 2020 match and a Jupyter Notebook in which the data is processed and cleaned and then stored in a database.
First you will need to have Python installed, you can find some guides to help you Guides
Clone the repository
git clone https://github.com/stevenmontoya/scout-soccer-project.git
Use the command below to install the project dependencies
cd scout-project
pip install -r requirements.txt
Install Jupyter
cd scout-project
conda install -c conda-forge jupyterlab
Go to the data directory
cd data
jupyter notebook
In Jupyter you can run all cells to process and perform data cleansing. They can also be saved in a database by configuring environment variables.
Be patient, data processing may take a few minutes.
Start the Streamlit server
Go to the client directory
cd client
Start the Streamlit server
streamlit run main.py
cd server
cd src
Start the Streamlit server
uvicorn main:app --reload
To run this project, you will need to add the following environment variables to your .env file
FOOTBALL_DATA_API_TOKEN
MONGODB_URL
-
To add some interesting data, requests are made to the following api football-data, you can get an api token for free
-
You can add a connection url to Mongodb (on-premises or in the cloud)