Skip to content

w3f-grants-archive/Tesseract.android

 
 

Repository files navigation

Tesseract

Tesseract Android

Tesseract Android provides Java/Kotlin APIs for Tesseract, a dApp-Wallet bridge designed to make dApp/wallet communication on mobile devices simple and natural without compromising decentralization and security

If you are looking for Tesseract docs for another language/OS, please, consider one of the following:

Getting started

Tesseract provides two sets of APIs, one for a dApp that wants to connect to the wallets and one for the wallets that want to serve the dApps.

Here is how a typical Tesseract workflow looks like:

dApp Wallet
//initialize Tesseract
val tesseract = Tesseract.default(this.application)

//indicate what blockchain are we gonna use
val testService = tesseract.service(SubstrateService::class)

//at this point Tesseract connects to the
//wallet and the wallet presents the user
//with its screen, asking if the user
//wants to share their public key to a dApp
//all such calls are asynchronous
val account = substrateService.getAccount(AccountType.Sr25519)
//Inside the Wallet Tesseract serves requests
//from the dApps as long as the reference is kept alive
//save it somewhere in the Application instance
val tesseract = Tesseract
    .default() //start with default configuration
    .service(MySubstrateService())
//MySubstrateService instance methods
//will be called when a dApp asks for something

Details

Because using Tesseract in a dApp and in a wallet is very different by nature (essentially communicating as a client and a service), the detailed documentation is split into two documents:

Examples

If you'd like to see examples of Tesseract integration, please, check:

More

Just in case, you'd like to use Tesseract on android via Rust APIs. It's also possible. Consider checking one of the following:

Roadmap

  • v0.1 - IPC transport for Android - connect dApp/Wallet on the same device
  • v0.2 - demo dApp and Wallet
  • v0.3 - Susbtrate protocol support
  • v0.4 - dev-wallet.kotlin test implementation
  • v0.5 - first Kotlin libraries release version
  • v1.0 - support of everything mobile dApps need

License

Tesseract.android can be used, distributed and modified under the Apache 2.0 license.

About

Android related Tesseract bindings and transports

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 76.4%
  • Kotlin 23.6%