Suggest Cardano Tooling
Help the developer choose the right tools, SDKs, and libraries for their Cardano project based on their requirements and preferred programming language.
When to use
- Developer is starting a new Cardano project and needs tool recommendations
- Comparing SDKs (Mesh vs Evolution SDK vs PyCardano vs others)
- Choosing a smart contract language (Aiken vs Plutus vs others)
- Picking a Haskell off-chain stack (cardano-ledger + CHaP + haskell.nix)
- Selecting infrastructure components (indexers, APIs, testing tools)
- Evaluating wallet integration options
- Understanding which CIPs are relevant to their project
- Deciding whether a project needs Layer 2 / scaling (Hydra) or can stay on L1
When NOT to use
- Already chosen tools and needs help using them (use specific tool skills)
- Building a transaction once the stack is chosen (use
build-transaction)
- Setting up a devnet (use
setup-devnet skill)
- Querying chain data with a specific provider (use
query-chain skill)
- Detailed wallet integration steps (use
connect-wallet skill)
Key principles
- Start from the project requirements, not the tools. Understand what they are building before recommending.
- Language preference matters. A Python developer should know about PyCardano; a TypeScript developer about Mesh and Evolution SDK; a Haskell developer about cardano-ledger, CHaP, and haskell.nix.
- Recommend production-ready tools first. Flag experimental tools clearly.
- Fewer tools is better. Do not recommend 10 options when 2 will do.
- Consider the full stack. Smart contracts, off-chain code, infrastructure, testing, and deployment are all part of the picture.
Workflow
Step 1: Understand the project
Ask the developer (if not already clear):
- What are you building? (dApp, DeFi protocol, NFT platform, governance tool, data analytics, wallet, library)
- What programming language(s) do you prefer?
- Do you need smart contracts? If yes, how complex?
- What is your deployment target? (mainnet, testnet, local devnet)
- What is your experience level with Cardano? (new, intermediate, advanced)
- Any existing infrastructure? (running a node, using hosted APIs)
- Do you require high throughput, sub-second-finality, or any other requirement that L1 is not fit to handle? (micro-payments, sub-second-finality, etc.)
Step 2: Search Bundled Documentation
Search the bundled documentation for relevant content:
${CLAUDE_SKILL_DIR}/../../docs/sources/mesh-sdk/ - Mesh SDK docs
${CLAUDE_SKILL_DIR}/../../docs/sources/evolution-sdk/ - Evolution SDK docs
${CLAUDE_SKILL_DIR}/../../docs/sources/aiken/ - Aiken language docs
${CLAUDE_SKILL_DIR}/../../docs/sources/ogmios/ - Ogmios WebSocket bridge docs
${CLAUDE_SKILL_DIR}/../../docs/sources/blockfrost-openapi/ - Blockfrost API docs
${CLAUDE_SKILL_DIR}/../../docs/sources/hydra/ - Hydra (Layer 2 state channels) docs
${CLAUDE_SKILL_DIR}/../../docs/sources/tx3/ - Tx3 interface DSL and toolchain docs
${CLAUDE_SKILL_DIR}/../../docs/sources/chap/ - CHaP (Cabal index + haskell.nix inputMap)
${CLAUDE_SKILL_DIR}/../../docs/sources/haskell-nix/ - haskell.nix flakes and source-repository-package hashes
${CLAUDE_SKILL_DIR}/../../docs/sources/iohk-nix/ - crypto overlays (libsodium-vrf, libblst)
${CLAUDE_SKILL_DIR}/../../docs/sources/cardano-ledger/ - ledger types and Conway tx validation
${CLAUDE_SKILL_DIR}/../../docs/sources/apollo/ - Apollo (Go) tx builder docs and API source
${CLAUDE_SKILL_DIR}/../../docs/sources/gouroboros/ - gOuroboros (Go) protocol and ledger API source
Go sources mirror .go files, so their API reference is the doc comment above each exported identifier. Start with a package's doc.go for the overview, then Grep a type or function name rather than looking for a prose manual.
Step 3: Search the ecosystem map
Reference the ecosystem map for the full landscape:
File: skills/suggest-tooling/references/ecosystem-map.md
Step 4: Recommend by category
Smart Contract Languages
| Language |
Best for |
Language base |
Status |
| Aiken |
Most new projects, performance-critical validators |
Own syntax (Rust-like) |
Production |
| Plinth (formerly Plutus Tx) |
Haskell teams, complex on-chain logic |
Haskell |
Production |
| OpShin |
Python developers writing validators |
Python |
Production |
| Pebble |
TypeScript developers wanting on-chain code in TS (@harmoniclabs/pebble, successor of Plu-ts) |
TypeScript |
Production |
| Scalus |
Scala/JVM teams |
Scala |
Production |
| Helios |
Simple validators, quick prototyping |
Own syntax (JS-like) |
Production |
Default recommendation: Aiken. Best tooling, fastest compilation, growing community, excellent documentation. Unless the team has a strong reason to use another language.
Off-Chain SDKs
| SDK |
Language |
Best for |
Status |
| Mesh SDK |
TypeScript/JS |
Full-stack dApp development, beginners |
Production |
| Evolution SDK |
TypeScript/JS |
IntersectMBO's canonical Lucid-lineage successor. Type-safe, Effect-based composable tx building (Client.make(...).withBlockfrost(...).newTx().payToAddress(...).build()) |
Production |
| PyCardano |
Python |
Python backends, scripting, data science |
Production |
| Cardano CLI |
Shell |
DevOps, scripting, node operators |
Production |
| cardano-js-sdk |
TypeScript |
Lace wallet ecosystem, full node interaction |
Production |
| Blaze |
TypeScript |
Lightweight, modular tx building |
Production |
| Cardano Java Client Lib |
Java/Kotlin |
JVM backends, Android |
Production |
| whisky |
Rust |
Transaction building for dApps (Mesh-like API; young project by SIDAN Lab) |
Production |
| Pallas |
Rust |
Low-level building blocks: network protocols, ledger primitives, indexers (foundation of Dolos, Oura, Amaru) |
Production |
| Tx3 |
DSL → TS/Rust/Go/Python |
Interface-driven alternative: declare a protocol's transactions in a .tx3 file, generate typed clients across languages (like an ABI/OpenAPI for UTxO protocols). Good for multi-language teams or publishing a protocol others integrate. TxPipe. |
Beta (pre-1.0) |
| cardano-ledger |
Haskell |
Era types and Conway tx construction (cardano-ledger-api, cardano-ledger-conway, plutus-tx for ToData/FromData). Same types the node validates. Built with haskell.nix + CHaP, not cabal-on-system-GHC. |
Production |
| cardano-api |
Haskell |
Client façade over ledger/consensus/network. Use when you want that wrapper; not required if you already speak ledger types. |
Production |
| Atlas |
Haskell |
Higher-level PAB-style backend. Last library commit 2026-02; fails this repo's 6-month source bar. Mention only; do not start a new project on it. |
Maintenance unclear |
| Apollo |
Go |
Go backends and services: fluent tx building, pluggable chain backends (Blockfrost/Maestro/Ogmios/UTxORPC) |
Production |
| gOuroboros |
Go |
Low-level building blocks: mini-protocol implementations, ledger types, CBOR codecs (Go counterpart to Pallas) |
Production |
Default recommendation by language:
- TypeScript/JavaScript: Mesh SDK (comprehensive, well-documented, great for beginners) or Evolution SDK (type-safe, Effect-based composable builder)
- Python: PyCardano
- Rust: Pallas
- Java/Kotlin: Cardano Java Client Lib
- Haskell: cardano-ledger via haskell.nix + CHaP. On-chain default stays Aiken (CIP-57
plutus.json); do not switch to Plinth unless the team is writing validators in Haskell. Search docs/sources/chap/README.md for the repository stanza and inputMap.
- Go: Apollo for transaction building, gOuroboros for protocol and ledger primitives
Go adoption is lower than TypeScript or Python, so expect fewer tutorials and smaller communities. Weigh that against an existing Go backend: rewriting a service in TypeScript to gain SDK maturity is rarely the cheaper trade.
Infrastructure
| Tool |
Purpose |
Type |
| Blockfrost |
Chain data API |
Hosted |
| Koios |
Chain data API |
Hosted (community) |
| Ogmios |
Node WebSocket bridge |
Self-hosted |
| Kupo |
UTxO indexer |
Self-hosted |
| DB-Sync |
Full chain PostgreSQL |
Self-hosted |
| Oura |
Event pipeline |
Self-hosted |
| Adder |
Event pipeline (Go, embeddable) |
Self-hosted |
| Dingo |
Go node + UTxORPC/Blockfrost/Mesh APIs (pre-production) |
Self-hosted |
| Yaci DevKit |
Local devnet |
Self-hosted |
Default recommendation: Blockfrost for getting started (easy, hosted). Ogmios + Kupo for production self-hosted.
Scaling / Layer 2
Most projects do not need Layer 2. Cardano L1 handles the large majority of dApp workloads. Reach for L2 only against a specific, confirmed throughput or latency requirement L1 cannot meet and validate that the requirement is real before recommending it. If there's a posibility of needing an L2, hand off the decision to the suggest-scalability skill.
Testing
| Tool |
Purpose |
| Aiken built-in tests |
Unit and property tests for Aiken validators |
| Yaci DevKit |
Local devnet for integration tests |
| Preview testnet |
Public testnet with frequent hard forks |
| Preprod testnet |
Public testnet mirroring mainnet |
| tx-village |
Transaction-level testing framework |
Wallet Integration
| Tool |
Purpose |
| Mesh SDK |
React hooks and components for wallet connection |
| CIP-30 direct |
Vanilla JS wallet connection |
| CIP-95 |
Governance extensions for wallets |
| WalletConnect |
Mobile wallet connection |
Step 5: Recommend a stack
Based on the project requirements, recommend a concrete stack. Example stacks:
Beginner dApp (TypeScript)
- Smart contracts: Aiken
- Off-chain: Mesh SDK
- Infrastructure: Blockfrost
- Testing: Aiken tests + Yaci DevKit
- Wallet: Mesh wallet hooks
DeFi Protocol (TypeScript, advanced)
- Smart contracts: Aiken
- Off-chain: Evolution SDK or Blaze
- Infrastructure: Ogmios + Kupo (self-hosted)
- Testing: Aiken property tests + Preview testnet
- Wallet: CIP-30 direct integration
Python Backend
- Smart contracts: Aiken (or OpShin if team prefers Python on-chain too)
- Off-chain: PyCardano
- Infrastructure: Blockfrost or Koios
- Testing: Aiken tests + pytest with PyCardano
Go Backend
- Smart contracts: Aiken
- Off-chain: Apollo for tx building, gOuroboros for ledger types and direct node protocols
- Infrastructure: blockfrost-go (hosted) or UTxORPC Go SDK (provider-agnostic gRPC)
- Testing: Aiken tests + Go
testing against Yaci DevKit
Data Analytics Platform
- Infrastructure: DB-Sync (SQL) + Oura (streaming)
- Language: Python or SQL
- No smart contracts needed
Governance Tool
- Off-chain: Mesh SDK (CIP-95 support)
- Infrastructure: Blockfrost or Koios (governance endpoints)
- Wallet: CIP-30 + CIP-95
- Reference: CIP-1694 for governance actions
Haskell service (Aiken on-chain, ledger off-chain)
- Smart contracts: Aiken → CIP-57
plutus.json
- Off-chain: cardano-ledger-* +
plutus-tx / plutus-ledger-api
- Build: haskell.nix flake, CHaP
inputMap, iohk-nix crypto + haskell-nix-crypto overlays (CHaP README: those overlays supply libblst and friends)
- Pin: dual
index-state (Hackage + cardano-haskell-packages); align the CHaP flake input to a cardano-node release
- Then hand off to
build-transaction (SDK cardano-ledger)
Step 6: Mention relevant CIPs
Based on the project type, flag relevant CIPs:
| Project type |
Relevant CIPs |
| Any dApp |
CIP-30 (wallet bridge), CIP-57 (blueprints) |
| Token/NFT |
CIP-25 (NFT metadata), CIP-68 (rich FTs/NFTs) |
| Governance |
CIP-1694 (governance), CIP-95 (wallet governance) |
| Multi-sig |
CIP-1854 (multi-sig wallets) |
| Metadata |
CIP-20 (tx metadata), CIP-25 (NFT metadata) |
| DEX |
CIP-35 (on-chain message signing) |
Step 7: Flag trade-offs
For each recommendation, briefly note:
- Maturity: How battle-tested is this tool?
- Community: Size and responsiveness of the community
- Documentation: Quality and completeness
- Maintenance: Is it actively maintained? Who maintains it?
- Lock-in: How easy is it to switch later?
References
1---2name: suggest-tooling3description: Recommends Cardano developer tools and SDKs for a specific project. Triggers: "which SDK", "recommend tools", "best library for", "Cardano SDK", "Mesh vs Evolution SDK", "Aiken vs Plutus", "what tools should I use", "Cardano ecosystem", "haskell.nix", "CHaP", "cardano-ledger off-chain", "Haskell Cardano stack", "Cardano in Go".4---56<!-- Documentation lookup path: ${CLAUDE_SKILL_DIR}/../../docs/sources/ -->78# Suggest Cardano Tooling910Help the developer choose the right tools, SDKs, and libraries for their Cardano project based on their requirements and preferred programming language.1112## When to use1314- Developer is starting a new Cardano project and needs tool recommendations15- Comparing SDKs (Mesh vs Evolution SDK vs PyCardano vs others)16- Choosing a smart contract language (Aiken vs Plutus vs others)17- Picking a Haskell off-chain stack (cardano-ledger + CHaP + haskell.nix)18- Selecting infrastructure components (indexers, APIs, testing tools)19- Evaluating wallet integration options20- Understanding which CIPs are relevant to their project21- Deciding whether a project needs Layer 2 / scaling (Hydra) or can stay on L12223## When NOT to use2425- Already chosen tools and needs help using them (use specific tool skills)26- Building a transaction once the stack is chosen (use `build-transaction`)27- Setting up a devnet (use `setup-devnet` skill)28- Querying chain data with a specific provider (use `query-chain` skill)29- Detailed wallet integration steps (use `connect-wallet` skill)3031## Key principles32331. **Start from the project requirements, not the tools.** Understand what they are building before recommending.342. **Language preference matters.** A Python developer should know about PyCardano; a TypeScript developer about Mesh and Evolution SDK; a Haskell developer about cardano-ledger, CHaP, and haskell.nix.353. **Recommend production-ready tools first.** Flag experimental tools clearly.364. **Fewer tools is better.** Do not recommend 10 options when 2 will do.375. **Consider the full stack.** Smart contracts, off-chain code, infrastructure, testing, and deployment are all part of the picture.3839## Workflow4041### Step 1: Understand the project4243Ask the developer (if not already clear):4445- **What are you building?** (dApp, DeFi protocol, NFT platform, governance tool, data analytics, wallet, library)46- **What programming language(s) do you prefer?**47- **Do you need smart contracts?** If yes, how complex?48- **What is your deployment target?** (mainnet, testnet, local devnet)49- **What is your experience level with Cardano?** (new, intermediate, advanced)50- **Any existing infrastructure?** (running a node, using hosted APIs)51- **Do you require high throughput, sub-second-finality, or any other requirement that L1 is not fit to handle?** (micro-payments, sub-second-finality, etc.)5253### Step 2: Search Bundled Documentation5455Search the bundled documentation for relevant content:56- `${CLAUDE_SKILL_DIR}/../../docs/sources/mesh-sdk/` - Mesh SDK docs57- `${CLAUDE_SKILL_DIR}/../../docs/sources/evolution-sdk/` - Evolution SDK docs58- `${CLAUDE_SKILL_DIR}/../../docs/sources/aiken/` - Aiken language docs59- `${CLAUDE_SKILL_DIR}/../../docs/sources/ogmios/` - Ogmios WebSocket bridge docs60- `${CLAUDE_SKILL_DIR}/../../docs/sources/blockfrost-openapi/` - Blockfrost API docs61- `${CLAUDE_SKILL_DIR}/../../docs/sources/hydra/` - Hydra (Layer 2 state channels) docs62- `${CLAUDE_SKILL_DIR}/../../docs/sources/tx3/` - Tx3 interface DSL and toolchain docs63- `${CLAUDE_SKILL_DIR}/../../docs/sources/chap/` - CHaP (Cabal index + haskell.nix inputMap)64- `${CLAUDE_SKILL_DIR}/../../docs/sources/haskell-nix/` - haskell.nix flakes and source-repository-package hashes65- `${CLAUDE_SKILL_DIR}/../../docs/sources/iohk-nix/` - crypto overlays (libsodium-vrf, libblst)66- `${CLAUDE_SKILL_DIR}/../../docs/sources/cardano-ledger/` - ledger types and Conway tx validation67- `${CLAUDE_SKILL_DIR}/../../docs/sources/apollo/` - Apollo (Go) tx builder docs and API source68- `${CLAUDE_SKILL_DIR}/../../docs/sources/gouroboros/` - gOuroboros (Go) protocol and ledger API source6970Go sources mirror `.go` files, so their API reference is the doc comment above each exported identifier. Start with a package's `doc.go` for the overview, then `Grep` a type or function name rather than looking for a prose manual.7172### Step 3: Search the ecosystem map7374Reference the ecosystem map for the full landscape:7576```77File: skills/suggest-tooling/references/ecosystem-map.md78```7980### Step 4: Recommend by category8182#### Smart Contract Languages8384| Language | Best for | Language base | Status |85|---|---|---|---|86| **Aiken** | Most new projects, performance-critical validators | Own syntax (Rust-like) | Production |87| **Plinth (formerly Plutus Tx)** | Haskell teams, complex on-chain logic | Haskell | Production |88| **OpShin** | Python developers writing validators | Python | Production |89| **Pebble** | TypeScript developers wanting on-chain code in TS (`@harmoniclabs/pebble`, successor of Plu-ts) | TypeScript | Production |90| **Scalus** | Scala/JVM teams | Scala | Production |91| **Helios** | Simple validators, quick prototyping | Own syntax (JS-like) | Production |9293**Default recommendation**: Aiken. Best tooling, fastest compilation, growing community, excellent documentation. Unless the team has a strong reason to use another language.9495#### Off-Chain SDKs9697| SDK | Language | Best for | Status |98|---|---|---|---|99| **Mesh SDK** | TypeScript/JS | Full-stack dApp development, beginners | Production |100| **Evolution SDK** | TypeScript/JS | IntersectMBO's canonical Lucid-lineage successor. Type-safe, Effect-based composable tx building (`Client.make(...).withBlockfrost(...).newTx().payToAddress(...).build()`) | Production |101| **PyCardano** | Python | Python backends, scripting, data science | Production |102| **Cardano CLI** | Shell | DevOps, scripting, node operators | Production |103| **cardano-js-sdk** | TypeScript | Lace wallet ecosystem, full node interaction | Production |104| **Blaze** | TypeScript | Lightweight, modular tx building | Production |105| **Cardano Java Client Lib** | Java/Kotlin | JVM backends, Android | Production |106| **whisky** | Rust | Transaction building for dApps (Mesh-like API; young project by SIDAN Lab) | Production |107| **Pallas** | Rust | Low-level building blocks: network protocols, ledger primitives, indexers (foundation of Dolos, Oura, Amaru) | Production |108| **Tx3** | DSL → TS/Rust/Go/Python | Interface-driven alternative: declare a protocol's transactions in a `.tx3` file, generate typed clients across languages (like an ABI/OpenAPI for UTxO protocols). Good for multi-language teams or publishing a protocol others integrate. TxPipe. | Beta (pre-1.0) |109| **cardano-ledger** | Haskell | Era types and Conway tx construction (`cardano-ledger-api`, `cardano-ledger-conway`, `plutus-tx` for `ToData`/`FromData`). Same types the node validates. Built with **haskell.nix** + **CHaP**, not cabal-on-system-GHC. | Production |110| **cardano-api** | Haskell | Client façade over ledger/consensus/network. Use when you want that wrapper; not required if you already speak ledger types. | Production |111| **Atlas** | Haskell | Higher-level PAB-style backend. Last library commit 2026-02; fails this repo's 6-month source bar. Mention only; do not start a new project on it. | Maintenance unclear |112| **Apollo** | Go | Go backends and services: fluent tx building, pluggable chain backends (Blockfrost/Maestro/Ogmios/UTxORPC) | Production |113| **gOuroboros** | Go | Low-level building blocks: mini-protocol implementations, ledger types, CBOR codecs (Go counterpart to Pallas) | Production |114115**Default recommendation by language**:116- TypeScript/JavaScript: **Mesh SDK** (comprehensive, well-documented, great for beginners) or **Evolution SDK** (type-safe, Effect-based composable builder)117- Python: **PyCardano**118- Rust: **Pallas**119- Java/Kotlin: **Cardano Java Client Lib**120- Haskell: **cardano-ledger** via **haskell.nix** + **CHaP**. On-chain default stays **Aiken** (CIP-57 `plutus.json`); do not switch to Plinth unless the team is writing validators in Haskell. Search `docs/sources/chap/README.md` for the repository stanza and `inputMap`.121- Go: **Apollo** for transaction building, **gOuroboros** for protocol and ledger primitives122123Go adoption is lower than TypeScript or Python, so expect fewer tutorials and smaller communities. Weigh that against an existing Go backend: rewriting a service in TypeScript to gain SDK maturity is rarely the cheaper trade.124125#### Infrastructure126127| Tool | Purpose | Type |128|---|---|---|129| **Blockfrost** | Chain data API | Hosted |130| **Koios** | Chain data API | Hosted (community) |131| **Ogmios** | Node WebSocket bridge | Self-hosted |132| **Kupo** | UTxO indexer | Self-hosted |133| **DB-Sync** | Full chain PostgreSQL | Self-hosted |134| **Oura** | Event pipeline | Self-hosted |135| **Adder** | Event pipeline (Go, embeddable) | Self-hosted |136| **Dingo** | Go node + UTxORPC/Blockfrost/Mesh APIs (pre-production) | Self-hosted |137| **Yaci DevKit** | Local devnet | Self-hosted |138139**Default recommendation**: Blockfrost for getting started (easy, hosted). Ogmios + Kupo for production self-hosted.140141#### Scaling / Layer 2142143**Most projects do not need Layer 2.** Cardano L1 handles the large majority of dApp workloads. Reach for L2 only against a *specific, confirmed* throughput or latency requirement L1 cannot meet and validate that the requirement is real before recommending it. **If there's a posibility of needing an L2, hand off the decision to the `suggest-scalability` skill.**144145#### Testing146147| Tool | Purpose |148|---|---|149| **Aiken built-in tests** | Unit and property tests for Aiken validators |150| **Yaci DevKit** | Local devnet for integration tests |151| **Preview testnet** | Public testnet with frequent hard forks |152| **Preprod testnet** | Public testnet mirroring mainnet |153| **tx-village** | Transaction-level testing framework |154155#### Wallet Integration156157| Tool | Purpose |158|---|---|159| **Mesh SDK** | React hooks and components for wallet connection |160| **CIP-30 direct** | Vanilla JS wallet connection |161| **CIP-95** | Governance extensions for wallets |162| **WalletConnect** | Mobile wallet connection |163164### Step 5: Recommend a stack165166Based on the project requirements, recommend a concrete stack. Example stacks:167168#### Beginner dApp (TypeScript)169- Smart contracts: **Aiken**170- Off-chain: **Mesh SDK**171- Infrastructure: **Blockfrost**172- Testing: Aiken tests + Yaci DevKit173- Wallet: Mesh wallet hooks174175#### DeFi Protocol (TypeScript, advanced)176- Smart contracts: **Aiken**177- Off-chain: **Evolution SDK** or **Blaze**178- Infrastructure: **Ogmios + Kupo** (self-hosted)179- Testing: Aiken property tests + Preview testnet180- Wallet: CIP-30 direct integration181182#### Python Backend183- Smart contracts: **Aiken** (or OpShin if team prefers Python on-chain too)184- Off-chain: **PyCardano**185- Infrastructure: **Blockfrost** or **Koios**186- Testing: Aiken tests + pytest with PyCardano187188#### Go Backend189- Smart contracts: **Aiken**190- Off-chain: **Apollo** for tx building, **gOuroboros** for ledger types and direct node protocols191- Infrastructure: **blockfrost-go** (hosted) or **UTxORPC Go SDK** (provider-agnostic gRPC)192- Testing: Aiken tests + Go `testing` against Yaci DevKit193194#### Data Analytics Platform195- Infrastructure: **DB-Sync** (SQL) + **Oura** (streaming)196- Language: Python or SQL197- No smart contracts needed198199#### Governance Tool200- Off-chain: **Mesh SDK** (CIP-95 support)201- Infrastructure: **Blockfrost** or **Koios** (governance endpoints)202- Wallet: CIP-30 + CIP-95203- Reference: CIP-1694 for governance actions204205#### Haskell service (Aiken on-chain, ledger off-chain)206- Smart contracts: **Aiken** → CIP-57 `plutus.json`207- Off-chain: **cardano-ledger-*** + `plutus-tx` / `plutus-ledger-api`208- Build: **haskell.nix** flake, **CHaP** `inputMap`, **iohk-nix** `crypto` + `haskell-nix-crypto` overlays (CHaP README: those overlays supply `libblst` and friends)209- Pin: dual `index-state` (Hackage + `cardano-haskell-packages`); align the CHaP flake input to a `cardano-node` release210- Then hand off to `build-transaction` (SDK `cardano-ledger`)211212### Step 6: Mention relevant CIPs213214Based on the project type, flag relevant CIPs:215216| Project type | Relevant CIPs |217|---|---|218| Any dApp | CIP-30 (wallet bridge), CIP-57 (blueprints) |219| Token/NFT | CIP-25 (NFT metadata), CIP-68 (rich FTs/NFTs) |220| Governance | CIP-1694 (governance), CIP-95 (wallet governance) |221| Multi-sig | CIP-1854 (multi-sig wallets) |222| Metadata | CIP-20 (tx metadata), CIP-25 (NFT metadata) |223| DEX | CIP-35 (on-chain message signing) |224225### Step 7: Flag trade-offs226227For each recommendation, briefly note:228229- **Maturity**: How battle-tested is this tool?230- **Community**: Size and responsiveness of the community231- **Documentation**: Quality and completeness232- **Maintenance**: Is it actively maintained? Who maintains it?233- **Lock-in**: How easy is it to switch later?234235## References236237- `skills/suggest-tooling/references/ecosystem-map.md` -- Full ecosystem map with all tools238- Cardano developer portal: https://developers.cardano.org239- Aiken: https://aiken-lang.org240- Mesh SDK: https://meshjs.dev241- Evolution SDK: https://github.com/IntersectMBO/evolution-sdk (docs: https://evolution-sdk.dev)242- PyCardano: https://pycardano.readthedocs.io243- Blockfrost: https://blockfrost.io244- Apollo (Go): https://pkg.go.dev/github.com/Salvionied/apollo/v2245- gOuroboros (Go): https://pkg.go.dev/github.com/blinklabs-io/gouroboros