bitabase-gateway

[![Build Status](https://travis-ci.org/bitabase/bitabase-gateway.svg?branch=master)](https://travis-ci.org/bitabase/bitabase-gateway) [![David DM](https://david-dm.org/bitabase/bitabase-gateway.svg)](https://david-dm.org/bitabase/bitabase-gateway) ![GitHu

Usage no npm install needed!

<script type="module">
  import bitabaseGateway from 'https://cdn.skypack.dev/bitabase-gateway';
</script>

README

bitabase - Gateway

Build Status David DM GitHub code size in bytes GitHub package.json version GitHub js-semistandard-style

This is a very early attempt at the gateway server.

Getting Started

From the CLI

Running the following:

npm install --global bitabase-gateway
bitabase-gateway --help

Will output the below:

📦 Bitabase-Gateway - v1.5.1
The scalable, sharded database engine.
https://docs.bitabase.com

The following commands and arguments are available when starting Bitabase

Commands:
  start                            Start the bitabase gateway stack
    --bind-host                    Hostname to bind server to (default: 0.0.0.0)
    --bind-port                    Port to bind server to (default: 8001)
    --rqlite-addr                  Path to contact rqlite
    --secret                       The internal request secret
    --account-mapper               The regex to take the account from the incoming host (default: (.*).bitabase.test)

No command specified

You can start a bitabase gateway server by running:

bitabase-gateway start

From NodeJS

const bitabaseServer = require('bitabase-gateway/server');

const server = bitabasegateway({
  bindHost: '0.0.0.0'
});

server.start();

Endpoints

All requests are proxied through to the database servers based on the database stored in the hostname:

https://:databaseName.bitabase.com

Method Path Description
Records
Records are stored in a collection and must adhere to the schema
1.1 GET /:collectionId Search through records

License

This project is licensed under the terms of the AGPL-3.0 license.