UNPKG

@hasura/ndc-sdk-typescript

Version:

This SDK is mostly analogous to the Rust SDK, except where necessary.

62 lines (37 loc) 1.68 kB
# Native Data Connector SDK for TypeScript This SDK is mostly analogous to the Rust SDK, except where necessary. All functions of the Connector interface are analogous to their Rust counterparts. ## Installing ### From NPM ```sh npm install @hasura/ndc-sdk-typescript ``` ### From this repo: The repo does not include build artifacts, so you'll need to run the build step: ```sh npm install https://github.com/hasura/ndc-sdk-typescript cd node_modules/ndc-sdk-typescript npm install npm run build ``` ## Using this SDK The SDK exports a `start` function, which takes a `connector` object, that is an object that implements the `Connector` interface defined in `connector.ts` This function should be your starting point. A connector can thus start liks so: ```ts const connector: Connector = { /* implementation of the Connector interface removed for brevity */ }; start(connector); ``` Please refer to the [NDC Spec](https://hasura.github.io/ndc-spec/) for details on implementing the Connector interface. ## Publishing a new version of the SDK to NPM Pushing a new version tag will automatically publish the tag to NPM provided that it matches the version specified in `package.json`. See `.github/workflows/build_test_publish.yaml` for details. ## Regenerating Schema Types The NDC spec types are generated from the NDC Spec Rust types. First, a JSON schema is derived from the Rust types into `./src/schema/schema.generated.json` (see `./typegen/src/main.rs`). Then the TypeScript types are generated from that JSON Schema document into `./src/schema/schema.generated.ts`. In order to regenerate the types, run ``` > npm run regenerate-schema ```