Licensed to be used in conjunction with basebox, only.
basebox Technical Documentation
What is basebox?
basebox is a GraphQL API server with a unique GraphQL to SQL compiler connected to a PostgreSQL database that frees you from writing boiler plate resolver functions. It is written in Rust, thus really fast and safe. Its development is done in compliance to various regulations to ease the certification of (medical) projects using basebox.
The idea in general is:
You provide
A GraphQL schema file with some basebox-specific annotations
... and you get:
A full-fledged, high performance GraphQL API server.
Get Started
Ready to get started? Click the button below.
Overview
basebox consists of the following components:
- bbc
-
The basebox compiler; compiles a GraphQL schema into an SQL script to initialize the PostgreSQL database and some files that are later used by basebox to translate your client's GraphQL into SQL requests.
bbc is run only once during installation and again should the schema change.
- broker
-
basebox' HTTPS GraphQL server; receives GraphQL requests from your clients, handles OpenID Connect authorization and authentication, sends requests to the database proxy and returns the JSON results to the client.
- dbproxy
-
The database proxy; it translates GraphQL requests into SQL, hits the database and returns JSON results.
- OpenID Connect
-
basebox uses OpenID Connect for authorization and authentication. OpenID Connect is not part of the basebox package itself, so you can integrate your basebox project with an existing OpenID Connect infrastructure (SSO), create a new one or use a commercial service for that purpose.
basebox is written in 100% Rust.
Here is a graphical overview:
This is the root page of basebox' developer documentation. For more general information, please visit our main site at basebox.io.