@tableland/node-helpers
v1.0.0
Published
Helpers for the @tableland/sdk in a Node.js environment
Downloads
19
Readme
@tableland/node-helpers
Helpers for the
@tableland/sdk
in a Node.js environment
Table of Contents
Background
This package provides helpers for the @tableland/sdk
in a Node.js environment. It exports a single jsonFileAliases
method takes a path and optional async
flag for asynchronous behavior, and it returns a function that can be used as the aliases
option for the Database
class. It creates an AliasesNameMap
, which exposes read()
and write()
methods that will store table aliases mapped to their unique table uuid (prefix_chainId_tableId
). The path passed to jsonFileAliases
can be one of:
- A path to an existing JSON file (e.g.,
./tableland.aliases.json
). - A path to a directory but with a user-defined filename that doesn't exist yet but should be created (e.g.,
/path/to/custom-filename.json
). - A path to a directory with no filename specified, which will default to creating a file named
tableland.aliases.json
in that directory (e.g.,./
).
Once the Database
class is instantiated with the aliases
option, all database queries will let you use the table's alias instead of the full table uuid, which makes it easier to write SQL statements.
Install
You can install via npm.
npm install @tableland/node-helpers
Or yarn:
yarn add @tableland/node-helpers
Usage
Full library documentation is available on our docs site. You can import the jsonFileAliases
function from the package and pass it to the SDK's Database
class.
import { jsonFileAliases } from "@tableland/node-helpers";
import { Database } from "@tableland/sdk";
const aliases = jsonFileAliases("/path/to/tableland.aliases.json");
const db = new Database({
aliases,
});
To use asynchronous file operations, you can set the async
flag to true
. By default, no flag is required and will use synchronous file operations (i.e., set to false
).
const aliases = await jsonFileAliases("./tableland.aliases.json", true);
Development
Get started with installing and building the project:
npm install
npm run build
Contributing
PRs accepted.
Small note: If editing the README, please conform to the standard-readme specification.
License
MIT AND Apache-2.0, © 2021-2023 Tableland Network Contributors