Skip to content

Welcome to Self Developer Docs

Start building with Self in minutes. This Getting Started section is your launchpad to real-world solutions powered by Self’s secure identity platform.

Explore our main features through hands-on examples and fully functional demo apps. Each use case below demonstrates how Self solves real problems—showing you both the code and the user experience, so you can quickly integrate advanced identity, authentication, and digital agreement capabilities into your own applications.

Jump right in:
- See what’s possible with Self
- Try out live example apps
- Access complete, open-source code for every feature

Choose a use case below to get started, or browse the full documentation for deeper technical details.

Authentication

Self provides a secure authentication workflow that allows users to authenticate themselves using their digital identity. This workflow is designed to be scalable and can be used in a variety of scenarios, including web applications, mobile apps, and enterprise systems.

Key Features:

  • Passwordless authentication using biometric credentials
  • Liveness detection to prevent spoofing
  • Privacy-preserving verification without storing personal data
  • Cross-platform compatibility (iOS, Android, Web)

Learn More →

Identity Verification

The Self SDK provides streamlined identity verification flows for mobile applications. These flows support the capture and validation of various identity documents including passports, ID cards, and driving licenses.

Key Features:

  • NFC chip reading for enhanced passport verification
  • Pre-built UI components for document capture
  • Secure local storage of verified credentials
  • Support for multiple document types and formats

Learn More →

Digital Signatures

Self enables secure digital document signing workflows that provide legally-compliant electronic signatures. Users can cryptographically sign documents using their verified digital identity, ensuring document integrity and non-repudiation.

Key Features:

  • Cryptographic document signing with digital identity
  • Tamper-proof signatures with audit trails
  • Legal compliance for electronic signatures
  • Document integrity verification using cryptographic hashes

Learn More →

Working Code Examples

All use cases are demonstrated through open source implementations that showcase real-world usage of Self SDK. These examples are designed as complete, functional applications that you can run and test immediately.

Self SDK Examples Repository

Our examples repository provides fully functional implementations across multiple platforms:

Mobile Peers (Frontend):

  • Android: Complete Android SDK implementations with UI flows (android/ folder)
  • iOS: Swift examples with proper async/await patterns (ios/ folder)

Server Peers (Backend):

  • Golang: Backend integration examples with full workflows (golang/ folder)
  • Java: Enterprise-ready server implementations (java/ folder)

Quick Start - Try Examples Immediately

For instant testing without building from source, use our pre-compiled binaries and applications:

Platform Quick Install Source Code
Mobile - Android Download APK View Source
Mobile - iOS Download from App Store View Source
Server - Golang docker run -it ghcr.io/joinself/self-sdk-demo:go View Source
Server - Java docker run -it ghcr.io/joinself/self-sdk-demo:java View Source

🔧 Build from Source

To customize and build the examples yourself:

1
2
3
4
5
# Clone with all submodules
git clone --recurse-submodules https://github.com/joinself/self-sdk-examples.git

# Or if already cloned, initialize submodules
git submodule update --init --recursive

📂 Repository Structure

Each platform's examples are organized in dedicated folders within the repository:

Platform Example Location Type Description
Android android/ Mobile Peer Complete Android apps demonstrating all SDK features
iOS ios/ Mobile Peer Native iOS implementations with SwiftUI
Golang golang/ Server Peer Backend Go implementations with full workflows
Java java/ Server Peer Enterprise Java server examples

This structure provides both server peers (backend) and mobile peers (frontend) that can interact with each other, giving you a complete Self network for testing and development.

Choose Your Use Case

Select the use case that best matches your application requirements:

Each guide provides step-by-step implementation details, complete code examples, and links to working demonstrations in our examples repository.


Tip: Start by exploring the examples repository to see Self SDK in action, then follow the detailed guides above to implement the features in your own application.