This project is a client/server to manage Biotech Data. It is implemented using FastAPI and NextJS, with a Postgres database. Code is written in Python and TypeScript.
Note: this project is an exercise
There is two ways to start the apps, the first one rely on docker and docker-compose. The second uses bash scripts to run each service via commands.
Prerequisites: docker and docker-compose 3.8+
Run docker-compose up
Prerequisites: a GNU/Linux Operating System, postgresql 14+, node 14+, python 3.12
To install and run both front and back end, run the following commands:
./install.sh
./run.sh
Then, browse 127.0.0.1:3000 to open the app. Or browse 127.0.0.1:8000/docs to access backend documentation.
The front and back end are located in ./frontend
and ./backend
folders respectively.
For more information, read backend's readme and frontend's readme go know more about it.
- Add more fields on a sample detail (notes, tags, etc.)
- Permissions: add a user table and credentials on the API
- Use multipart/form-data to upload a sample (name, type,..., and file! )
- Implement file upload on the UI
- Highlight items in the light, so user can understand they are clickable.
- Add small icon-buttons to edit/delete/view a sample (only visible when row is hovered)
- Add postres and fastapi to the existing docker-compose.yml
- User Github actions to run pytest with postgres (service)