The Super-Wallet: Elastos Essentials
What it is
Elastos Essentials is a mobile application for Android and iOS that brings identity, multi-chain wallets, decentralized apps, storage, and governance into one place. Under the hood it is built with Ionic, Angular, and TypeScript, then wrapped for native devices with Apache Cordova, so the experience feels like a native app while sharing a single codebase across platforms.
How the code is organized
Development is split across three main repositories:
| Repository | Role |
|---|---|
| Elastos.Essentials | Root “orchestrator”: Cordova config, submodules, shared SDKs, plugins, and tooling that assemble the full product. |
| Elastos.Essentials.App | The main Ionic/Angular application: screens, services, modules, and translations. |
| Elastos.Essentials.API | A Node.js/Express backend used for services that are awkward or unsafe to run only on the phone. |
That separation keeps the mobile UI focused on user experience while the API can coordinate multi-party flows and aggregate data from the network.
Native capabilities (camera, biometrics, secure storage) still reach the web stack through Cordova plugins (for example wallet signing bridges and the in-app browser). That is why the same project can ship to both major mobile stores while reusing one Angular codebase.
Inside the app: modules
The app is divided into feature modules (on the order of 15), each covering a major area of the product. Examples include launcher (home and widgets), identity (DID sessions and credentials), wallet (multi-chain assets), dappbrowser (in-app Web3 browsing), scanner (QR codes), crproposalvoting (Elastos DAO proposals), contacts, settings, hivemanager (personal Hive vault setup), developertools, plus governance, bridging, and migration-related areas. Together they form one coherent “super-app” rather than a loose bundle of unrelated tools.
Multi-chain wallet
Essentials supports 22+ blockchain networks from one recovery phrase. Key examples include Elastos main chain, ESC (smart contracts), and EID (identity); Bitcoin; Ethereum; BNB Smart Chain; Polygon; Arbitrum; Avalanche; Fantom; Cronos; Tron; HECO; Gnosis; Fuse; IoTeX; Telos; Evmos; Kava; Cosmos (ATOM); Celo; and custom EVM networks you add by RPC. One mnemonic can derive the keys needed for each supported chain, subject to each chain’s rules.
EVM chains generally follow the standard Ethereum derivation path; Bitcoin supports common address types; Tron and Cosmos use their own paths. Essentials hides the details behind network-specific screens. You can also connect a Ledger hardware wallet over Bluetooth on supported devices for higher assurance on large balances.
dApp browser: WebView, safety, and injected providers
The dApp experience uses Cordova’s InAppBrowser (a WebView) so sites run inside Essentials with full control over what is injected. Before risky interactions, the browser can flag known bad domains using phishing URL detection (community-maintained lists), so users get a warning instead of a silent scam.
When a page loads, Essentials injects four providers so decentralized apps can talk to chains and to Elastos services:
| Provider | Typical use |
|---|---|
window.ethereum | EVM-compatible flows (ESC, Ethereum, BSC, etc.), similar to MetaMask. |
window.elastos | Elastos Connectivity flows: credentials, signing, and intent-style calls into Essentials. |
window.unisat | Bitcoin-oriented operations (and related compatibility shims where configured). |
window.elamain | Elastos main chain addresses and signing. |
Together these let one dApp work across EVM, Bitcoin-style, and Elastos-native interfaces without forcing every site to use a single chain’s API.
When a dApp requests something sensitive, such as sending a transaction, the browser pauses the page flow, Essentials shows a review screen with human-readable details, and only then signs or rejects. That mirrors how desktop wallets intercept eth_sendTransaction, adapted for touch-first UI and mobile OS constraints.
WalletConnect
For dApps that run outside the in-app browser (or that prefer the standard wallet pairing flow), Essentials supports WalletConnect v2. Sessions can be persisted so reconnecting after an app restart is practical for day-to-day use. (WalletConnect v1 has reached end-of-life and should not be used for new integrations.)
Essentials.API backend
The companion Express.js service groups features into modules, for example:
- Multisig coordination: store pending transactions and collect signatures until a threshold is met.
- Price feeds: aggregated token prices for display in the wallet.
- Staking data: information used by staking-related UIs.
- Chainge swaps: proxy/integration for cross-chain swap flows.
- App updates: version checks and update notifications.
This keeps sensitive coordination and network aggregation off the device where appropriate while the app remains the authority for keys and approvals.
Multi-signature transactions
Multi-sig wallets (for example 2-of-3 or 3-of-5) need a way for several people to sign the same transaction in order. Essentials can use the API to record a pending transaction, let each signer add their signature when ready, and finalize when the required number of signatures is collected; then the last step can broadcast to the chain. The exact threshold depends on how the wallet was configured; the API’s job is to coordinate those steps reliably.
How connections work: Connectivity SDK
Third-party apps integrate through the Elastos Connectivity SDK, which uses an IConnector-style abstraction. In practice, a dApp requests actions such as: prove identity with DID credentials, sign a transaction or message, or access Hive through the user’s vault. Essentials acts as the implementation users trust: it shows consent screens and uses local keys or vault sessions only after approval.
The same intent-style URLs can be triggered from inside the dApp browser (injected window.elastos) or from outside apps via deep links, so whether your user arrives from a bookmark or another mobile app, the approval path stays familiar.
If you ship a website or mobile app, you do not need to embed Elastos cryptography yourself; you ask Essentials (or another compatible wallet) to perform operations the user authorizes.
Governance, bridges, and Hive
From the same shell, users can participate in Elastos DAO governance (council and proposals), stake ELA, vote for supernodes, use cross-chain bridges to move assets between Elastos and other networks, and manage Hive vault providers, so participation in the ecosystem does not depend on juggling many single-purpose apps.
The original Elastos Essentials repositories have seen varying levels of activity. Community-led forks, including work under the Elastos DAO umbrella, may be the most actively maintained line for fixes and features as of 2026. Before you rely on a build for production, check which organization’s release matches your support and distribution needs.
Summary
Elastos Essentials is the mobile hub for Elastos: Ionic/Angular/TypeScript in Cordova, a small Express API for coordination and feeds, rich module layout, multi-chain wallets, a dApp browser with four injected providers and WalletConnect, and Connectivity SDK integration so applications can request identity, signing, and storage in a standard way, while multi-sig and ecosystem services connect through documented backend and on-chain flows.
Whether you only need a wallet or you want the full Elastos stack (identity, storage, governance, and bridges), Essentials is designed so those features compose instead of competing for your attention.