Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/asadhasan/fastapi-projections-service
Playing with FastAPI by creating an investment projections service (using Nutmeg's calculator to actually calculate the projections)
https://github.com/asadhasan/fastapi-projections-service
bandit black codecov codeql dependabot docker-compose fastapi flake8 github-actions heroku isort mypy nginx-unit openapi owasp-zap pre-commit pydantic pytest python3 requests
Last synced: 9 days ago
JSON representation
Playing with FastAPI by creating an investment projections service (using Nutmeg's calculator to actually calculate the projections)
- Host: GitHub
- URL: https://github.com/asadhasan/fastapi-projections-service
- Owner: AsadHasan
- License: mit
- Created: 2021-02-12T18:40:44.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-01-24T04:08:57.000Z (almost 2 years ago)
- Last Synced: 2024-05-28T22:29:55.230Z (5 months ago)
- Topics: bandit, black, codecov, codeql, dependabot, docker-compose, fastapi, flake8, github-actions, heroku, isort, mypy, nginx-unit, openapi, owasp-zap, pre-commit, pydantic, pytest, python3, requests
- Language: Python
- Homepage:
- Size: 112 KB
- Stars: 0
- Watchers: 3
- Forks: 1
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
![example workflow name](https://github.com/AsadHasan/fastapi-projections-service/workflows/Deploy/badge.svg)
[![codecov](https://codecov.io/gh/AsadHasan/fastapi-projections-service/branch/main/graph/badge.svg?token=7YSS3MAKQD)](https://codecov.io/gh/AsadHasan/fastapi-projections-service)
# FastAPI projections servicePlaying with FastAPI, by creating a _very over-simplified_ investment projections service (with projections calculated by [Nutmeg's calculator](https://try.nutmeg.com/)), deployed on Heroku, as part of GitHub Actions CD pipeline; and Docker image also pushed to GitHub packages.
## Projections service usage documentation
1. [Swagger UI](https://fastapi-projections-service.herokuapp.com/docs)
2. [Redoc](https://fastapi-projections-service.herokuapp.com/redoc)## Dev tooling and QA measures used
### Tests
1. Unit and integration tests: Executed on Push and PRs, before Docker image is built. Code coverage measured by Codecov.
2. End to end test: Executed on Push and PRs, _after_ Docker image is built, and _before_ it is pushed to GitHub packages; and then once again _after_ Docker image is tagged and pushed to Heroku and service deployed.
3. OWASP API security scan: Executed on Push and PRs, after end-to-end test has run.### Dependency updates
PRs opened for dependency updates by Dependabot Bot and those PRs auto-merged after successful CI checks by Mergify.### Static code analysis
Codeql and OSSAR scans, via GitHub Actions, on Push and PRs.### Pre commit checks
Following checks/scans made by Pre-commit: Pylint, Flake8, Black, Mypy and isort.### CI and CD
GitHub Actions and Heroku