|
| 1 | +--- |
| 2 | +id: README |
| 3 | +title: Developers |
| 4 | +sidebar_position: 1 |
| 5 | +sidebar_class_name: hidden-sidebar-item |
| 6 | +--- |
| 7 | + |
| 8 | +# Developer Documentation |
| 9 | + |
| 10 | +Welcome to the Hyperledger Identus developer documentation. This comprehensive guide provides everything you need to build decentralized identity applications using the Identus platform. |
| 11 | + |
| 12 | +## Getting Started |
| 13 | + |
| 14 | +New to Identus? Start here to understand the fundamentals and get your development environment up and running. |
| 15 | + |
| 16 | +### 🚀 [Quick Start Guide](./quick-start.md) |
| 17 | + |
| 18 | +Follow our comprehensive quick start guide to: |
| 19 | + |
| 20 | +- Deploy Issuer and Verifier Cloud Agents |
| 21 | +- Set up Wallet SDKs (TypeScript, Swift, or Kotlin) |
| 22 | +- Deploy and connect to a Mediator |
| 23 | +- Create DIDs and credential schemas |
| 24 | +- Issue your first verifiable credential |
| 25 | +- Perform credential verification |
| 26 | + |
| 27 | +**Perfect for:** Developers new to Identus or SSI who want to see the full flow in action. |
| 28 | + |
| 29 | +## Developer Resources |
| 30 | + |
| 31 | +### 📱 SDKs |
| 32 | + |
| 33 | +Build wallet applications for web and mobile platforms using our comprehensive SDKs: |
| 34 | + |
| 35 | +#### [TypeScript SDK](../../sdk-ts/docs/sdk/README.md) |
| 36 | + |
| 37 | +Build browser and Node.js applications with full support for: |
| 38 | +- DIDComm messaging |
| 39 | +- Credential issuance and presentation |
| 40 | +- AnonCreds, SD-JWT, and JWT credentials |
| 41 | +- OpenID for Verifiable Credentials |
| 42 | +- Backup and recovery |
| 43 | + |
| 44 | +**Tutorials available:** |
| 45 | +- [Storage with Pluto](../../sdk-ts/docs/pluto/README.md) |
| 46 | +- [PRISM DID Management](../../sdk-ts/docs/prism/what-is-did-prism.md) |
| 47 | +- [Connectionless & Out-of-Band](../../sdk-ts/docs/examples/connectionless/ConnectionlessOffer.md) |
| 48 | +- [SDK Verification](../../sdk-ts/docs/examples/SDKVerification.md) |
| 49 | +- [Migration Guides](/category/migration-guides) |
| 50 | + |
| 51 | +#### [Swift SDK](https://hyperledger-identus.github.io/sdk-swift/documentation/edgeagentsdk/) |
| 52 | + |
| 53 | +Native iOS SDK for building wallet applications with Swift. Includes sample applications and complete API reference. |
| 54 | + |
| 55 | +#### [Kotlin Multiplatform SDK](https://hyperledger-identus.github.io/sdk-kmp/) |
| 56 | + |
| 57 | +Cross-platform SDK for Android, iOS, and JVM applications. Share code across platforms while maintaining native performance. |
| 58 | + |
| 59 | +### ☁️ Cloud Agent |
| 60 | + |
| 61 | +The Cloud Agent provides REST API endpoints for enterprise SSI operations. It can act as an Issuer, Holder, or Verifier. |
| 62 | + |
| 63 | +#### [Tutorials](../../cloud-agent/docs/docusaurus/index.md) |
| 64 | + |
| 65 | +Step-by-step guides covering: |
| 66 | + |
| 67 | +- **Connections** - Establish DIDComm connections between agents |
| 68 | +- **DIDs** - Create, publish, update, and deactivate DIDs |
| 69 | +- **Schemas** - Define and manage credential schemas |
| 70 | +- **Credential Definitions** - Set up AnonCreds credential definitions |
| 71 | +- **Credential Issuance** - Issue credentials via DIDComm and OID4VCI |
| 72 | +- **Credential Verification** - Request and verify presentations |
| 73 | +- **Multi-tenancy** - Manage multiple tenants and access control |
| 74 | +- **Webhooks** - Subscribe to agent events |
| 75 | +- **Secrets Management** - Secure key and secret storage |
| 76 | + |
| 77 | +#### Cloud Agent Configuration |
| 78 | + |
| 79 | +Essential guides for deploying and configuring the Cloud Agent: |
| 80 | + |
| 81 | +- **[Building Blocks](./cloud-agent/building-blocks.md)** - Understanding Apollo, Castor, Pollux, and Mercury modules |
| 82 | +- **[Authentication](./cloud-agent/authentication.md)** - API key and JWT authentication setup |
| 83 | +- **[DID Management](./cloud-agent/did-management.md)** - Managing DIDs in the Cloud Agent |
| 84 | +- **[Environment Variables](./cloud-agent/environment-variables.md)** - Complete configuration reference |
| 85 | +- **[Secrets Storage](./cloud-agent/secrets-storage.md)** - Vault and database secret management |
| 86 | +- **[VDR Configuration](./cloud-agent/vdr.md)** - Verifiable Data Registry setup |
| 87 | +- **[Troubleshooting](./cloud-agent/troubleshooting&considerations.md)** - Common issues and considerations |
| 88 | + |
| 89 | +## Core Concepts |
| 90 | + |
| 91 | +Before diving deep, familiarize yourself with these essential concepts: |
| 92 | + |
| 93 | +- **[Self-Sovereign Identity (SSI)](../learn/glossary.md#self-sovereign-identity)** - User-controlled digital identity |
| 94 | +- **[Decentralized Identifiers (DIDs)](../learn/glossary.md#decentralized-identifier)** - Globally unique identifiers you control |
| 95 | +- **[Verifiable Credentials (VCs)](../learn/glossary.md#verifiable-credential)** - Digital credentials you can prove are authentic |
| 96 | +- **[DIDComm](../learn/glossary.md#didcomm)** - Secure, private messaging protocol for DIDs |
| 97 | +- **[Trust Triangle](../learn/)** - The relationship between Issuers, Holders, and Verifiers |
| 98 | + |
| 99 | +[Learn more about Identus concepts →](../learn/README.md) |
| 100 | + |
| 101 | +## Architecture & Building Blocks |
| 102 | + |
| 103 | +Identus provides modular building blocks that can be combined for various use cases: |
| 104 | + |
| 105 | +| Building Block | Code Name | Purpose | |
| 106 | +|----------------|-----------|---------| |
| 107 | +| **Cryptography** | Apollo | Cryptographic primitives for data integrity and security | |
| 108 | +| **DIDs** | Castor | Create, manage, and resolve decentralized identifiers | |
| 109 | +| **Verifiable Credentials** | Pollux | Issue, manage, and verify credentials | |
| 110 | +| **DIDComm** | Mercury | Secure peer-to-peer messaging protocols | |
| 111 | + |
| 112 | +This modular architecture provides flexibility to customize solutions for specific requirements. |
| 113 | + |
| 114 | +## Development Workflows |
| 115 | + |
| 116 | +### Credential Issuance Flow |
| 117 | + |
| 118 | +1. **Issuer** creates a credential schema |
| 119 | +2. **Issuer** publishes a DID (for verification) |
| 120 | +3. **Issuer** sends credential offer to **Holder** |
| 121 | +4. **Holder** accepts and creates credential request |
| 122 | +5. **Issuer** issues credential to **Holder** |
| 123 | +6. **Holder** stores credential securely |
| 124 | + |
| 125 | +### Credential Verification Flow |
| 126 | + |
| 127 | +1. **Verifier** sends presentation request to **Holder** |
| 128 | +2. **Holder** selects matching credentials |
| 129 | +3. **Holder** creates and sends presentation to **Verifier** |
| 130 | +4. **Verifier** validates credential authenticity and issuer |
| 131 | +5. **Verifier** checks credential status (not revoked) |
| 132 | + |
| 133 | +### Connection Establishment |
| 134 | + |
| 135 | +Agents establish secure DIDComm connections using: |
| 136 | +- **Direct invitations** - For known parties with existing connections |
| 137 | +- **Out-of-Band (OOB) invitations** - QR codes or deep links for new connections |
| 138 | +- **Mediator routing** - Message delivery for offline/mobile wallets |
| 139 | + |
| 140 | +## Standards Support |
| 141 | + |
| 142 | +Identus implements current W3C and DIF standards: |
| 143 | + |
| 144 | +- ✅ W3C DID Core 1.0 |
| 145 | +- ✅ W3C Verifiable Credentials with JWT/SD-JWT |
| 146 | +- ✅ DIDComm Messaging v2 |
| 147 | +- ✅ Hyperledger AnonCreds v1.0 |
| 148 | +- ✅ OpenID for Verifiable Credential Issuance (OID4VCI) |
| 149 | +- ✅ OpenID for Verifiable Presentations (OID4VP) |
| 150 | +- ✅ W3C Bitstring Status List v1.0 |
| 151 | +- ✅ DIF Presentation Exchange |
| 152 | + |
| 153 | +[View complete specifications →](../reference/specifications.md) |
| 154 | + |
| 155 | +## API Reference |
| 156 | + |
| 157 | +- **[Cloud Agent API](../reference/Cloud%20Agent%20API/identus-cloud-agent-api-reference.info.mdx)** - Complete OpenAPI specification |
| 158 | +- **[TypeScript SDK API](../../sdk-ts/docs/sdk/)** - Auto-generated API documentation |
| 159 | +- **[Swift SDK API](https://hyperledger-identus.github.io/sdk-swift/documentation/edgeagentsdk/)** |
| 160 | +- **[Kotlin SDK API](https://hyperledger-identus.github.io/sdk-kmp/)** |
| 161 | + |
| 162 | +## Example Applications |
| 163 | + |
| 164 | +All SDKs include sample applications demonstrating end-to-end flows: |
| 165 | + |
| 166 | +- **TypeScript**: React demo at `sdk-ts/demos/next` |
| 167 | +- **Swift**: Wallet Demo in `identus-edge-agent-sdk-swift/Sample` |
| 168 | +- **Kotlin**: SampleApp in `identus-edge-agent-sdk-kmm` |
| 169 | + |
| 170 | +## Community & Support |
| 171 | + |
| 172 | +- **[GitHub Discussions](https://github.com/hyperledger/identus)** - Ask questions and share ideas |
| 173 | +- **[Issue Tracker](https://github.com/hyperledger/identus-cloud-agent/issues)** - Report bugs and request features |
| 174 | +- **[Discord](https://discord.gg/hyperledger)** - Real-time community chat |
| 175 | +- **[Contributing Guidelines](../../CONTRIBUTING.md)** - How to contribute to Identus |
| 176 | + |
| 177 | +## Additional Resources |
| 178 | + |
| 179 | +- **[Architecture Decision Records](../reference/adrs/README.md)** - Understand key architectural decisions |
| 180 | +- **[PRISM DID Specification](https://github.com/input-output-hk/prism-did-method-spec/)** - Deep dive into did:prism |
| 181 | +- **[Security Policy](../../SECURITY.md)** - Security best practices and reporting |
| 182 | + |
| 183 | +--- |
| 184 | + |
| 185 | +Ready to start building? Head to the [Quick Start Guide](./quick-start.md) to deploy your first Identus application! |
0 commit comments