|
1 | | -# Blockchain Commons TypeScript |
| 1 | +# Blockchain Commons - TypeScript |
| 2 | + |
| 3 | +A comprehensive TypeScript monorepo implementing Blockchain Commons specifications for cryptographic data encoding, privacy-preserving envelopes, and secure information structures. |
| 4 | + |
| 5 | +This repository contains TypeScript implementations of specifications developed by [Blockchain Commons](https://www.blockchaincommons.com/), a research and development cooperative of blockchain and digital asset developers. |
| 6 | + |
| 7 | +## 📦 Packages |
| 8 | + |
| 9 | +### Core Libraries |
| 10 | + |
| 11 | +| Package | Description | Version | |
| 12 | +|---------|-------------|---------| |
| 13 | +| [**dcbor**](packages/dcbor) | Deterministic CBOR encoding - a specification for serializing data in a canonical, reproducible format. Ensures identical byte sequences for cryptographic operations and blockchain applications. [📖 API Docs](https://leonardocustodio.github.io/bc-dcbor-ts/) | `1.0.0-alpha.1` | |
| 14 | +| [**envelope**](packages/envelope) | Gordian Envelope - privacy-preserving data structures with encryption, elision (selective redaction), and cryptographic signatures. Includes prelude submodule for advanced operations. | `1.0.0-alpha.1` | |
| 15 | + |
| 16 | +## 🎮 Applications |
| 17 | + |
| 18 | +### [Playground](apps/playground) |
| 19 | +An interactive web application for experimenting with dCBOR encoding, Envelope creation, and cryptographic operations. |
| 20 | + |
| 21 | +**Live Demo:** https://leonardocustodio.github.io/blockchain-commons |
| 22 | + |
| 23 | +**Try it locally:** |
| 24 | +```bash |
| 25 | +bun dev |
| 26 | +``` |
| 27 | + |
| 28 | +## 🚀 Quick Start |
| 29 | + |
| 30 | +### Prerequisites |
| 31 | +- Node.js >= 16.0.0 |
| 32 | +- [Bun](https://bun.sh/) (>=1.2.22) - Package manager and runtime |
| 33 | + |
| 34 | +### Installation |
| 35 | + |
| 36 | +```bash |
| 37 | +# Install dependencies |
| 38 | +bun install |
| 39 | + |
| 40 | +# Build all packages |
| 41 | +bun run build |
| 42 | + |
| 43 | +# Run development servers |
| 44 | +bun run dev |
| 45 | + |
| 46 | +# Run linting |
| 47 | +bun run lint |
| 48 | + |
| 49 | +# Type checking |
| 50 | +bun run check-types |
| 51 | +``` |
| 52 | + |
| 53 | +## 📚 Specifications & Reference Implementations |
| 54 | + |
| 55 | +This project implements open specifications maintained by Blockchain Commons: |
| 56 | + |
| 57 | +- **[Deterministic CBOR (dCBOR)](https://github.com/BlockchainCommons/bc-dcbor-rust)** - A deterministic binary encoding format based on CBOR (RFC 7049) |
| 58 | +- **[Gordian Envelope](https://github.com/BlockchainCommons/bc-envelope-rust)** - A privacy-preserving data structure specification with encryption, elision, and signature support |
| 59 | + |
| 60 | +For complete specifications and reference implementations in other languages, visit: |
| 61 | +- [Blockchain Commons GitHub](https://github.com/BlockchainCommons) |
| 62 | +- [Blockchain Commons Documentation](https://www.blockchaincommons.com/) |
0 commit comments