local manual installation to run the software
Prerequisites
You will need to install some fundamental packages in your system to run the software such as python3
. git
is not entirely necessary since the repository can be downloaded as a .zip
from GitHub, but it makes things easier. Also, We can take advantage of having the repositories cloned for the Developer environment, used in next articles.
Resolving dependencies
The first thing that we got to do is clone the repository that contains the software ytm-manager-backend
and ytm-manager-frontend
We can clone the repository anywhere, for example in our HOME folder:
cd $HOME
git clone https://github.com/ytm-manager/ytm-manager-backend
git clone https://github.com/ytm-manager/ytm-manager-frontend
In each repository execute the next orders to create the virtual environments to execute the software and install its dependencies:
cd ytm-manager-backend
python3 -m venv venv
venv/bin/python3 -m pip install --upgrade pip
venv/bin/python3 -m pip install -r requirements.txt
cd ..
cd ytm-manager-frontend
python3 -m venv venv
venv/bin/python3 -m pip install --upgrade pip
venv/bin/python3 -m pip install -r requirements.txt
cd ..
Run software
You need to run the main script of each project to have both the frontend and backend up and running. The easiest way is to use two terminals. In the first terminal write:
cd ytm-manager-backend
venv/bin/python3 src/app/main.py
In the second terminal write:
cd ytm-manager-backend
venv/bin/python3 src/app/main.py
You can use a single terminal (the goal is to have both projects running at the same time). But you will need to throw the first process in background (using the &
in bash) to be able to keep using the terminal and execute another component.
Use software
Using web interface
Access http://localhost:5010/
to access the web page of the frontend. The frontend will automatically call the backend to access the application logic.
Using API
You can also send requests directly to the backend by attacking its API using Postman, curl
or any other application or method to send HTTP requests to a server.