Missing a database connector?
Azimutt is modular and database connectors are not even embed in the service but in the gateway, remember, you should launch it with npx azimutt@latest gateway
.
This is just the CLI
published on npm
and launching the gateway.
But of course, you can clone the repo, launch the gateway from the code and add your own connector.
Asking for a new connector #
We regularly make new connectors, depending on customer or community requests.
If you need one not existing yet, check for the
already required ones
and add your voice (reaction & comment), so we know about their popularity.
If not requested yet, create an issue so others can add their voice to yours.
Creating your connector #
If you need a connector fast and are willing to invest a bit of time, you can make it on your own, and either keep it for you or contribute to the community by submitting a PR.
The hardest part is always finding a way to extract the schema. Most of the time it's done thought system table (INFORMATION_SCHEMA
or more specific ones),
but sometimes it's pure inference when the database has no explicit schema like MongoDB
or Couchbase.
Once you know how to extract the schema, you just need to create a new project and implement the getSchema: (application: string, url: DatabaseUrlParsed): Promise<Database>
function.
You can look ath the PostgreSQL
or MongoDB connector as inspiration.
In any way, don't hesitate to reach out for any question.