This project is a web-based platform designed to display test results for each major release of genome sequencing instrumentation products. The website lets users view results for various test categories associated with different release versions. We are currently working on the frontend design to integrate into the backend.
- Display test results for different release versions.
- Include results for various test categories such as:
- Smoke Test
- Regression Test
- Stress Test
- Performance Test
- Integration Test
- Dynamic updates for each new release and associated test results.
- Backend connected to a database for querying and retrieving test results.
- User-friendly interface with buttons linking to individual test result pages.
Technologies Used
Instructions for Setup and Running
Folder Structure
License
The project uses the following dependencies, managed via hatch and uv:
fastapi[all]>=0.115.4— FastAPI framework for building APIs.passlib[bcrypt]>=1.7.4— For secure password hashing.pydantic-settings>=2.6.1— Powerful databases parsing toolpyjwt>=2.9.0— JSON Web Token (JWT) creation and validation.python-dotenv>=1.0.1— Manage environment variables.ruff>=0.7.3— Fast Python linter and formatter.sqlalchemy>=2.0.36— ORM for database management.sqlmodel>=0.0.22— Combines SQLAlchemy and Pydantic for simpler database models.
To set up the project locally, follow these steps:
Clone the repository-
In the terminal copy and paste the following: git clone https://github.com/FaisalHossain19/Results_Presentation.git
TO RUN (assuming database is setup): Install hatch and uv hatch run uv sync Hatch run dev IN ANOTHER TERMINAL cd to next_js_frontend Npm install Npm run dev access port localhost:3000
Finally, run hatch run dev this will run the main.py file. You will be able to see an IP address in the terminal output if you copy and paste that IP address into the browser, output of our program will be visible.
Access the repository on your machine.
When on the root folder, run docker-compose up --build to add the containers to your Docker desktop
From here, open your Docker Desktop and open the frontend container port (localhost:3000)
.
├── .github/workflows/
│ └── test.yml
├── next_js_frontend/
| ├── Dockerfile
| ├── public/
| | ├── *.svg
| ├── src/
| | ├── app/
| | | ├── pages/
| | | ├── components/
| | | ├── hooks/
├── src/
│ ├── app/
│ │ ├── core
│ │ ├── models #Contains data models like users, test_results etc
│ │ ├── routes #Contains API endpoints
│ │ ├── schemas #Contains mapping between data models and python objects
│ │ ├── services
│ │ ├── about.py
│ │ ├── init.py
│ │ ├── crud.py # Contains CRUD operations that are being performed on data models
│ │ ├── dependencies.py
│ │ └── main.py # Application entry point
│ ├── init.py
│ └── database.db
├── tests
├── .env
├── .gitignore
├── .pre-commit-config.yaml
├── LICENSE.txt
├── README.md
├── Dockerfile
├── docker-compose.yml
├── pyproject.toml
└── uv.lock
We are now working at integrating the backend into this project to display the work that our backend is doing.
Results-Presentation is distributed under the terms of the MIT license.