Skip to main content

A backend core utility library.

Project description

Nekoite Backend Core

pypi build

Usage

Requires python 3.7 or newer.

pip install nekoite-be-core

There are some examples to look at.

Basically, choose an adapter (or build on your own), create some views and routes, and give it to the function register_routes.

routes = {"/a": AView, ...}
adapter = SomeAdapter(*args)
register_routes(adapter, routes)

Modules

View

Extend the class ViewBase. Override the function handle_req. You can specify the request_schema and response_schema, and if they are not specified or None, then the request or response format will not be checked. method can be a string or list of strings indicating the HTTP methods accepted by this view.

class TestView(ViewBase):
    request_schema = {"id": fields.Integer(required=True)}
    response_schema = {"id": fields.Integer(), "timestamp": fields.Integer()}
    methods = ["GET", "POST"]

    def handle_req(self, req: t.Dict[str, t.Any]) -> t.Any:
        return {
            "id": req["id"],
            "timestamp": int(time()),
        }

Fields

You can import fields from this package. It includes some field type defined in marshmallow, and the Nested type is rewritten to accept dict as parameter.

The detailed usage of the types in fields can be found on the homepage of marshmallow.

from nekoite_be_core import fields

# ...
request_schema = {
    "id": fields.Integer(required=True),
    ...
}

Project details


Download files

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

Source Distribution

nekoite-be-core-0.1.4.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

nekoite_be_core-0.1.4-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file nekoite-be-core-0.1.4.tar.gz.

File metadata

  • Download URL: nekoite-be-core-0.1.4.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for nekoite-be-core-0.1.4.tar.gz
Algorithm Hash digest
SHA256 fc2702a3897e6384a30225bf471dc5f73e744da00e3fe52dc818fc65e34a0fdb
MD5 23f0fcaaccf46495389f60a16dfb1c7a
BLAKE2b-256 0e699a073d1b19a7ecfa72a8818b04a8b817ae87155ea48109e10d8922cc93df

See more details on using hashes here.

File details

Details for the file nekoite_be_core-0.1.4-py3-none-any.whl.

File metadata

File hashes

Hashes for nekoite_be_core-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c9080ff7bc596a2098559f462f93aa004303bf447196e025086e72ce3aa3139c
MD5 4e9bd607f9f3bbd77352d5d70041ea72
BLAKE2b-256 ecb86b22e7bcb67aa86d12c2dd72fdfc7c8a75cf6b283573f396dc007f863567

See more details on using hashes here.

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