Provided below is the high-level schematic view of Dappros Platform architecture.
API and Application layer – core layers of Dappros Platform enabling multitude of use cases around Users, Tokens, Transactions etc. Excluding some internal / core technical services, most of these are exposed via RESTful JSON API layer for external applications to connect to. Also used by internal applications such as Web Dashboard.
Web Dashboard – web application providing management, control and analytics functionalities to Dappros Platform customer / owner accounts. This can be used, for example, to issue a new token, to review transactions in the blockchain Explorer, to manage users of the Application or review their statistics such as tokens ownership, transactions volume etc.
Custom dashboards can be built by Dappros Professional Services, our integration partners and 3rd party developers using DP API. One of such examples is TracyChain which is a Dappros Platform application focused on logistics and supply chain use cases.
Private and Public blockchain – Dappros Platform runs its own “private” Ethereum blockchain network which enables fast DLT transactions. In addition, gateway to public Ethereum blockchain enables applications and use cases that require to issue global tokens or interact with public blockchain tokens, smart contracts, wallets and transactions.
Caching & DB layer – while cryptographically protected immutable ledger remains the source of truth for data in Dappros Platform, the DB and caching layer is provided to speed up operations. This enables applications to obtain immediate response via API and then verify it via blockchain in asynchronous manner.
IPFS and S3 – developers may choose whether to choose ‘centralized’ AWS cloud or decentralized IPFS network for binary files storage.
RTC Server – a collection of real-time communication services built with open-source components by our partners DeepX. Uses ejabberd chat server at its core enabling it to support high-load messaging at scale (notable applications include WhatsApp etc). Dappros Platform widely uses RTC features to provide seamless “connected” experience to end users. For example, Push Notifications service sends an update to user’s mobile device when user has received a token transfer from another user.
Client-side applications – any 3rd party developer can build an application or launch a whole new ecosystem leveraging the functionalities of Dappros Platform including tokenization, distributed ledger technology and real-time communications. Currently Dappros provides ready-made applications for React Native and React.js platforms which enable support for most of the devices including iOS and Android nowadays. However client-side integrations are not limited to any platform, as long as such platform can consume JSON API, XMPP and Push Notifications, the latter two being optional, for real-time updates.