solraildev/solrail-core-sdk — explained in plain English
Analysis updated 2026-05-18
Shield SOL or USDC into a private pool before sending it to hide sender, recipient, and amount.
Build a wallet or dapp on top of the TypeScript SDK to integrate private Solana transfers.
Run the local indexer, relayer, and web wallet to test the full shield and unshield flow.
Study a working example of Circom Groth16 join-split circuits paired with Anchor programs.
| solraildev/solrail-core-sdk | 0xkinno/astraea | 0xkinno/halcyon | |
|---|---|---|---|
| Stars | 0 | 0 | 0 |
| Language | TypeScript | TypeScript | TypeScript |
| Setup difficulty | hard | hard | hard |
| Complexity | 5/5 | 4/5 | 4/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires installing Circom, snarkjs, Anchor, and the Solana toolchain before anything builds.
SolRail is a privacy tool for the Solana blockchain that lets someone shield their SOL or USDC tokens into a private pool, send them privately to someone else while they are inside that pool, and later unshield them back into a normal public wallet. The project is described as an early MVP covering just those three actions: shielding, private transfers, and unshielding. Under the hood it combines several pieces. The privacy guarantees come from zero knowledge circuits built with Circom and a proving system called Groth16, arranged in a join split pattern that takes two inputs and produces two outputs per private transaction. The on chain logic runs as Solana programs written with the Anchor framework, split into a pool program and a separate verifier program. A dedicated crypto package handles the underlying building blocks, including a hash function called Poseidon, the private notes that represent hidden balances, and a Merkle tree used to prove a note exists without revealing which one it is. On top of all this sits a TypeScript SDK for developers to build against, plus an indexer and a relayer service, and a React based wallet app for end users. The README lays out what stays private and what does not. While tokens sit inside the shielded pool, the sender's identity, the recipient's identity, and for private sends even the token type and amount are hidden. What remains visible on chain is the initial deposit into the pool, including who made it and how much, the final withdrawal out of the pool, the pool's total value locked, and general timing information about when transactions happen. Private addresses inside the system use a distinct zkSol prefix so they can be told apart from normal Solana addresses. Beyond a short quick start showing how to install dependencies, build the zero knowledge circuits and Anchor programs, and run the indexer, relayer, and web app locally for development, the README does not go into further detail about the project's design or its current state of completeness.
A privacy MVP for Solana that lets users shield SOL or USDC into a private pool, transfer privately, and unshield back to a public wallet.
Mainly TypeScript. The stack also includes TypeScript, Circom, Anchor.
The README does not state a license, so terms of use are unclear.
Setup difficulty is rated hard, with roughly 1day+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Don't trust strangers blindly. Verify against the repo.