Documentation

DivviUp Typescript Client

Coverage Status CI

docs for main

The main branch is under continuous development and will usually be partway between DAP and VDAF drafts. divviup-ts uses stable release branches to maintain implementations of different draft versions. Artifacts for some draft version are published from a corresponding release/dap-draft-xy branch. Only supported release branches receive dependency updates and backports.

Package version Git branch Protocol version Conforms to specification? Status
N/A release-dap-draft-02 draft-ietf-ppm-dap-02 Yes Unmaintained
N/A release-dap-draft-03 draft-ietf-ppm-dap-03 Yes Unmaintained as of May 22, 2023
@divviup/dap@0.1 release-dap-draft-04 draft-ietf-ppm-dap-04 Yes Unmaintained as of June 24, 2024
@divviup/dap@0.7 release-dap-draft-07 draft-ietf-ppm-dap-07 Yes Unmaintained as of June 24, 2024
@divviup/dap@0.9 main draft-ietf-ppm-dap-09 Yes Supported
VDAF Package Prio3 Package Git branch Protocol version Conforms to specification? Status
N/A N/A release/dap-draft-03 draft-irtf-cfrg-vdaf-03 Yes Unmaintained as of May 22, 2023
@divviup/vdaf@0.1 @divviup/prio3@0.1 release/dap-draft-04 draft-irtf-cfrg-vdaf-05 Yes Unmaintained as of June 24, 2024
@divviup/vdaf@0.7 @divviup/prio3@0.7 release/dap-draft-07 draft-irtf-cfrg-vdaf-07 Yes Unmaintained as of June 24, 2024
@divviup/vdaf@0.8 @divviup/prio3@0.8 main draft-irtf-cfrg-vdaf-08 Yes Supported
$ npm add @divviup/dap
import Task from "@divviup/dap";

const task = new Task({
type: "sum",
bits: 8,
id: "3XTBHxTtUAtI516GeXZsVIKjBPYVNIYmF94vEBb4jcY",
leader: "https://dap.api.divviup.org",
helper: "https://dap.example.com",
timePrecisionSeconds: 3600,
});

await task.sendMeasurement(42);

DivviUp publishes bundled and minified builds suitable for use from a script tag. Task will be available on globalThis as divviup.dap.Task.

<script
src="https://cdn.jsdelivr.net/npm/@divviup/dap@0.7.0/dist/browser.js"
crossorigin="anonymous"
integrity="sha384-vDbUcIcXsbrWLhKwkF/wwM0cnW+5y9fiPA695EnPd58okNZwWuLsR0NF98zzyNkT">
</script>
<script
src="https://unpkg.com/@divviup/dap@0.7.0/dist/browser.js"
crossorigin="anonymous"
integrity="sha384-vDbUcIcXsbrWLhKwkF/wwM0cnW+5y9fiPA695EnPd58okNZwWuLsR0NF98zzyNkT">
</script>