The Django REST framework 3.9 will be released later this week. This will include a new schema generation command for writing an
Given that the API ecosystem has now pretty much standardized on OpenAPI as the format for describing API services, we’re going to be gradually moving away from
coreapi, and towards writing OpenAPI specifications.
This should open up a greater range of API documentation, client library generation, and other API tooling.
The focus of the API Star project has been significantly re-scoped with the release of 0.6. The project is now a stand-alone toolkit for:
There is no longer any server-framework as part of the package at all. Instead I’ll be aiming for it to be a general purpose tool kit that can be used alongside any Python web framework.
Refocusing the project in this way is intended to be to the benefit of REST framework developers, as it’ll help us focus on tools such as the OpenAPI-driven client library, which will gradually start to replace the existing
Here’s an example of how the client library is looking:
import apistar schema = """ openapi: 3.0.0 info: title: Widget API version: '1.0' description: An example API for widgets paths: /widgets: get: summary: List all the widgets. operationId: listWidgets parameters: - in: query name: search description: Filter widgets by this search term. schema: type: string """ client = apistar.Client(schema) result = client.request('listWidgets', search='cogwheel')
Starlette has taken over from
apistar in terms of my focus on building out a really nicely designed and well-scoped ASGI framework. There’s lots of work currently going on into maturing it, including:
I’ve been starting a bit of exploratory work towards a possible next iteration of
The MkDocs project is what we use for all our documentation, and was originally built in order to generate the Django REST framework docs. It’s a great project, with a pretty decent user-base, but currently is really only designed specifically for themed project documentation, rather than general purpose static sites or blogs.
I haven’t reached any firm decisions about how to progress this yet, and the project is not yet particularly intended for public use, but if you’re interested in keeping an eye on things, the repository is currently at https://github.com/tomchristie/mkdocs2
As ever, thanks to all our sponsors, contributors, and users for your ongoing support.
— Tom Christie, 1st October, 2018.