Skip to main content

Opinionated persistence with FlaskQL

Project description

microcosm-flask

Opinionated Flask services.

Circle CI

Conventions

  • Classify API endpoints according to an enumerated set of operations with well-defined naming conventions
  • Handle errors consistently using a top-level error and nested sub-errrors
  • Handle UUIDs as route path keys
  • Protect endpoints with basic auth
  • Use HAL JSON links to related resources to each other
  • Use Swagger to publish endpoints for interoperability
  • Automate generation of endpoints according to conventions:
    • A health check API endpoint exposes service health
    • RESTful endpoints provide CRUD operations on resources
    • RESTful endpoints allows one resource to be related to another
    • API discovery endpoints allow resource data to be discovered/spidered
    • Swagger endpoints allow endpoint integration to be automated

Setup

Create a virtualenv

mkvirtualenv microcosm-flask

Install dependencies

pip install -U -e .

Tests

Run the tests

pytest

Linting

Lint the code:

NAME=microcosm_flask ./entrypoint.sh lint
NAME=microcosm_flask ./entrypoint.sh typehinting

Configuration

  • The object graph's debug and testing flags are propagated to the Flask application

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

microcosm-flask-4.1.6.tar.gz (57.3 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page