0.6.13 • Published 9 months ago

@dxos/functions v0.6.13

Weekly downloads
-
License
MIT
Repository
-
Last release
9 months ago

@dxos/functions

Functions SDK.

Installation

pnpm i @dxos/functions

Writing functions

Create a manifest file at the package root:

functions:
  hello:
    description: Test function.

NOTE: The function name must match the filename (e.g., src/functions/hello.ts).

Create an example function:

import { FunctionContext } from '@dxos/functions';

export default (event: any, context: FunctionContext) => {
  const identity = context.client.halo.identity.get();
  return context
    .status(200)
    .succeed({ 
      message: `Hello ${identity?.profile?.displayName}` 
    });
};

Running functions with the dev server:

Configure the agent to run functions on a given port:

# ~/.config/dx/profile/default.yml
runtime:
  agent:
    functions:
      port: 7001

Start functions in dev mode (from the related package):

dx function dev -r ts-node/register --verbose

NOTE: -r ts-node/register configures native TypesScript support.

Install nodemon to support live reloading:

npm i -g nodemon

nodemon -w ./src -e ts --exec $(git rev-parse --show-toplevel)/packages/devtools/cli/bin/dev \
  function dev -r ts-node/register --verbose

Invoking functions

NOTE: The port (7001) must match the one in config.

curl http://localhost:7001/dev/hello -X POST -H 'Content-Type: application/json' -w '\n' --data '{ "message": "Hello World!" }' 

DXOS Resources

Contributions

Your ideas, issues, and code are most welcome. Please take a look at our community code of conduct, the issue guide, and the PR contribution guide.

License: MIT Copyright 2022 © DXOS

0.6.13

9 months ago

0.6.12

9 months ago

0.5.4

1 year ago

0.5.3

1 year ago

0.5.6

1 year ago

0.5.5

1 year ago

0.6.12-main.78ddbdf

10 months ago

0.6.8-main.3be982f

11 months ago

0.6.10-main.e92b5eb

11 months ago

0.6.8-main.046e6cf

11 months ago

0.6.12-main.15a606f

10 months ago

0.6.12-main.5a87ad5

10 months ago

0.6.12-main.7907542

10 months ago

0.6.12-main.5cc132e

10 months ago

0.6.3-main.7853476

12 months ago

0.6.3-main.0308ae2

12 months ago

0.5.8

1 year ago

0.5.7

1 year ago

0.6.12-main.568932b

10 months ago

0.6.12-main.ed7cda7

10 months ago

0.6.10-main.48c066e

10 months ago

0.6.10-main.3cfcc89

10 months ago

0.6.3-main.d1c1553

12 months ago

0.6.12-main.89e9959

10 months ago

0.6.10-main.bbdfaa4

10 months ago

0.6.6-main.e1a6e1f

11 months ago

0.6.12-main.c4a728f

10 months ago

0.6.3-main.d16c079

12 months ago

0.6.12-main.f9d0246

10 months ago

0.6.7

11 months ago

0.6.6

11 months ago

0.6.9

11 months ago

0.6.8

11 months ago

0.6.3

12 months ago

0.6.2

1 year ago

0.6.5

12 months ago

0.6.4

12 months ago

0.6.1

1 year ago

0.6.0

1 year ago

0.6.3-main.a95c491

12 months ago

0.6.10

10 months ago

0.6.11

10 months ago

0.6.3-main.8eec022

12 months ago

0.6.12-main.c974201

10 months ago

0.5.2

1 year ago

0.5.0

1 year ago

0.4.9

1 year ago

0.4.8

1 year ago

0.4.7

1 year ago

0.4.6

1 year ago

0.4.5

1 year ago

0.4.4

1 year ago

0.4.3

1 year ago

0.4.2

1 year ago

0.4.1

1 year ago

0.4.0

1 year ago

0.3.10

2 years ago

0.3.9

2 years ago

0.3.8

2 years ago

0.3.7

2 years ago

0.3.6

2 years ago

0.3.5

2 years ago

0.3.4

2 years ago

0.3.3

2 years ago

0.3.2

2 years ago

0.3.1

2 years ago

0.3.0

2 years ago

0.2.3

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago

0.1.57

2 years ago

0.1.56

2 years ago

0.1.55

2 years ago

0.1.54

2 years ago

0.1.53

2 years ago

0.1.52

2 years ago