daccred
attest.so
TypeScript

A Unified Trust Framework

Last updated Jun 6, 2026
14
Stars
7
Forks
6
Issues
0
Stars/day
Attention Score
57
Language breakdown
TypeScript 55.7%
Rust 23.2%
MDX 7.9%
Cairo 4.2%
Shell 3.0%
TeX 2.9%
โ–ธ Files click to expand
README

attest.so

attest.so Logo

A Unified Trust Framework for Blockchain-Based Attestation Infrastructure

License: MIT GitHub Issues


Website & Docs

Official attestprotocol.org home Complete integration guides & API reference

Live Environments

| Network | Stellar | |---------|---------| | Sandbox | Try it now | | Testnet | Launch | | Mainnet | Launch |

Smart Contracts

Stellar (Mainnet) ยท View on Stellar.Expert

Stellar (Testnet) ยท View on Stellar.Expert

NPM Packages

npm install @attestprotocol/stellar-sdk
npm install @attestprotocol/cli

Browse on npm: stellar-sdk ยท cli


Overview

attest.so provides enterprise-grade infrastructure for builders to create "Reputation Authorities" on-chain with verifiable and comprehensive identity proofs on Stellar.

Our framework addresses critical challenges in Web3:

  • Identity Verification: Robust mechanisms for verifying identities across blockchain ecosystems
  • Interoperable Trust: Consistent attestation standards on Stellar
  • Reputation Management: Infrastructure for building and maintaining on-chain reputation
  • Scalable Solutions: Enterprise-ready attestation infrastructure for builders

Architecture

Core Concepts

  • Attestations: Verifiable, cryptographically signed claims made by an Authority about a Subject. They are structured according to a Schema and recorded on-chain.
  • Schemas: Structured templates that define the format and data types for an attestation. They act as a blueprint, ensuring that attestations are consistent and machine-readable.
  • Authorities: Trusted entities with the permission to issue, manage, and revoke attestations. Authorities are registered on-chain, and their integrity is verifiable.
  • Subjects: The entities (e.g., users, smart contracts, organizations) about which attestations are made.
  • Resolvers: On-chain programs responsible for interpreting and verifying attestations. They provide a standardized interface to locate, decode, and validate attestation data, and can be designed to handle complex logic such as dynamic schema resolution, revocation checks, and integration with off-chain data sources.

Key Components

1. Smart Contracts

Our Stellar implementation, built with Soroban, provides a robust framework for on-chain attestations. It leverages Rust for performance and safety, and is designed to integrate seamlessly with the Stellar ecosystem, including Horizon and the Stellar SDK.

contracts/stellar/
โ”œโ”€โ”€ protocol/         # Core attestation protocol logic
โ”œโ”€โ”€ resolvers/        # Schema and attestation resolvers
โ””โ”€โ”€ ...               # Other configuration and build files

Key Features:

  • Authority Management: Contracts for registering, verifying, and managing attestation authorities.
  • Core Protocol: The central logic for creating, revoking, and managing attestations.
  • Resolvers: Efficient on-chain logic to resolve schemas and attestations.
  • Soroban Integration: Fully leverages Soroban's features for storage, authorization, and events.
  • Fee and Levy System: Optional fee collection mechanism for monetizing attestation services.

2. SDK (Software Development Kit)

A TypeScript SDK that provides a unified interface for interacting with our attestation infrastructure on Stellar.

// Example: Interacting with Stellar contracts via the SDK
import { AttestClient } from '@attestprotocol/sdk';
import { Keypair } from '@stellar/stellar-sdk';

// Initialize client for Stellar const keypair = Keypair.fromSecret('YOURSTELLARSECRET_KEY'); const client = new AttestClient({ chain: 'stellar', network: 'testnet', secretKey: keypair.secret(), });

// Create an attestation on Stellar const attestation = await client.attest({ schema: 'did:attest:identity', subject: 'G...', // Subject's Stellar public key claims: { verified: true, level: 'premium' }, });

Core Functionality:

  • Blockchain connection management
  • Schema creation and registration
  • Attestation lifecycle management
  • TypeScript-first for a better developer experience

3. CLI (Command Line Interface)

A powerful command-line tool for developers and administrators to interact with the protocol directly from the terminal.

# Install CLI
npm install -g @attestprotocol/cli

Create a new attestation on the Stellar testnet

attest create \ --schema did:attest:identity \ --subject G... \ --chain stellar \ --network testnet \ --claims '{"verified": true}'

4. Documentation and Examples

Comprehensive documentation and example implementations to facilitate integration:

  • Interactive API reference
  • Integration guides
  • Example applications
  • Best practices

Project Structure

The repository follows a monorepo structure using pnpm workspaces:

attest.so/
โ”œโ”€โ”€ apps/
โ”‚   โ”œโ”€โ”€ docs/          # Documentation site (Mintlify)
โ”‚   โ””โ”€โ”€ horizon/       # Stellar blockchain indexer (Express.js + MongoDB)
โ”œโ”€โ”€ contracts/
โ”‚   โ””โ”€โ”€ stellar/       # Soroban contracts (protocol, resolvers)
โ”œโ”€โ”€ packages/
โ”‚   โ”œโ”€โ”€ sdk/           # Unified TypeScript SDK
โ”‚   โ”œโ”€โ”€ stellar-sdk/   # Stellar-specific SDK implementation
โ”‚   โ”œโ”€โ”€ cli/           # CLI tool
โ”‚   โ””โ”€โ”€ core/          # Core SDK abstractions
โ””โ”€โ”€ examples/

See NAMING.md for detailed information about naming conventions and directory structure standards.

Technical Stack

  • SDK/CLI: TypeScript, Node.js, Stellar SDK, Horizon Client
  • Smart Contracts: Rust with Soroban
  • Developer Experience:
- pnpm workspaces for monorepo management - TypeScript - ESLint/Prettier - Vitest for testing

Getting Started

Installation

# Clone the repository
git clone https://github.com/daccred/attest.so.git
cd attest.so

Install dependencies

pnpm install

Build all packages

pnpm build

Running the Development Environment

# Start the documentation site
pnpm run dev:docs

Run tests

pnpm test

Working with Contracts

# Build Soroban contracts
cd contracts/stellar
soroban contract build

Deploy to Stellar testnet

soroban contract deploy \ --wasm target/wasm32-unknown-unknown/release/authority.wasm \ --network testnet \ --source <YOUR_ACCOUNT>

Contributing

Contributions are welcome! Please see our CONTRIBUTING.md for guidelines.

  • Fork the repository
  • Create your feature branch (git checkout -b feature/amazing-feature)
  • Commit your changes (git commit -m 'feat: add amazing feature')
  • Push to the branch (git push origin feature/amazing-feature)
  • Open a Pull Request

Setting up Rust Analyzer

With Rust Analyzer installed, you can configure it to recognize our Rust-based contract project:

{
  "rust-analyzer.linkedProjects": [
    "contracts/stellar/Cargo.toml"
  ]
}

Resources & Links


Awards & Recognition

Solana Logo

Solana Radar Hackathon

Public Goods Award Winner

Recognized for building critical public infrastructure for the Solana ecosystem

View on X
Stellar Logo

Stellar Community Fund

SCF Award Recipient

Selected for advancing attestation infrastructure on the Stellar network

View on SCF


License

This project is licensed under the MIT License.

๐Ÿ”— More in this category

ยฉ 2026 GitRepoTrend ยท daccred/attest.so ยท Updated daily from GitHub