aubergine: create REST APIs using API-first approach.
Project description
aubergine is a library that helps you effortlessly create REST API using API-first approach.
Creating an API in aubergine is simple and requires only the following steps:
Create your OpenAPI 3 specification file, with operationId set to the callable of your choice.
openapi: "3.0.0"
servers:
- url: /v1/rest
info:
version: 1.0.0
title: Hello World
description: My first api.
paths:
/hello:
get:
operationId: hello_world.hello
parameters:
- who: who
in: query
description: who to great
required: true
schema:
type: string
responses:
'200':
description: Greeting dedicated to given name.
content:
application/json:
schema:
$ref: '#/components/schemas/Greeting'
components:
schemas:
Greeting:
required:
- message
properties:
message:
type: string
Implement operations that you declared in your specification. Place hello_world module with the following content in an importable directory.
def hello(who):
"""Handles v1/rest/hello"""
return {'message': 'Hello {}!'.format(who)}
Tell aubergine to create an app for you. Create a hello_app.py with the following contents:
from aubergine import Aubergine
app = Aubergine.from_file('hello_world.yml')
api = app.build_api()
Your app is ready to go. You can run it with any WSGI server like so:
gunicorn hello_app:api
Test it by navigating to http://localhost:8000/v1/rest/hello?who=World
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.