Skip to content

staticbackendhq/backend-node

Repository files navigation

backend-node

Node client library for StaticBackend's API.

Install

$> npm i @staticbackend/backend

Usage

You'll need a public key to use this library. Please refer to our getting started guide to help you get up and running.

Importing and creating an instance

import { Backend } from "@staticbackend/backend";
const bkn = new Backend("your-pub-key", "region");

Only the na1 region is supported. Your public key will be sent after you create your account.

Use "dev" for a local StaticBackend server at http://localhost:8099, or pass a self-hosted base URL as the second argument.

Format

The function calls, say to create a database document (all every other functions) return the following:

{ok: boolean, content: any}

For successful requests the ok field will be true and the content filed will be what you expect from a successful call.

If an error occurs, the ok field will be false and the content field will contains the error message.

Users registration and login

const result = bkn.login("a@newuser.com", "pass123456");
if (result.ok) {
	console.log(result.content);
}

For login and register the content field contains the user's session token.

You'll need this token for all your interaction with the backend.

Server-side API

This package is intended for trusted Node.js environments and includes root-token helpers that are not available in the browser client:

  • Database sudo operations: sudoCreate, sudoList, sudoQuery, sudoUpdate, sudoDelete, sudoListRepositories, sudoAddIndex
  • Account helpers: sudoGetToken, sudoGetAuthTokenByUserID, sudoGetUserByID, sudoGetUserAccounts
  • Storage and extras: storageUsage, listFiles, deleteFile, sendMail, sudoSendSMS, convertURLToX
  • Functions, forms, and pub/sub: addFunction, listFunctions, updateFunction, deleteFunction, functionInfo, execFunction, sudoExecFunction, listForm, publish

Development

Building

npm run build

Testing

This library includes a comprehensive test suite that mirrors the Go client tests.

Prerequisites:

  • StaticBackend server running in development mode at http://localhost:8099
  • Default admin account: admin@dev.com / devpw1234

Run tests:

npm test

Run tests in watch mode:

npm test:watch

See tests/README.md for detailed testing documentation.

About

Node client library for StaticBackend API

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors