Skip to content

Latest commit

 

History

History
97 lines (63 loc) · 2 KB

README.md

File metadata and controls

97 lines (63 loc) · 2 KB

Backend for HAMS

Technologies Used

  • Python
  • FastAPI (API Framework)
  • Postgres with (SQLModel / SQL Alchemy ORM)
  • Alembic (for migrations)
  • Pydantic (for Data Validation)
  • AWS S3 (for storage)
  • Resend (for emails)

Instructions

  1. Create virtual environment
    python -m venv .venv
  1. Activate enviroment
    # for macos and linux
    source .venv/bin/activate

    # for windows
    .venv\Scripts\activate
  1. Install Dependencies
    pip install -r requirements.txt
  1. Run the development server
    fastapi dev app.py

Make sure to add a .env file with same as configuration as in .env.example

For the first time, make sure to apply database migrations:

    alembic revision --autogenerate -m "create database tables"
    alembic upgrade head 

Contributing

Thank you for your interest in contributing to our project! We welcome contributions from everyone and are grateful for every pull request.

Prerequisites

  • Python 3.9+
  • Familiarity with Git

Setting Up Your Development Environment

  1. Fork the repository and clone your fork.

  2. Install dependencies:

    pip install -r requirements.txt
  3. Set up local development server:

    uvicorn app.main:app --reload

Coding Standards

Please follow the coding style and conventions established in the project. Use Ruff for Linting.

Submitting Changes

  1. Create a new branch for your changes.
  2. Make your changes and commit them with clear, concise commit messages.
  3. Push your branch and submit a pull request to the main repository.
  4. Await code review and address any feedback.

Running Tests

Ensure that all tests pass before submitting a pull request. Add new tests for new features.

Code Review Process

All submissions require review. We aim to review and respond to your pull request within 3 days.

Community and Communication

Join our community on Discord for discussions and support.