Difference between revisions of "Main Page"
(Launchpad added) |
|||
Line 39: | Line 39: | ||
* [[Source code structure]] - description of our React Native codebase structure and components | * [[Source code structure]] - description of our React Native codebase structure and components | ||
* [[ACL]] (access control list - default privileges for Owners, Apps and Users | * [[ACL]] (access control list - default privileges for Owners, Apps and Users | ||
<u>License note</u>: by default, Ethora engine codebase is distributed under AGPL open-source license. You may also obtain a commercial license by [https://www.dappros.com/contact-us/ contacting us] if your project requires so.[[File:Agplv3-with-text-162x68.png|thumb|none]] | |||
== Launchpad == | ==Launchpad== | ||
Visit our [[Launchpad]] section to check out some of the new projects built with the help of Ethora engine. | Visit our [[Launchpad]] section to check out some of the new projects built with the help of Ethora engine. | ||
== Discussion == | ==Discussion== | ||
Discord server: https://discord.gg/MZqHAhTS | Discord server: https://discord.gg/MZqHAhTS | ||
Line 52: | Line 53: | ||
Tech support mail group: ethora AT dappros.com | Tech support mail group: ethora AT dappros.com | ||
== Project goals == | ==Project goals== | ||
This project aims to promote decentralized economy and technology by offering a mobile app platform that can be easily used by any business, startup or community. Project authors build upon their expertise in the domains of mobile app development (iOS and Android), real-time communication (Erlang, ejabberd, XMPP) and blockchain (Ethereum) deeply believing the combination of these technologies offers the key missing gateway for average users into the decentralized economies of the future. | This project aims to promote decentralized economy and technology by offering a mobile app platform that can be easily used by any business, startup or community. Project authors build upon their expertise in the domains of mobile app development (iOS and Android), real-time communication (Erlang, ejabberd, XMPP) and blockchain (Ethereum) deeply believing the combination of these technologies offers the key missing gateway for average users into the decentralized economies of the future. | ||
Using Ethora codebase you can easily create and publish your own iOS and Android app for your community, equip your members with crypto wallets and get a crowd-sourced community building going supported by your own token economy through ERC-20 and NFT digital assets. Real-time communication features (chat rooms, messaging, push notifications) help to keep your community sticky, engaged and viral. You can track your community metrics (user registrations, app usage, token transfers, messages) using Google Firebase or built in analytics provided by Dappros Platform. | Using Ethora codebase you can easily create and publish your own iOS and Android app for your community, equip your members with crypto wallets and get a crowd-sourced community building going supported by your own token economy through ERC-20 and NFT digital assets. Real-time communication features (chat rooms, messaging, push notifications) help to keep your community sticky, engaged and viral. You can track your community metrics (user registrations, app usage, token transfers, messages) using Google Firebase or built in analytics provided by Dappros Platform. | ||
== Features == | ==Features== | ||
{| class="wikitable" | {| class="wikitable" | ||
|'''Codebase''' | |'''Codebase''' | ||
Line 84: | Line 85: | ||
|- | |- | ||
|[[Social sign in|Social sign-in]] (Apple) | |[[Social sign in|Social sign-in]] (Apple) | ||
|Imports e-mail from Apple | |Imports e-mail from Apple | ||
|- | |- | ||
|Login + Password | |Login + Password | ||
Line 93: | Line 94: | ||
|- | |- | ||
|E-mail verification | |E-mail verification | ||
|(optional) Send a verification link if you need users e-mails confirmed, for example to unlock features / content to specific @domain name user or to verify membership in your community via a 3rd party API integration | |(optional) Send a verification link if you need users e-mails confirmed, for example to unlock features / content to specific @domain name user or to verify membership in your community via a 3rd party API integration | ||
|- | |- | ||
|Secondary e-mails | |Secondary e-mails | ||
|(if enabled) Users may specify and verify additional e-mails | |(if enabled) Users may specify and verify additional e-mails | ||
|- | |- | ||
|Phone verification (OTP) | | Phone verification (OTP) | ||
|(optional) Verify users phone number via Firebase or Twilio integration | |(optional) Verify users phone number via Firebase or Twilio integration | ||
|- | |- | ||
Line 107: | Line 108: | ||
| | | | ||
|- | |- | ||
|[[Cryptowallet and digital assets|Crypto wallet]] | |[[Cryptowallet and digital assets|Crypto wallet]] | ||
|Each user is automatically provided with a crypto wallet | |Each user is automatically provided with a crypto wallet | ||
|- | |- | ||
Line 120: | Line 121: | ||
|- | |- | ||
|Profile business details | |Profile business details | ||
|Optional - Users can specify their business details (company, phone, website) | | Optional - Users can specify their business details (company, phone, website) | ||
|- | |- | ||
|Balances (blockchain) | |Balances (blockchain) | ||
|Balance is shown in nav bar and in users profile | |Balance is shown in nav bar and in users profile | ||
|- | |- | ||
|Transactions (blockchain) | | Transactions (blockchain) | ||
|Transactions for Coins and Items are done via blockchain (distributed immutable ledger) | |Transactions for Coins and Items are done via blockchain (distributed immutable ledger) | ||
|- | |- | ||
Line 131: | Line 132: | ||
|(by default) Users can see balances and transactions on other users' profiles | |(by default) Users can see balances and transactions on other users' profiles | ||
|- | |- | ||
|[[Item or NFT|Items/NFT provenance]] | | [[Item or NFT|Items/NFT provenance]] | ||
|Users can check the history of Items, NFTs, certificates and assets held by other users (when issued, by whom, history of transactions etc) | | Users can check the history of Items, NFTs, certificates and assets held by other users (when issued, by whom, history of transactions etc) | ||
|- | |- | ||
|Items/NFT interactions | |Items/NFT interactions | ||
|(if enabled) other users can purchase, exchange or bid for Items/NFTs through owner user's profile | |(if enabled) other users can purchase, exchange or bid for Items/NFTs through owner user's profile | ||
|- | |- | ||
|Profile share via QR | | Profile share via QR | ||
|Users can share their wallet address and profile details via a QR code | |Users can share their wallet address and profile details via a QR code | ||
|- | |- | ||
|Profile share via link | |Profile share via link | ||
|Users can share their wallet address and profile details via a hyperlink | |Users can share their wallet address and profile details via a hyperlink | ||
|- | |- | ||
Line 149: | Line 150: | ||
| | | | ||
|- | |- | ||
|[[Coin]] | |[[Coin]] | ||
|App/Ecosystem has a default ERC-20 token called Coin. It is shown in nav bar, user profile and used for most interactions by default. | |App/Ecosystem has a default ERC-20 token called Coin. It is shown in nav bar, user profile and used for most interactions by default. | ||
|- | |- | ||
Line 156: | Line 157: | ||
|- | |- | ||
|Social Likes | |Social Likes | ||
|Users can spend and receive Coins and Items for their chat messages and content | | Users can spend and receive Coins and Items for their chat messages and content | ||
|- | |- | ||
|In-chat transactions | |In-chat transactions | ||
|Users can transfer Coins and [[NFT mint and trasfer|Items]] to each other within chat Rooms / Spaces and also send/receive tokens from Rooms and Bots | | Users can transfer Coins and [[NFT mint and trasfer|Items]] to each other within chat Rooms / Spaces and also send/receive tokens from Rooms and Bots | ||
|- | |- | ||
|Explorer | |Explorer | ||
|Transactions and Tokens provenance seen in users profiles, web explorer and b/c nodes transactions | |Transactions and Tokens provenance seen in users profiles, web explorer and b/c nodes transactions | ||
|- | |- | ||
|[[Item or NFT|Items (NFT)]] | | [[Item or NFT|Items (NFT)]] | ||
|Items (ERC-721 tokens) are unique or limited edition assets transferrable in chats and displayed on users profiles. Metadata and multimedia hosted on IPFS. | |Items (ERC-721 tokens) are unique or limited edition assets transferrable in chats and displayed on users profiles. Metadata and multimedia hosted on IPFS. | ||
|- | |- | ||
|[[NFT mint and trasfer|Mint NFTs]] | |[[NFT mint and trasfer|Mint NFTs]] | ||
|(if enabled) Users can mint their own NFTs directly from the App. This can be limited to business-specific scenarios (for example, upload your academic or health certificate, upload a photograph of a shipped item etc) | |(if enabled) Users can mint their own NFTs directly from the App. This can be limited to business-specific scenarios (for example, upload your academic or health certificate, upload a photograph of a shipped item etc) | ||
|- | |- | ||
|NFT P2P purchases | |NFT P2P purchases | ||
|(if enabled) Users can purchase Items directly from other Users' profiles (Buy now & Bid) | |(if enabled) Users can purchase Items directly from other Users' profiles (Buy now & Bid) | ||
|- | |- | ||
|[[Item or NFT|Item provenance]] | | [[Item or NFT|Item provenance]] | ||
|Item (NFT) display their mint and transactions history in Users profiles | |Item (NFT) display their mint and transactions history in Users profiles | ||
|- | |- | ||
Line 179: | Line 180: | ||
| | | | ||
|- | |- | ||
|'''Chat/Messaging''' | |'''Chat/Messaging''' | ||
| | | | ||
|- | |- | ||
Line 185: | Line 186: | ||
|Lobby screen shows which Rooms/Spaces and Private chats user has joined, number of users and a latest message in each room | |Lobby screen shows which Rooms/Spaces and Private chats user has joined, number of users and a latest message in each room | ||
|- | |- | ||
|[[Chat rooms or spaces|Chat Rooms / Spaces]] | |[[Chat rooms or spaces|Chat Rooms / Spaces]] | ||
|Users can chat in group chats, also send and receive Coins and Items within rooms | |Users can chat in group chats, also send and receive Coins and Items within rooms | ||
|- | |- | ||
|Private chats | |Private chats | ||
|Users / crypto wallets can message each other individually | |Users / crypto wallets can message each other individually | ||
|- | |- | ||
|Manage chats | | Manage chats | ||
|Users can rearrange chats via Lobby screen controls | |Users can rearrange chats via Lobby screen controls | ||
|- | |- | ||
|Profile menu | |Profile menu | ||
|Tap on User's profiile to [[NFT mint and trasfer|send Coins/Items]], start a Private chat, Ban/Report etc | |Tap on User's profiile to [[NFT mint and trasfer|send Coins/Items]], start a Private chat, Ban/Report etc | ||
|- | |- | ||
|Default Rooms / Spaces | | Default Rooms / Spaces | ||
|Specify "pinned" or Default Rooms that all of your App / Ecosystem users will auto-join | |Specify "pinned" or Default Rooms that all of your App / Ecosystem users will auto-join | ||
|- | |- | ||
|Premium / Members-only rooms | |Premium / Members-only rooms | ||
|(If enabled) certain Rooms/Spaces may be limited to a member status confirmed via a 3rd party integration | |(If enabled) certain Rooms/Spaces may be limited to a member status confirmed via a 3rd party integration | ||
|- | |- | ||
|Ban users | | Ban users | ||
|Room/Space owners and admins can ban other users | |Room/Space owners and admins can ban other users | ||
|- | |- | ||
Line 209: | Line 210: | ||
|Users see when other users are typing | |Users see when other users are typing | ||
|- | |- | ||
|Photos/avatars/initials | |Photos/avatars/initials | ||
|Users represented by photos / avatars if uploaded, otherwise initials avatar in the messaging interactions | |Users represented by photos / avatars if uploaded, otherwise initials avatar in the messaging interactions | ||
|- | |- | ||
Line 216: | Line 217: | ||
|- | |- | ||
|Voice & Video messages | |Voice & Video messages | ||
|Long tap to record and send a message | |Long tap to record and send a message | ||
|- | |- | ||
|Social Likes | |Social Likes | ||
Line 222: | Line 223: | ||
|- | |- | ||
|Create Rooms / Spaces | |Create Rooms / Spaces | ||
|Users can create their own chat Rooms / Spaces, modify their settings and rules, invite other users | |Users can create their own chat Rooms / Spaces, modify their settings and rules, invite other users | ||
|- | |- | ||
|Share room via QR | |Share room via QR | ||
Line 231: | Line 232: | ||
|- | |- | ||
|Chat Bots | |Chat Bots | ||
|Bots allow to connect custom business logic and smart contracts via conversational interface. Some bots are available out of the box. | | Bots allow to connect custom business logic and smart contracts via conversational interface. Some bots are available out of the box. | ||
|- | |- | ||
|Room/Space wallets | |Room/Space wallets | ||
Line 237: | Line 238: | ||
|- | |- | ||
|[[Push notifications automated|Push Notifications (transactional)]] | |[[Push notifications automated|Push Notifications (transactional)]] | ||
|When not online, users receive push notification alerts from Rooms/Spaces, Direct Messages, Coins or Items transfers | |When not online, users receive push notification alerts from Rooms/Spaces, Direct Messages, Coins or Items transfers | ||
|- | |- | ||
|Manage Rooms / Spaces | |Manage Rooms / Spaces | ||
|User can move, rename, leave Rooms / Spaces to organize their Lobby screen | | User can move, rename, leave Rooms / Spaces to organize their Lobby screen | ||
|- | |- | ||
| | | | ||
Line 248: | Line 249: | ||
| | | | ||
|- | |- | ||
|On-boarding screens | | On-boarding screens | ||
|(Optional, disabled by default), Educational screens for your Users upon first time they open the App | |(Optional, disabled by default), Educational screens for your Users upon first time they open the App | ||
|- | |- | ||
|Join bonus | | Join bonus | ||
|(If enabled), Users receive 100 Coins when they join your Application / Ecosystem. This enables new Users to participate in your Ecosystem and p2p rewards. | |(If enabled), Users receive 100 Coins when they join your Application / Ecosystem. This enables new Users to participate in your Ecosystem and p2p rewards. | ||
|- | |- | ||
|P2P rewards | |P2P rewards | ||
|Users can receive "crypto likes" Coins and Items in response to messages, thus enabling p2p rewards within your Ecosystem. | |Users can receive "crypto likes" Coins and Items in response to messages, thus enabling p2p rewards within your Ecosystem. | ||
|- | |- | ||
|Daily bonus | |Daily bonus | ||
|(If enabled), Users will receive 5 coins every 24h they use the Application | |(If enabled), Users will receive 5 coins every 24h they use the Application | ||
|- | |- | ||
Line 264: | Line 265: | ||
|- | |- | ||
|[[Push notifications (manual / marketing)|Push notifications (broadcasted)]] | |[[Push notifications (manual / marketing)|Push notifications (broadcasted)]] | ||
|Send informational messages to your Users | |Send informational messages to your Users | ||
|- | |- | ||
|Premium / Members-only Spaces | |Premium / Members-only Spaces | ||
Line 275: | Line 276: | ||
| | | | ||
|- | |- | ||
|Analytics dashboard | | Analytics dashboard | ||
|Web-based analytics UI providing you with your App & Ecosystem metrics such as Users, Sessions, Transactions, Coins & Items, Messages, Push Notifications, Attachments etc. | |Web-based analytics UI providing you with your App & Ecosystem metrics such as Users, Sessions, Transactions, Coins & Items, Messages, Push Notifications, Attachments etc. | ||
|- | |- | ||
|Firebase integration | |Firebase integration | ||
|Monitor app usage, demography, location, re-actiivation via Google Firebase dashboards | |Monitor app usage, demography, location, re-actiivation via Google Firebase dashboards | ||
|- | |- | ||
|Explorer | |Explorer | ||
|Web explorer is available in Dappros Platform dashboard | |Web explorer is available in Dappros Platform dashboard | ||
|- | |- | ||
|Validation node | |Validation node | ||
Line 290: | Line 291: | ||
| | | | ||
|- | |- | ||
|'''ACL''' | |'''ACL''' | ||
| | | | ||
|- | |- | ||
Line 296: | Line 297: | ||
|Manage Access at Owner, Application and User level for different actions and resources (see [[ACL]] page for details). | |Manage Access at Owner, Application and User level for different actions and resources (see [[ACL]] page for details). | ||
|- | |- | ||
| | | | ||
| | | | ||
|- | |- | ||
|'''[[API]]''' | |'''[[API]]''' | ||
|Our RESTful JSON API for cases where you need to go beyond functionalities and flows currently implemented in the engine | |Our RESTful JSON API for cases where you need to go beyond functionalities and flows currently implemented in the engine | ||
|- | |- | ||
Line 305: | Line 306: | ||
|Full API documentation of Ethora's backend via Dappros Platform. This provides access to Application/API/Web3/caching (DP Core) + Messaging (XMPP Ejabberd, Push Notifications) + Ethereum Blockchain (geth): https://www.dappros.com/developers/ | |Full API documentation of Ethora's backend via Dappros Platform. This provides access to Application/API/Web3/caching (DP Core) + Messaging (XMPP Ejabberd, Push Notifications) + Ethereum Blockchain (geth): https://www.dappros.com/developers/ | ||
|- | |- | ||
|[https://app-dev.dappros.com/api-docs/ Swagger] | |[https://app-dev.dappros.com/api-docs/ Swagger] | ||
|Interactive web interface to query our API: https://app-dev.dappros.com/api-docs/ | | Interactive web interface to query our API: https://app-dev.dappros.com/api-docs/ | ||
|- | |- | ||
| | | | ||
Line 314: | Line 315: | ||
| | | | ||
|- | |- | ||
|[[ChatRoom URL redirect|Short URL Room/Space linking]] | |[[ChatRoom URL redirect|Short URL Room/Space linking]] | ||
|Link to Rooms/Spaces within your App via short URL from other applications and websites (see also QR code sharing). | |Link to Rooms/Spaces within your App via short URL from other applications and websites (see also QR code sharing). | ||
|- | |- | ||
|Bots | |Bots | ||
|Automated agents with their own Profiles and Wallets. May be interfacing dApps / smart contracts or external integration such as e-commerce, information retrieval etc. Some ready bots can be enabled out of the box, e.g. Notary Bot will sync your messages into immutable ledger, Booking bot will set up an appointment with its owner User etc. Bots allow to integrate any functionality not covered by Ethora engine. | |Automated agents with their own Profiles and Wallets. May be interfacing dApps / smart contracts or external integration such as e-commerce, information retrieval etc. Some ready bots can be enabled out of the box, e.g. Notary Bot will sync your messages into immutable ledger, Booking bot will set up an appointment with its owner User etc. Bots allow to integrate any functionality not covered by Ethora engine. | ||
|- | |- | ||
|Privacy Policy | |Privacy Policy | ||
|Ethora's standard Privacy Policy is included within the App which covers Ethora-based projects universally. You can modify or replace it with your own Privacy Policy. | |Ethora's standard Privacy Policy is included within the App which covers Ethora-based projects universally. You can modify or replace it with your own Privacy Policy. | ||
|} | |} | ||
== Disclaimer == | ==Disclaimer== | ||
Our platform provides technology for ecosystems built on the principles of openness, transparency and decentralization. By design, certain information such as user profiles, rankings, and the transactions of digital assets will be available to the whole ecosystem or to the public. You should not use the standard version of this product for storing or sending secure or commercially sensitive content. You should not use any versions of this product for emergency communications. You should not share information or content through our platform in cases where you may not be comfortable or authorized to share it with the public. | Our platform provides technology for ecosystems built on the principles of openness, transparency and decentralization. By design, certain information such as user profiles, rankings, and the transactions of digital assets will be available to the whole ecosystem or to the public. You should not use the standard version of this product for storing or sending secure or commercially sensitive content. You should not use any versions of this product for emergency communications. You should not share information or content through our platform in cases where you may not be comfortable or authorized to share it with the public. | ||
Note: enterprise-friendly version of Ethora engine (additional security layers, custom user sign-on mechanisms, Professional Services & SLA package) and dedicated hosting option are available under a separate license. | Note: enterprise-friendly version of Ethora engine (additional security layers, custom user sign-on mechanisms, Professional Services & SLA package) and dedicated hosting option are available under a separate license. | ||
== Developers and Funders of the project == | ==Developers and Funders of the project== | ||
Ethora mobile app codebase, Dappros Platform backend (Ethereum-based infrastructure, core application, wallets handling, caching, Web3, IPFS storage and API layer) are developed and supported by [https://dappros.com Dappros]. Real-time communication infrastructure (Ejabberd chat server and custom application logic, Push Notifications, statistics and monitoring) are developed by [https://deepxhub.com/ DeepX]. | Ethora mobile app codebase, Dappros Platform backend (Ethereum-based infrastructure, core application, wallets handling, caching, Web3, IPFS storage and API layer) are developed and supported by [https://dappros.com Dappros]. Real-time communication infrastructure (Ejabberd chat server and custom application logic, Push Notifications, statistics and monitoring) are developed by [https://deepxhub.com/ DeepX]. | ||
The project is currently (2018-2021) developed and funded solely by these two privately owned companies. It is our aim however to transition project governance to an open-source foundation / DAO as soon as the activity from the developers community becomes significant to justify such transition. In such case the existing entities will focus on commercial services and enterprise version of the engine, while the project core development will be governed by a foundation / DAO under the principles of open source software. | The project is currently (2018-2021) developed and funded solely by these two privately owned companies. It is our aim however to transition project governance to an open-source foundation / DAO as soon as the activity from the developers community becomes significant to justify such transition. In such case the existing entities will focus on commercial services and enterprise version of the engine, while the project core development will be governed by a foundation / DAO under the principles of open source software. | ||
== Commercial & licensing model == | ==Commercial & licensing model == | ||
Our approach to licensing is similar to a 'Red Hat model' where we offer most of the product open-source so that a wide global community can benefit from it and contribute to its further development, but we also offer commercial licensing and technical support options for businesses and enterprises to help fund further development of the product. | Our approach to licensing is similar to a 'Red Hat model' where we offer most of the product open-source so that a wide global community can benefit from it and contribute to its further development, but we also offer commercial licensing and technical support options for businesses and enterprises to help fund further development of the product. | ||
In terms of license and code availability the product can be broken down as follows: | In terms of license and code availability the product can be broken down as follows: | ||
* Client-side (mobile app): (A): '''free, open-source''' under GPL license; (B) Paid-for commercial license with security add-on and SLA package. | *Client-side (mobile app): (A): '''free, open-source''' under GPL license; (B) Paid-for commercial license with security add-on and SLA package. | ||
* Server-side: '''freemium''' (free cloud plan fits most startups and non-commercial organizations, paid SLA and dedicated hosting plans available for businesses that require them). | *Server-side: '''freemium''' (free cloud plan fits most startups and non-commercial organizations, paid SLA and dedicated hosting plans available for businesses that require them). | ||
== Future plans & roadmap == | ==Future plans & roadmap== | ||
=== DAO governance vision === | === DAO governance vision=== | ||
Currently (2021) Dappros is a privately owned company that offers an open-source mobile app, open-source private blockchain and closed-source backend. Our founders promote decentralized economy and free p2p communication technologies for many years. We are developing a roadmap where the platform will become fully open and its governance can be transferred to a decentralized organization. In such scenario, we will remain a private organisation offering implementation and SLA services, but the development of the new versions of the platform engine and maintenance of the publicly available infrastructure will become globally distributed and decentralized. Our only limiting factor here is funding and time constraints. | Currently (2021) Dappros is a privately owned company that offers an open-source mobile app, open-source private blockchain and closed-source backend. Our founders promote decentralized economy and free p2p communication technologies for many years. We are developing a roadmap where the platform will become fully open and its governance can be transferred to a decentralized organization. In such scenario, we will remain a private organisation offering implementation and SLA services, but the development of the new versions of the platform engine and maintenance of the publicly available infrastructure will become globally distributed and decentralized. Our only limiting factor here is funding and time constraints. | ||
=== Roadmap 2018-2021 === | ===Roadmap 2018-2021=== | ||
* A platform allowing businesses and creators to easily set up and for users to join and explore a tokenized p2p ecosystem | *A platform allowing businesses and creators to easily set up and for users to join and explore a tokenized p2p ecosystem | ||
* Partially centralized | *Partially centralized | ||
* Assets and transactions ledger are decentralized | *Assets and transactions ledger are decentralized | ||
* Leveraging state of the art DLT, mobile and communication technologies | *Leveraging state of the art DLT, mobile and communication technologies | ||
* Mobile-first ("no ads, no gimmicks") | *Mobile-first ("no ads, no gimmicks") | ||
* Open-source client | *Open-source client | ||
=== Roadmap 2022-2023 === | ===Roadmap 2022-2023 === | ||
* Self-Sovereign Identity - users own their identity, content and assets | *Self-Sovereign Identity - users own their identity, content and assets | ||
* Open-source server - anybody can download and run a Validator or Host node (closed-source enterprise version possible for private chain projects) | *Open-source server - anybody can download and run a Validator or Host node (closed-source enterprise version possible for private chain projects) | ||
* Validator / Hoster incentives - self-supporting network | *Validator / Hoster incentives - self-supporting network | ||
* Easy sidechain / mainchain assets transfer | * Easy sidechain / mainchain assets transfer | ||
=== Roadmap 2024-2025 === | ===Roadmap 2024-2025=== | ||
* Decentralized maintenance allowing both (a) incentivized hosting of the public infrastructure and (b) private networks. À la Ethereum; | *Decentralized maintenance allowing both (a) incentivized hosting of the public infrastructure and (b) private networks. À la Ethereum; | ||
* R&D grants available for teams and individual developers contributors globally | *R&D grants available for teams and individual developers contributors globally | ||
* Decentralized governance - platform stakeholders make important decisions for the public network | *Decentralized governance - platform stakeholders make important decisions for the public network | ||
* Meritocracy - governance stakes are earned through supporting platform infrastructure (running nodes), R&D work and platform promotion | * Meritocracy - governance stakes are earned through supporting platform infrastructure (running nodes), R&D work and platform promotion | ||
== Contact == | ==Contact== | ||
[https://www.dappros.com/contact-us/ Drop us a line] if you’re interested to find out more or to become a contributor to the project. | [https://www.dappros.com/contact-us/ Drop us a line] if you’re interested to find out more or to become a contributor to the project. | ||
Also feel free to submit pull requests in our [https://github.com/dappros/ethora Github repo]! | Also feel free to submit pull requests in our [https://github.com/dappros/ethora Github repo]! |
Revision as of 22:01, 21 October 2021
What is Ethora engine
Mobile app engine and platform for social tokenized communities.
Some people call us "Facebook for blockchain" or "decentralized WeChat" while others prefer to see it as a "nocode" or "lowcode" platform.
It is a B2B2C product meaning it's built by us for you (B2B) so you can provide your end users (B2C) with their own App / Ecosystem.
Ethora engine leverages state-of-the-art distributed ledger, tokenization and messaging technologies.
Currently available in React Native for iOS and Android.
Core features
- iOS & Android
- Social sign-in & Crypto wallets
- Coins (ERC-20 tokens)
- NFT Items (ERC-721 tokens)
- p2p content rewards (a.k.a. "crypto likes" - sending tokens to messages)
- Immutable decentralized transactions ledger (powered by Ethereum blockchain)
- Crowd-sourced rooms and spaces, p2p QR-code / public key - based invites system
- Chat / Messaging & Social profiles
- Bots and smart contracts extensions
- Push notifications
Scroll further below for the full Features list.
Source code
https://github.com/dappros/ethora/
Useful articles:
- Source code structure - description of our React Native codebase structure and components
- ACL (access control list - default privileges for Owners, Apps and Users
License note: by default, Ethora engine codebase is distributed under AGPL open-source license. You may also obtain a commercial license by contacting us if your project requires so.
Launchpad
Visit our Launchpad section to check out some of the new projects built with the help of Ethora engine.
Discussion
Discord server: https://discord.gg/MZqHAhTS
Telegram channel: https://t.me/etoapp
Telegram discussion group: https://t.me/joinchat/5UDWd54wECA3Mjdk
Tech support mail group: ethora AT dappros.com
Project goals
This project aims to promote decentralized economy and technology by offering a mobile app platform that can be easily used by any business, startup or community. Project authors build upon their expertise in the domains of mobile app development (iOS and Android), real-time communication (Erlang, ejabberd, XMPP) and blockchain (Ethereum) deeply believing the combination of these technologies offers the key missing gateway for average users into the decentralized economies of the future.
Using Ethora codebase you can easily create and publish your own iOS and Android app for your community, equip your members with crypto wallets and get a crowd-sourced community building going supported by your own token economy through ERC-20 and NFT digital assets. Real-time communication features (chat rooms, messaging, push notifications) help to keep your community sticky, engaged and viral. You can track your community metrics (user registrations, app usage, token transfers, messages) using Google Firebase or built in analytics provided by Dappros Platform.
Features
Codebase | |
React Native (iOS & Android) | iOS and Android platforms are fully supported from the single React Native codebase |
Config file | Config file allows to adjust important parameters and simplifies rebranding so that Ethora engine can be customized to a specific project |
Dev / Prod | Switch between Development and Production infrastructures for development, testing and running live purposes |
Users authentication | |
Social sign-in (Google) | Imports name, photo and e-mail from Google |
Social sign-in (Facebook) | Imports name, photo and e-mail from Facebook |
Social sign-in (Apple) | Imports e-mail from Apple |
Login + Password | (optional) Your own authentication system via Dappros Platform backend |
3rd party authentication | (optional) Your own authentication system via 3rd party |
E-mail verification | (optional) Send a verification link if you need users e-mails confirmed, for example to unlock features / content to specific @domain name user or to verify membership in your community via a 3rd party API integration |
Secondary e-mails | (if enabled) Users may specify and verify additional e-mails |
Phone verification (OTP) | (optional) Verify users phone number via Firebase or Twilio integration |
User Profiles & Wallets | |
Crypto wallet | Each user is automatically provided with a crypto wallet |
Profile First + Last name | Names imported from social login if applicable |
Profile photo | Photo imported from social login if applicable |
Profile bio | Optional - Users can specify brief information about themselves |
Profile business details | Optional - Users can specify their business details (company, phone, website) |
Balances (blockchain) | Balance is shown in nav bar and in users profile |
Transactions (blockchain) | Transactions for Coins and Items are done via blockchain (distributed immutable ledger) |
Public display for tokens balances and transactions | (by default) Users can see balances and transactions on other users' profiles |
Items/NFT provenance | Users can check the history of Items, NFTs, certificates and assets held by other users (when issued, by whom, history of transactions etc) |
Items/NFT interactions | (if enabled) other users can purchase, exchange or bid for Items/NFTs through owner user's profile |
Profile share via QR | Users can share their wallet address and profile details via a QR code |
Profile share via link | Users can share their wallet address and profile details via a hyperlink |
Tokens | |
Coin | App/Ecosystem has a default ERC-20 token called Coin. It is shown in nav bar, user profile and used for most interactions by default. |
ERC-20 tokens and ETH | Other ERC-20 tokens and ETH can also be used |
Social Likes | Users can spend and receive Coins and Items for their chat messages and content |
In-chat transactions | Users can transfer Coins and Items to each other within chat Rooms / Spaces and also send/receive tokens from Rooms and Bots |
Explorer | Transactions and Tokens provenance seen in users profiles, web explorer and b/c nodes transactions |
Items (NFT) | Items (ERC-721 tokens) are unique or limited edition assets transferrable in chats and displayed on users profiles. Metadata and multimedia hosted on IPFS. |
Mint NFTs | (if enabled) Users can mint their own NFTs directly from the App. This can be limited to business-specific scenarios (for example, upload your academic or health certificate, upload a photograph of a shipped item etc) |
NFT P2P purchases | (if enabled) Users can purchase Items directly from other Users' profiles (Buy now & Bid) |
Item provenance | Item (NFT) display their mint and transactions history in Users profiles |
Chat/Messaging | |
Lobby screen & Default chats | Lobby screen shows which Rooms/Spaces and Private chats user has joined, number of users and a latest message in each room |
Chat Rooms / Spaces | Users can chat in group chats, also send and receive Coins and Items within rooms |
Private chats | Users / crypto wallets can message each other individually |
Manage chats | Users can rearrange chats via Lobby screen controls |
Profile menu | Tap on User's profiile to send Coins/Items, start a Private chat, Ban/Report etc |
Default Rooms / Spaces | Specify "pinned" or Default Rooms that all of your App / Ecosystem users will auto-join |
Premium / Members-only rooms | (If enabled) certain Rooms/Spaces may be limited to a member status confirmed via a 3rd party integration |
Ban users | Room/Space owners and admins can ban other users |
Now typing | Users see when other users are typing |
Photos/avatars/initials | Users represented by photos / avatars if uploaded, otherwise initials avatar in the messaging interactions |
File attachments | Photos, Videos, other file types attachments supported. Previews supported for Photos and Videos. |
Voice & Video messages | Long tap to record and send a message |
Social Likes | Users can receive Coins and Items towards messages and content they post |
Create Rooms / Spaces | Users can create their own chat Rooms / Spaces, modify their settings and rules, invite other users |
Share room via QR | User can share and join Rooms / Spaces via QR codes. For example, invite users via TV or print, Zoom call etc |
Share room via link | Text link sharing allows to link directly to Rooms / Spaces within and outside the app. Users join by tapping the link. |
Chat Bots | Bots allow to connect custom business logic and smart contracts via conversational interface. Some bots are available out of the box. |
Room/Space wallets | Users can transact Coins and Items with Room/Spaces or their smart contracts |
Push Notifications (transactional) | When not online, users receive push notification alerts from Rooms/Spaces, Direct Messages, Coins or Items transfers |
Manage Rooms / Spaces | User can move, rename, leave Rooms / Spaces to organize their Lobby screen |
Users engagement & P2P Economy | |
On-boarding screens | (Optional, disabled by default), Educational screens for your Users upon first time they open the App |
Join bonus | (If enabled), Users receive 100 Coins when they join your Application / Ecosystem. This enables new Users to participate in your Ecosystem and p2p rewards. |
P2P rewards | Users can receive "crypto likes" Coins and Items in response to messages, thus enabling p2p rewards within your Ecosystem. |
Daily bonus | (If enabled), Users will receive 5 coins every 24h they use the Application |
Activity rewards | (work in progress) - Ecosystem rewards users for activity that is useful to the community |
Push notifications (broadcasted) | Send informational messages to your Users |
Premium / Members-only Spaces | Some Rooms/Spaces and features may be conditional upon User's status or activity. 3rd party membership confirmations are supported via e-mail domain verification, CRM integration etc. |
Analytics | |
Analytics dashboard | Web-based analytics UI providing you with your App & Ecosystem metrics such as Users, Sessions, Transactions, Coins & Items, Messages, Push Notifications, Attachments etc. |
Firebase integration | Monitor app usage, demography, location, re-actiivation via Google Firebase dashboards |
Explorer | Web explorer is available in Dappros Platform dashboard |
Validation node | Add your own node to the network to access blockchain data directly |
ACL | |
Access Control List | Manage Access at Owner, Application and User level for different actions and resources (see ACL page for details). |
API | Our RESTful JSON API for cases where you need to go beyond functionalities and flows currently implemented in the engine |
API documentation | Full API documentation of Ethora's backend via Dappros Platform. This provides access to Application/API/Web3/caching (DP Core) + Messaging (XMPP Ejabberd, Push Notifications) + Ethereum Blockchain (geth): https://www.dappros.com/developers/ |
Swagger | Interactive web interface to query our API: https://app-dev.dappros.com/api-docs/ |
Misc | |
Short URL Room/Space linking | Link to Rooms/Spaces within your App via short URL from other applications and websites (see also QR code sharing). |
Bots | Automated agents with their own Profiles and Wallets. May be interfacing dApps / smart contracts or external integration such as e-commerce, information retrieval etc. Some ready bots can be enabled out of the box, e.g. Notary Bot will sync your messages into immutable ledger, Booking bot will set up an appointment with its owner User etc. Bots allow to integrate any functionality not covered by Ethora engine. |
Privacy Policy | Ethora's standard Privacy Policy is included within the App which covers Ethora-based projects universally. You can modify or replace it with your own Privacy Policy. |
Disclaimer
Our platform provides technology for ecosystems built on the principles of openness, transparency and decentralization. By design, certain information such as user profiles, rankings, and the transactions of digital assets will be available to the whole ecosystem or to the public. You should not use the standard version of this product for storing or sending secure or commercially sensitive content. You should not use any versions of this product for emergency communications. You should not share information or content through our platform in cases where you may not be comfortable or authorized to share it with the public.
Note: enterprise-friendly version of Ethora engine (additional security layers, custom user sign-on mechanisms, Professional Services & SLA package) and dedicated hosting option are available under a separate license.
Developers and Funders of the project
Ethora mobile app codebase, Dappros Platform backend (Ethereum-based infrastructure, core application, wallets handling, caching, Web3, IPFS storage and API layer) are developed and supported by Dappros. Real-time communication infrastructure (Ejabberd chat server and custom application logic, Push Notifications, statistics and monitoring) are developed by DeepX.
The project is currently (2018-2021) developed and funded solely by these two privately owned companies. It is our aim however to transition project governance to an open-source foundation / DAO as soon as the activity from the developers community becomes significant to justify such transition. In such case the existing entities will focus on commercial services and enterprise version of the engine, while the project core development will be governed by a foundation / DAO under the principles of open source software.
Commercial & licensing model
Our approach to licensing is similar to a 'Red Hat model' where we offer most of the product open-source so that a wide global community can benefit from it and contribute to its further development, but we also offer commercial licensing and technical support options for businesses and enterprises to help fund further development of the product.
In terms of license and code availability the product can be broken down as follows:
- Client-side (mobile app): (A): free, open-source under GPL license; (B) Paid-for commercial license with security add-on and SLA package.
- Server-side: freemium (free cloud plan fits most startups and non-commercial organizations, paid SLA and dedicated hosting plans available for businesses that require them).
Future plans & roadmap
DAO governance vision
Currently (2021) Dappros is a privately owned company that offers an open-source mobile app, open-source private blockchain and closed-source backend. Our founders promote decentralized economy and free p2p communication technologies for many years. We are developing a roadmap where the platform will become fully open and its governance can be transferred to a decentralized organization. In such scenario, we will remain a private organisation offering implementation and SLA services, but the development of the new versions of the platform engine and maintenance of the publicly available infrastructure will become globally distributed and decentralized. Our only limiting factor here is funding and time constraints.
Roadmap 2018-2021
- A platform allowing businesses and creators to easily set up and for users to join and explore a tokenized p2p ecosystem
- Partially centralized
- Assets and transactions ledger are decentralized
- Leveraging state of the art DLT, mobile and communication technologies
- Mobile-first ("no ads, no gimmicks")
- Open-source client
Roadmap 2022-2023
- Self-Sovereign Identity - users own their identity, content and assets
- Open-source server - anybody can download and run a Validator or Host node (closed-source enterprise version possible for private chain projects)
- Validator / Hoster incentives - self-supporting network
- Easy sidechain / mainchain assets transfer
Roadmap 2024-2025
- Decentralized maintenance allowing both (a) incentivized hosting of the public infrastructure and (b) private networks. À la Ethereum;
- R&D grants available for teams and individual developers contributors globally
- Decentralized governance - platform stakeholders make important decisions for the public network
- Meritocracy - governance stakes are earned through supporting platform infrastructure (running nodes), R&D work and platform promotion
Contact
Drop us a line if you’re interested to find out more or to become a contributor to the project.
Also feel free to submit pull requests in our Github repo!