Skip to content

0xPARC/pod2-client

Repository files navigation

POD2 Client Tools and Experiments

This repo contains experimental client tools and applications for POD2.

Prerequisites

  • Rust and Cargo
  • pnpm for web components

Setup

By default, we use the main branch for POD2 from GitHub. You can override this to use a local repository by creating a ./cargo/config.toml file and overriding the path. An example file at .cargo/config.toml.example shows how to do this, and can be copied and edited.

Usage

To run the playground components, simply run ./playground.sh.

Components

./server

The server provides a basic HTTP API for interacting with POD2 and a local POD collection. The local POD collection is managed in a SQLite database.

./solver

The solver provides a Datalog engine for POD Request queries. It is written in Rust and is used by the server to provide certain APIs.

./packages/pod2js

The pod2js library provides TypeScript types for the core POD2 data structures. These are derived from the JSON Schema for the POD2 types, which is created in Rust using the schemars crate. The library also provides validation functions for serialized SignedPod and MainPod JSON data.

./apps/playground-client

The playground-client provides a user interface for interacting with the server. Specifically it allows users to import and export PODs, to create new SignedPods via a form-based UI, and to create new MainPods using POD Requests.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •