Skip to content
worldcoinPublic

About

WalletKit enables wallets to use World ID.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

19 stars

Watchers

16 watching

Forks

Latest commit

 

History

439 Commits

Folders and files

Repository files navigation

WalletKit

Documentation crates.io docs.rs npm

WalletKit lets apps hold World ID credentials and prove things about their holder with World ID. It is the reference implementation for World ID clients and part of the World ID SDK.

WalletKit is written in Rust and ships as a Rust crate, Swift and Kotlin bindings generated with UniFFI, and a browser package that runs it as WebAssembly.

Documentation

Packages

Platform Package
Rust walletkit
iOS worldcoin/walletkit-swift (Swift Package Manager)
Android org.world:walletkit (GitHub Packages)
Browser @worldcoin/walletkit-web

Crates

Crate Description
walletkit The published entry point, re-exporting walletkit-core.
walletkit-core Accounts, credential storage, and World ID proofs; the UniFFI surface for Swift and Kotlin.
walletkit-db Encrypted on-device storage: vault, content-addressed blobs, key envelope, and cross-process lock.
walletkit-sqlite Safe Rust wrapper around encrypted SQLite (sqlite3mc).
walletkit-web wasm-bindgen facade over walletkit-core for the browser package.
walletkit-cli Developer CLI for accounts, credentials, and proofs.
walletkit-testkit End-to-end test helpers.
uniffi-bindgen Generates the Swift and Kotlin bindings.

Project structure

  • crates/: Rust crates
  • swift/ and kotlin/: Swift package and Android library configuration, with their binding tests
  • web/walletkit/: the browser package
  • examples/: example apps, including a Next.js app that registers an account, issues a credential, and generates a proof with the browser package
  • docs/: sources of the WalletKit book
  • xtask/: build automation for the Swift and Kotlin packages (cargo xtask)
  • nix/: development shells for Android, WebAssembly, and host builds
  • audits/: security audit reports

Security

Report security issues privately to security@toolsforhumanity.com, not in public issues. For details, see SECURITY.md.

About

WalletKit enables wallets to use World ID.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

19 stars

Watchers

16 watching

Forks

Releases

Packages

Used by

Contributors

Languages