PEPhub development
Introduction
The following assumes you have already setup a database. If you have not, please see here.
There are two components to PEPhub: a FastAPI backend, and a React frontend. As such, when developing, you will need to run both the backend and frontend development servers. Full API documentation can be found at https://pephub-api.databio.org/api/v1/docs.
Backend development
uvicorn
is used to run the backend development server. To start the backend server, run the following:
uvicorn pephub.main:app --reload
The backend server should now be running at http://localhost:8000. If you wish to debug the backend server, the repository contains a launch.json
file for VSCode. You can use this to debug the backend server.
Frontend development
Before beginning, ensure you are using a nodejs
version > 16. To manage node
versions, most people recommend nvm
.
We use vite as our development and build tool for the frontend. Before starting, make sure you point the development server at the already running backend server. To do this, create a .env.local
file inside the web/
directory with the following contents:
VITE_API_HOST=http://localhost:8000
Now, to start the frontend development server cd
into the web/
directory, and run the following:
npm install # yarn install
npm start # yarn dev
The frontend development server should now be running at http://localhost:5173/. The React development server comes with a lot of nice features, such as hot reloading, and debugging. You can read more about these features here.