Skip to content

Latest commit

 

History

History
75 lines (49 loc) · 1.62 KB

README.md

File metadata and controls

75 lines (49 loc) · 1.62 KB

RESET

Template app that you can use to bootstrap your project.

Most common API backend functionality

Roadmap:

  • (done) Simple REST CRUD todo-list app
  • (done) Marshalling
  • (done) Jsonapi support
  • (done) Access based on JWT
  • (done) Functional tests example
  • (done) Unit tests example
  • Async endpoints example
  • Kong or similar as a passport-proxy-app
  • Postponed calls with rabbitmq or redis and celery
  • Regular jobs, lambda-like functions
  • Environments: PROD, DEV
  • Telemetry module, that will sends data to the some timeseries DB (for example InfluxDB or similar)
  • Statistics gathering with prometheus
  • Autogenerated grafana dashboard
  • gRPC example app
  • GQL example app
  • HTTP/2 example
  • More complex CRUD (REST and GQL) with relations and hierarchical-like data structure
  • Scalable, multi-cloud ready database
  • Hashicorp infrastructure for deployment to multi-cloud in the same time (aws+cgp+azure)
  • Vagrant support for simulating several

Goals of this repository is making a blueprint that can be used in every python web app.

Main features, that should be in the final solution:

  • Easy bootstrap a new project
  • Ease supportable codebase
  • Modular architecture
  • Infrastructure as a code (devops minded approach)
  • Cloud first, but multi-tenant and multi-cloud support

HOW TO

Run app

docker-compose up --build

Run tests

After running the app

Run unit tests:

docker exec -it reset-app make ut

Run functional tests:

docker exec -it reset-app make ft

Currently the main focus is putted on the functional tests, not unit