﻿# Guides

> For the complete documentation index, see [llms.txt](/llms.txt)

Practical how-to guides organized by development stage. Each guide solves a specific task with working code.

## Tooling

- **[AI Coding Agents](ai-coding-agents.md)**: Use ICP skills to give AI coding agents accurate canister IDs and tested code patterns.

## Build

- **[Backends](backends/data-persistence.md)**: Persist data, make HTTPS outcalls, schedule timers, and generate randomness.
- **[Canister Calls](canister-calls/candid.md)**: Define Candid interfaces, generate type-safe bindings, and call canisters from backends and frontends.
- **[Frontends](frontends/asset-canister.md)**: Serve assets, integrate frontend frameworks, configure custom domains, and certify responses.
- **[Authentication](authentication/internet-identity.md)**: Add passwordless login and verifiable user identity to your app.

## Quality and shipping

- **[Testing](testing/strategies.md)**: Write unit tests, run integration tests with PocketIC, and set up end-to-end testing.
- **[Canister Management](canister-management/lifecycle.md)**: Deploy, upgrade, fund, optimize, and back up canisters.
- **[Security](security/identity-and-access-management.md)**: Implement access control, DoS prevention, and safe upgrade patterns.

## Advanced features

- **[Digital Assets](digital-assets/ledgers.md)**: Create and integrate with ledgers and wallets using digital asset standards.
- **[Chain Fusion](chain-fusion/bitcoin.md)**: Connect canisters to Bitcoin, Ethereum, and Solana, sign cross-chain transactions, and fetch exchange rates.
- **[Governance](governance/launching.md)**: Transfer control of your app to your community and govern it through proposals.
