Canopus GraphQL¶
Canopus is a fast, unopinionated and minimalist GraphQL web framework. Thanks for checking it out!
Motivation¶
The GraphQL community is growing rapidly, with a wide range of resources to work with. However, today’s GraphQL libraries lack a few essential features which are required to get an application up and running, without any friction. Simply put, you need to implement these features on your own to get GraphQL to work for you. The root of this problem lies inside the fact that the GraphQL ecosystem currently exists inside a myriad of tools built to create RESTful services. The developers of Canopus strongly believe that creating GraphQL oriented web frameworks is the way to push the community forward. Canopus was created to address all of these issues, and provide a better developer experience. Canopus doesn’t build on top of existing RESTful web frameworks like Django or Flask. It is a web framework on it’s own.
Proposed Features¶
asyncio Python 3.8+ codebase with typehints
optimized to be fast and scalable
minimalist and unopinionated API
follows a code-first approach to building schemas
built-in support for caching and batch-loading
data-agnostic. Pull data in from any data sources
sessions support out of the box
query batching support (for use with Apollo-Client)
complete support for the relay spec
fully compatible with the ASGI spec
Project Status¶
Canopus is still in it’s very early days of development. Its core is being built right now. Any contributions are highly appreciated! Please read our contributing guidelines for more information.
Installing¶
Install and update using pip:
$ pip install -U Canopus