@urbit/api
TypeScript icon, indicating that this package has built-in type declarations

2.3.0 • Public • Published

Urbit API in JavaScript

This package simplifies the process of working with Urbit's APIs into fluent, typed functions organized by app. Pairs well with @urbit/http-api. Compare:

Without:

import UrbitInterface from '@urbit/http-api';
const api: UrbitInterface = useApi();
api.poke({
  app: 'settings-store',
  mark: 'settings-event',
  json: {
    'put-entry': {
      'bucket-key': bucket,
      'entry-key': key,
      'value': value
    }
  }
});

With:

import UrbitInterface from '@urbit/http-api';
import { settings } from '@urbit/api';
const api: UrbitInterface = useApi();
api.poke(settings.putEntry(bucket, key, value));

You may import single functions

import { putEntry } from '@urbit/api';

or whole apps:

import { settings } from '@urbit/api';

This package also provides types and utilities for working with Urbit's internal data structures, such as Nouns, Das, Tas, and so forth.

This package was originally developed as part of Tlon's Landscape client and therefore the best reference material exists there.

Readme

Keywords

none

Package Sidebar

Install

npm i @urbit/api

Weekly Downloads

146

Version

2.3.0

License

MIT

Unpacked Size

2.55 MB

Total Files

131

Last publish

Collaborators

  • gordoncc
  • matildepark_
  • mwvd
  • nocsyx-lassul
  • _waiyaki_
  • yosoyubik
  • tylershuster
  • wolref-podlex
  • liam-fitzgerald