w6w
Documentation

Docs live in the code.

The reference implementations are the spec. Each repo carries an RFC folder (the platform contract) and inline JSDoc on every exported surface. Start with the App RFC, then read the runtime.

RFCs

Living documents in w6w-core/rfcs.

Build an app

Fork a template and start editing. Both flavors satisfy the same app contract.

Packages

@w6w/types

Type-only shared model (no runtime).

@w6w/runtime

Sandboxed hook execution + describe() + loadApp().

@w6w/sources

Resolve source refs (file:, github:, storage-name) into local dirs.

@w6w/registry

Datastore-agnostic Registry orchestrator + PackManifest support.

@w6w/registry-types

DataStore contract + registry error codes.

@w6w/workflow

Workflow engine — plans + runs a graph of action invocations.

Getting started

# 1. Register the whole first-party pack
curl -X POST http://localhost:8787/api/apps/import \
  -H "content-type: application/json" \
  -d '{"source":"https://github.com/w6w-io/w6w-apps","refresh":true}'

# 2. Or just one app
curl -X POST http://localhost:8787/api/apps/import \
  -H "content-type: application/json" \
  -d '{"source":"https://github.com/w6w-io/w6w-apps","paths":["./apps/slack"]}'

The registry is a library — any host can wrap it. Reference server and studio implementations are in progress.