Skip to content
This repository has been archived by the owner on Oct 18, 2023. It is now read-only.
/ js-sdk Public archive

πŸ»β€β„οΈπŸ“¦ TypeScript SDK bindings and typings for charted-server

License

Notifications You must be signed in to change notification settings

charted-dev/js-sdk

Repository files navigation

WARNING

@ncharts/types has been merged into the main repository under the types/js folder. @ncharts/sdk is deprecated and shouldn't be used.

πŸ»β€β„οΈπŸ“¦ @ncharts/sdk

SDK bindings and typings for charted-server

@ncharts/sdk is a fully-typed SDK for interacting with charted-server. This is used by the web interface to send API calls to the API server.

Note: Since we couldn't have charted-dev or charted as the NPM organization, we went with @ncharts/, which is meant to be Noelware Charts Platform.

Usage

# NPM
$ npm i @ncharts/sdk

# Yarn
$ yarn add @ncharts/sdk

# pnpm
$ pnpm i @ncharts/sdk
import { createClient, AuthStrategy } from '@ncharts/sdk';

const client = createClient({
    baseURL: 'https://charts.noelware.org/api',
    auth: new AuthenticationStrategy.Basic('username', 'password')
});

const noel = await client.users('noel').get();
// => User

const noelRepos = await noel.repositories.all();
// => Repository[]

// Create a repository for 'noel/my-repo'
const repo = await noel.repositories.create({
    name: 'my-repo',
    description: 'Basic description for my repository',
    readme: `# Hello, world!
  This is the README for my repository that is available at https://charts.noelware.org/r/username/my-repo

  We can do *very* **wacky** ***things*** that is available for us to do.
`
});
// => Repository

License

@ncharts/sdk is released under the MIT License with love by Noelware. <3