volunteer-database

Overview

This is the official CSM (Crowd source medical) database

Python CI Node.js CI

The What Now?

We created this in light of the COVID-19 pandemic to allow volunteers to work together in tackling the shortage of ventilator equipments.

We're just getting started so the documentation may still be lacking. Feel free to point out any issues in our Discord channel.

Communication

General

Discord: https://discord.gg/8dGbA5G

Ticketing

Frontend: https://trello.com/b/4EqWn2Pt/csm-frontend

Backend: https://trello.com/b/plYXa1AI/csm-backend

UI/UX: https://trello.com/b/ZmElMiHV/cms-ui-ux-mockups

DevOps: https://trello.com/b/ggGTsmr8/csm-devops

Onboarding and Team Assignments: https://trello.com/b/lcE3lFLO/csm-onboarding-and-team-assignment

The Tech Stack

Backend: FastAPI, PostgreSQL

Frontend: React, Material UI, Cypress (for E2E-testing)

Environment: Docker, Docker Compose

Project Setup

Installing Docker

Run the following commands

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh

Find instructions to install docker-compose here: https://docs.docker.com/compose/install/

Running the Project

Run the following commands

docker-compose build
docker-compose up -d # The flag -d leaves the process in the background. Feel free to omit it.

The frontend is now be accessible at localhost:3001. The backend is now accessible at localhost:8000.

The backend might crash the first time, this is because a bug in the db image. Simply run docker-compose up (-d) again and it should work.

Populating the database

Once the database is setup we will be providing a database dump with some users etc in it. To update the database simply run

./restore-database base.pgdump

Incase you want to make a snapshot of your db to share run the following

./dump-database

How to Contribute

General

  • Branch names are encouraged to use the following format: <username>/<feature>
  • PRs are recommended to be reviewed by at least one person
  • If you find an issue without a Trello card, feel free to add it. It is encouraged to write an informative description about the issue so that basically anyone could start working on it.

Contributing to the Frontend Development

Frontend tasks can be found here: https://trello.com/b/4EqWn2Pt/csm-frontend.

  1. Pull Frontend/Staging
  2. git checkout -b <username>/<feature>
  3. Write a new Trello card or take an existing one, assign yourself into it, and move it to the "In Development" column
  4. Code like never before, pour your heart into it, communicate with people, have fun
  5. git push -u origin <username>/<feature>
  6. Open a PR against Frontend/Staging and request at least one reviewer.
    • PR description should mention relevant information about dependencies, blockers, etc...
  7. Add a link to the PR in the Trello card, and move it to the "Ready for Review" column
  8. Enjoy

If you don't have a permission to push, you can either request it from the Discord channel, or fork the project and open a PR with your changes in it.

Contributing to the Backend Development

WIP

OpenAPI generated FastAPI server

OpenAPI generated FastAPI server This Python package is automatically generated by the OpenAPI Generator project: API version: 1.0.0 Build package: or

microbo 1 Oct 31, 2021
Python supercharged for the fastai library

Welcome to fastcore Python goodies to make your coding faster, easier, and more maintainable Python is a powerful, dynamic language. Rather than bake

fast.ai 810 Jan 06, 2023
Htmdf - html to pdf with support for variables using fastApi.

htmdf Converts html to pdf with support for variables using fastApi. Installation Clone this repository. git clone https://github.com/ShreehariVaasish

Shreehari 1 Jan 30, 2022
Monitor Python applications using Spring Boot Admin

Pyctuator Monitor Python web apps using Spring Boot Admin. Pyctuator supports Flask, FastAPI, aiohttp and Tornado. Django support is planned as well.

SolarEdge Technologies 145 Dec 28, 2022
fastapi-crud-sync

Developing and Testing an API with FastAPI and Pytest Syncronous Example Want to use this project? Build the images and run the containers: $ docker-c

59 Dec 11, 2022
📦 Autowiring dependency injection container for python 3

Lagom - Dependency injection container What Lagom is a dependency injection container designed to give you "just enough" help with building your depen

Steve B 146 Dec 29, 2022
Money Transaction is a system based on the recent famous FastAPI.

moneyTransfer Overview Money Transaction is a system based on the recent famous FastAPI. techniques selection System's technique selection is as follo

2 Apr 28, 2021
Lung Segmentation with fastapi

Lung Segmentation with fastapi This app uses FastAPI as backend. Usage for app.py First install required libraries by running: pip install -r requirem

Pejman Samadi 0 Sep 20, 2022
An extension for GINO to support Starlette server.

gino-starlette Introduction An extension for GINO to support starlette server. Usage The common usage looks like this: from starlette.applications imp

GINO Community 75 Dec 08, 2022
Piccolo Admin provides a simple yet powerful admin interface on top of Piccolo tables

Piccolo Admin Piccolo Admin provides a simple yet powerful admin interface on top of Piccolo tables - allowing you to easily add / edit / filter your

188 Jan 09, 2023
A simple api written in python/fastapi that serves movies from a cassandra table.

A simple api written in python/fastapi that serves movies from a cassandra table. 1)clone the repo 2)rename sample_global_config_.py to global_config.

Sreeraj 1 Aug 26, 2021
Backend logic implementation for realworld with awesome FastAPI

Backend logic implementation for realworld with awesome FastAPI

Nik 2.2k Jan 08, 2023
Example projects built using Piccolo.

Piccolo examples Here are some example Piccolo projects. Tutorials headless blog fastapi Build a documented API with an admin in minutes! Live project

15 Nov 23, 2022
官方文档已经有翻译的人在做了,

FastAPI 框架,高性能,易学,快速编码,随时可供生产 文档:https://fastapi.tiangolo.com 源码:https://github.com/tiangolo/fastapi FastAPI 是一个现代、快速(高性能)的 Web 框架,基于标准 Python 类型提示,使用

ApacheCN 27 Nov 11, 2022
Backend, modern REST API for obtaining match and odds data crawled from multiple sites. Using FastAPI, MongoDB as database, Motor as async MongoDB client, Scrapy as crawler and Docker.

Introduction Apiestas is a project composed of a backend powered by the awesome framework FastAPI and a crawler powered by Scrapy. This project has fo

Fran Lozano 54 Dec 13, 2022
row level security for FastAPI framework

Row Level Permissions for FastAPI While trying out the excellent FastApi framework there was one peace missing for me: an easy, declarative way to def

Holger Frey 315 Dec 25, 2022
FastAPI framework plugins

Plugins for FastAPI framework, high performance, easy to learn, fast to code, ready for production fastapi-plugins FastAPI framework plugins Cache Mem

RES 239 Dec 28, 2022
Online Repo Browser

MSYS2 Web Interface A simple web interface for browsing the MSYS2 repos. Rebuild CSS/JS (optional): cd frontend npm install npm run build Run for Dev

MSYS2 64 Dec 30, 2022
The base to start an openapi project featuring: SQLModel, Typer, FastAPI, JWT Token Auth, Interactive Shell, Management Commands.

The base to start an openapi project featuring: SQLModel, Typer, FastAPI, JWT Token Auth, Interactive Shell, Management Commands.

Bruno Rocha 251 Jan 09, 2023
This project is a realworld backend based on fastapi+mongodb

This project is a realworld backend based on fastapi+mongodb. It can be used as a sample backend or a sample fastapi project with mongodb.

邱承 381 Dec 29, 2022