Skip to content

Andamio-Platform/node-sdk

Repository files navigation

Andamio Node SDK

Andamio SDK

npm version License: Apache 2.0 TypeScript

The official Node.js SDK for the Andamio Protocol - empowering organizations to teach skills and distribute contribution opportunities through blockchain-based education and collaboration tools.

🚀 Quick Start

Installation

npm install @andamiojs/sdk
yarn add @andamiojs/sdk
pnpm add @andamiojs/sdk

Basic Usage

import { AndamioSDK } from '@andamiojs/sdk';

// Initialize the SDK
const andamio = new AndamioSDK(
  baseUrl,
  "Preprod" // or "Mainnet"
);

// Check alias availability
const data = await sdk.provider.overview.checkAliasAvailability('my-alias')

// Get User Information
const userInfo = await sdk.provider.overview.getUserData('my-alias')

📚 Features

✅ Implemented Features

  • Alias Management

    • ✅ Alias availability checking
  • Contributor Management

    • ✅ Contributor State UTXO retrieval by alias
    • ✅ Escrow UTXO management by alias
  • Course & Assignment Management

    • ✅ Assignment UTXO retrieval by alias
    • ✅ Course UTXO retrieval by alias
    • ✅ Module Reference UTXO by module token name
  • Access Control

    • ✅ User Access Token UTXO by alias
    • ✅ Address holding access token by alias
  • Governance & Validation

    • ✅ Governance Validator UTXO by Course ID or Project ID
  • Transaction Support

    • ✅ Commit to Assignment (Student)
    • ✅ Mint Course Module (Course Creator)
    • ✅ Accept Assignment (Course Creator)

🚧 Coming Soon

  • Policy Management

    • All Contributor Policies
    • Contributor Policy by Project ID
  • Treasury Management

    • Treasury Fund UTXOs
    • Treasury Projects UTXOs
    • Treasury Projects UTXO by project hash
    • Treasury Projects UTXO by escrow hash
  • Data Parsers

    • Global State UTXO Datum Parser
    • Escrow UTXO Datum Parser
    • Assignment UTXO Datum Parser
    • Course UTXO Datum Parser
    • Module Ref UTXO Datum Parser
  • Transaction Support

    • Mesh U5C Evaluator support

🔧 Configuration

SDK Configuration Options

interface AndamioSDKProps {
  baseUrl: string; // UTxORPC URL + Port
  network: 'Mainnet' | 'Preprod';
  dmtr_api_key?: string; // If you are using demeter
}

const andamio = new AndamioSDK(
  "https://preprod.utxorpc-v0.demeter.run:443",
  "Preprod",
  "dmtr_utxorpc...."
);

📝 License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.

🆘 Support

🔗 Related Projects


Learn skills · Contribute value · Cultivate community

Contributors