Skip to content

Yerimahjr/stellar-developer-toolkit

Repository files navigation

Stellar Developer Toolkit

A release-ready starter monorepo for building Stellar developer tools with a Rust backend, a React dashboard, Horizon API integrations, and a sample Soroban contract.

Features

  • Network dashboard with Horizon health, version, ledger, and passphrase details.
  • Testnet/mainnet switcher foundation shared across frontend API calls.
  • Wallet validator for Stellar public account IDs.
  • Account inspector for balances with invalid and unfunded account guidance.
  • Transaction inspector for recent account activity.
  • Asset Explorer for Horizon asset lookup by code and issuer.
  • Rust Axum backend with typed Horizon client wrappers.
  • Soroban developer notes contract with tests.
  • Docker Compose setup for local full-stack development.

Tech Stack

  • Backend: Rust, Axum, Tokio, Reqwest, Serde, Tower HTTP, Tracing.
  • Frontend: React, TypeScript, Vite, React Router, Lucide icons.
  • Smart contracts: Soroban SDK.
  • Infrastructure: Docker, Docker Compose, GitHub Actions.

Screenshots

Add screenshots before publishing the GitHub release:

  • docs/screenshots/dashboard.png
  • docs/screenshots/account-inspector.png
  • docs/screenshots/asset-explorer.png
  • docs/screenshots/transaction-inspector.png

Prerequisites

  • Rust stable toolchain.
  • Node.js 20 or newer.
  • npm 10 or newer.
  • Docker Desktop, optional for Compose.

Environment

Copy the example environment file and adjust values as needed:

cp .env.example .env

Important settings:

  • STELLAR_NETWORK: default backend network, usually testnet or public.
  • HORIZON_URL: optional custom Horizon URL.
  • BACKEND_HOST and BACKEND_PORT: backend bind settings.
  • CORS_ALLOWED_ORIGIN: frontend origin allowed by the backend.
  • VITE_API_BASE_URL: frontend API base URL, usually http://localhost:8080.

Quick Start

Run the full stack with Docker:

docker compose up --build

Local Development

Install frontend dependencies:

cd frontend
npm install

Run the backend:

cd backend
cargo run

Run the frontend in another terminal:

cd frontend
npm run dev

Run the Soroban contract tests:

cd smart-contracts/notes-contract
cargo test

Build Checks

Run these before opening a release PR:

cargo build
cd frontend
npm run build

API

  • GET /health
  • GET /api/network/status?network=testnet
  • GET /api/wallets/:address/validate
  • GET /api/accounts/:account_id/balances?network=testnet
  • GET /api/accounts/:account_id/transactions?network=testnet&limit=20&cursor=...
  • GET /api/assets?network=testnet&asset_code=USDC&asset_issuer=G...

Supported network query values are testnet, public, and mainnet as an alias for public. If no query value is provided, the backend uses STELLAR_NETWORK.

Roadmap

  • Add saved network preferences.
  • Add single transaction hash lookup.
  • Add trustline and payment operation explorers.
  • Add contract deploy and invoke helpers.
  • Add frontend tests around API error states.
  • Add release screenshots and hosted demo links.

Contributing

  1. Create a focused branch from main.
  2. Keep backend, frontend, and contract changes scoped to the issue.
  3. Run cargo build and npm run build before submitting.
  4. Update docs when changing setup, API behavior, or user-facing workflows.
  5. Open a pull request with a short summary, screenshots for UI changes, and test notes.

License

MIT

About

No description, website, or topics provided.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors