/awokado

Fast and flexible low-level API framework based on Falcon and SQLAlchemy Core

Primary LanguagePythonMIT LicenseMIT

pipeline status coverage report Codacy Badge Code style: black PyPI - Downloads Checked with mypy PyPI

Fast and flexible low-level API framework based on Falcon, Marshmallow and SQLAlchemy Core

API is close to OpenAPI 3.0 specification

Currently is under active development

Awokado Diagram

Documentation

You can find in: Documentation

Changelog

You can find in: CHANGELOG.md

Installation

$ pipenv install awokado

or

$ pip install awokado

Awokado uses dynaconf for loading it settings

You can find all available variables in settings.toml file

Contributing

Tests

To run tests locally you should create .secrets.toml file in the project root directory:

[default]
    DATABASE_PASSWORD='your_db_password_here'
    DATABASE_HOST='localhost'
    DATABASE_USER='your_db_username_here'
    DATABASE_PORT=5432 #DB port
    DATABASE_DB='test'

or

[default]
    DATABASE_URL='your_full_db_url'

Do not use both ways at the same time, you will get error!

Install required packages:

$ pipenv install --dev

Then you can setup your database:

$ pipenv python -m tests.test_app.init_db

And run tests:

$ pipenv python -m unittest

Authors

Is being made with the help of

Alex Sidorov

Ksenia Malyavskaya

Pavel Danilyuk

Andrew Osenenko