750 ELA — Grand Prize — awarded in ELA (~1,000 USD)
250 ELA — Runner-up Prize — awarded in ELA (~350 USD)
CHALLENGE DESCRIPTION
Imagine you could develop a dApp within a secure browser that blocks unapproved connections and provides a robust framework of decentralized services as plugins ready to go. You would have elastOS — a mobile application that runs your packaged Ionic-based dApp within an ecosystem of DApps all using the elastOS built-in wallet, decentralized identity (DID), decentralized storage and more so you don’t need to worry about onboarding, funding users wallets and setting up their accounts.
This is an open-ended challenge, but we are mostly looking for projects that advance our vision of data privacy, self-sovereign identity or digital assets, which are outlined below under “key focuses”. Still you can build any type of dApp you’d like, but it must run within elastOS and use the plugins where possible. Extra points are awarded for dApps that have convincing use cases for the plugins.
Our elastOS app is still an early version and work in progress, but our goal is to provide a single unified interface for users to run multiple dApps that can share a common identity, wallet, personal storage vault and more.
For developers we aim to create a simpler developer experience with standardized plugins that are open-source and decentralized. For example our integrated light-wallets are SPV nodes that connect directly to the blockchain, right now we only have ELA and DID Chain support but we will add ETH Sidechain support soon.
In the future as we onboard more users, developers can build their dApps for our ecosystem and instantly gain exposure to all our users and community.
KEY FOCUSES
1. Data Privacy and Self-Sovereign Identity (DIDs)
Elastos is a member of the Decentralized Identity Foundation (DIF) - https://identity.foundation and very supportive of efforts to create things like global credit scores, practical use cases for “Verifiable Presentations” (https://www.w3.org/TR/vc-data-model/#presentations-0) or innovative ways to create trustworthy skills, job or educational credentials. A common use of our dApps is to login with DID through scanning a QR code, which opens up many possibilities.
2. Digital Assets
Our goal is to create a vibrant ecosystem for digital assets that could share the same elastOS wallet to store their NFTs, this gives users a central place to manage NFTs across various dApps. We are still developing the NFT integration to our elastOS wallet, for now see the below section on the ELAETHSC for tips on how to connect to our ETH Sidechain.
3. P2P and Private Storage Vault Apps
In addition to elastOS which functions like a container for dApps, Elastos has also created the Elastos Carrier P2P network and Hive storage system.
Elastos Carrier already has over 200k+ active proxy nodes - http://peerjet.net - and a P2P messenger app (https://hyper.im), you can use the Carrier plugin to connect your apps directly, and it will use a DHT to route e2e encrypted messages through our proxy nodes if needed. Hive is a standard interface with swappable back-end storage solutions, which defaults to IPFS
See: https://developer.elastos.org/references/trinity_plugins
You can access a suite of typical mobile plugins such as access to the camera, file storage, fingerprint and even a P2P network communication layer called Elastos Carrier.
Elastos Ethereum Sidechain (ELAETHSC)
Elastos also has an EVM based blockchain, we have chainIds 20 and 21 for our mainnet and testnet respectively. If you need smart contracts for your project you must use our testnet, please compile your contracts to --evm-version byzantium.
ELA mainchain - UTXO based with a 2 minute blocktime, you can use the testnet at and view the mainnet at
DID Sidechain - merge-mines with Elastos and is dedicated to storing identity (DID) data
ETH Sidechain - uses DPoS consensus from our DPoS Supernode network voted through our ELA native token. There is no support for this chain with our wallet plugin at the moment, to run smart contracts you can use Fortmatic (https://fortmatic.com) which is whitelisted for our testnet at https://rpc.elaeth.io or ephemeral keys and our testnet GSN relayer, see http://elajs.com for more info.
SUBMISSION REQUIREMENTS
A valid submission is a running demo elastOS capsule/dApp published via our CLI tool, code must be open-sourced.
SUBMISSION DEADLINE
As part of the NY Blockchain Week Virtual Hackathon this Challenge will end on May 27, 2020 at 11:59PM EST.
JUDGING CRITERIA
We are looking for projects that embody the design goals of elastOS and use our plugins in practical or creative ways. You should try your best to build workarounds for any limitations of elastOS, we will gratefully welcome the feedback on how to improve elastOS.
Understandably elastOS is still a work in progress, so any brief descriptions of how you would use the upcoming plugins on our roadmap will be reviewed, but far greater consideration will be given to teams that actually build workarounds.
WINNER ANNOUNCEMENT DATE
Winners will be announced on June 5, 2020 by end of day EST.
Prize Title
Challenge 1 — elastOS Capsule DApp
Prize Bounty
750 ELA — Grand Prize — awarded in ELA (~1,000 USD) 250 ELA — Runner-up Prize — awarded in ELA (~350 USD)
CHALLENGE DESCRIPTION
Imagine you could develop a dApp within a secure browser that blocks unapproved connections and provides a robust framework of decentralized services as plugins ready to go. You would have elastOS — a mobile application that runs your packaged Ionic-based dApp within an ecosystem of DApps all using the elastOS built-in wallet, decentralized identity (DID), decentralized storage and more so you don’t need to worry about onboarding, funding users wallets and setting up their accounts.
This is an open-ended challenge, but we are mostly looking for projects that advance our vision of data privacy, self-sovereign identity or digital assets, which are outlined below under “key focuses”. Still you can build any type of dApp you’d like, but it must run within elastOS and use the plugins where possible. Extra points are awarded for dApps that have convincing use cases for the plugins.
The elastOS Plugins API reference can be found at: https://developer.elastos.org/references/trinity_plugins
Preview and download the elastOS App at: https://elastos.academy/elastosbrowser - or on Google Play Store at https://play.google.com/store/apps/details?id=org.elastos.trinity.runtime&hl=en_US. Sorry our iOS App is still being reviewed.
Setup guide for elastOS installation and dApps creation: https://developer.elastos.org/elastos_trinity/setup/
Learn more about Elastos and get Support at: https://github.com/elastos/Elastos.Community
elastOS Design Goals
Our elastOS app is still an early version and work in progress, but our goal is to provide a single unified interface for users to run multiple dApps that can share a common identity, wallet, personal storage vault and more.
For developers we aim to create a simpler developer experience with standardized plugins that are open-source and decentralized. For example our integrated light-wallets are SPV nodes that connect directly to the blockchain, right now we only have ELA and DID Chain support but we will add ETH Sidechain support soon.
In the future as we onboard more users, developers can build their dApps for our ecosystem and instantly gain exposure to all our users and community.
KEY FOCUSES
1. Data Privacy and Self-Sovereign Identity (DIDs)
Elastos is a member of the Decentralized Identity Foundation (DIF) - https://identity.foundation and very supportive of efforts to create things like global credit scores, practical use cases for “Verifiable Presentations” (https://www.w3.org/TR/vc-data-model/#presentations-0) or innovative ways to create trustworthy skills, job or educational credentials. A common use of our dApps is to login with DID through scanning a QR code, which opens up many possibilities.
2. Digital Assets
Our goal is to create a vibrant ecosystem for digital assets that could share the same elastOS wallet to store their NFTs, this gives users a central place to manage NFTs across various dApps. We are still developing the NFT integration to our elastOS wallet, for now see the below section on the ELAETHSC for tips on how to connect to our ETH Sidechain.
3. P2P and Private Storage Vault Apps
In addition to elastOS which functions like a container for dApps, Elastos has also created the Elastos Carrier P2P network and Hive storage system.
Elastos Carrier already has over 200k+ active proxy nodes - http://peerjet.net - and a P2P messenger app (https://hyper.im), you can use the Carrier plugin to connect your apps directly, and it will use a DHT to route e2e encrypted messages through our proxy nodes if needed. Hive is a standard interface with swappable back-end storage solutions, which defaults to IPFS
elastOS (Trinity) Plugins / Features
DID Plugin — Identity
https://developer.elastos.org/references/trinity_plugins/modules/didplugin.html This plugin is the Elastos implementation of W3C's Decentralized Identity (DID) specification. Decentralized identities allow users to be owner of their identities, without relying on third party providers.
DID Explorer: https://explorer.elaphant.app
Inter-App Communication
Apps showcasing inter-app communication are desired, and use cases using intents are welcome.
Generic intent actions + how to call them https://developer.elastos.org/elastos_core_services/guides/elastos_scheme
elastOS specific intent actions https://developer.elastos.org/elastos_trinity/guides/available_intents
Hive Plugin — Storage (IPFS)
https://developer.elastos.org/references/trinity_plugins/modules/hiveplugin.html Hive provides the IPFS(InterPlanetary File System, a protocol and peer-to-peer network for storing and sharing data in a distributed file system)-based APIs. Demo: https://github.com/elastos/Elastos.Trinity.DApps.Demo.Hive
Carrier Plugin - P2P Encrypted Communication
https://developer.elastos.org/references/trinity_plugins/modules/carrierplugin.html A decentralized distributed peer-to-peer networking system. With carrier, you can friend someone and use sessions, file transfers among friends. Demo: https://github.com/elastos/Elastos.Trinity.DApps.Demo.Carrier
Other Plugins
See: https://developer.elastos.org/references/trinity_plugins You can access a suite of typical mobile plugins such as access to the camera, file storage, fingerprint and even a P2P network communication layer called Elastos Carrier.
Elastos Ethereum Sidechain (ELAETHSC)
Elastos also has an EVM based blockchain, we have chainIds 20 and 21 for our mainnet and testnet respectively. If you need smart contracts for your project you must use our testnet, please compile your contracts to --evm-version byzantium.
Testnet RPC Port: https://rpc.elaeth.io
Testnet Block Explorer: https://testnet.elaeth.io
Testnet Faucet: https://faucet.elaeth.io
Please Note: There is currently no websocket support for the ELAETHSC but you can build your own compatible Geth node: https://github.com/elastos/Elastos.ELA.SideChain.ETH
TODO: Guide on Calling Smart Contracts
Other Example Code Resources
elastOS built-in dApps
https://github.com/elastos?q=Trinity.DApps
elastOS PlayChat
https://github.com/getmoonshotHQ/elastOS.Playchat
Wallet Plugin — Payments (ELA) - Temporarily Unavailable
https://developer.elastos.org/references/trinity_plugins/modules/walletplugin.html Elastos has multiple blockchains:
ELA mainchain - UTXO based with a 2 minute blocktime, you can use the testnet at and view the mainnet at
DID Sidechain - merge-mines with Elastos and is dedicated to storing identity (DID) data
ETH Sidechain - uses DPoS consensus from our DPoS Supernode network voted through our ELA native token. There is no support for this chain with our wallet plugin at the moment, to run smart contracts you can use Fortmatic (https://fortmatic.com) which is whitelisted for our testnet at https://rpc.elaeth.io or ephemeral keys and our testnet GSN relayer, see http://elajs.com for more info.
SUBMISSION REQUIREMENTS
A valid submission is a running demo elastOS capsule/dApp published via our CLI tool, code must be open-sourced.
SUBMISSION DEADLINE
As part of the NY Blockchain Week Virtual Hackathon this Challenge will end on May 27, 2020 at 11:59PM EST.
JUDGING CRITERIA
We are looking for projects that embody the design goals of elastOS and use our plugins in practical or creative ways. You should try your best to build workarounds for any limitations of elastOS, we will gratefully welcome the feedback on how to improve elastOS.
Understandably elastOS is still a work in progress, so any brief descriptions of how you would use the upcoming plugins on our roadmap will be reviewed, but far greater consideration will be given to teams that actually build workarounds.
WINNER ANNOUNCEMENT DATE
Winners will be announced on June 5, 2020 by end of day EST.