Desire 3D Platform

Desire 3D is a Platform to create Complex Enterprise Applications (Web and Smart Devices - Android & iOS) using cutting edge Angular, Kubernetes, Blockchain, & Microservices architecture and In-Memory Cache / Kafka (for scalability) with RDBMS or Big Data Support. Desire 3D provides a scalable cloud native infrastructure  (and cloud vendor agnostic) to run various automation products on top of the platform like 

  1. Amexio Canvas (Angular Drag and Drop IDE for developers)
  2. Amexio Studio (UI Automation platform for Enterprises)
  3. Droit Studio (Microservices Automation Platform for Enterprises)
  4. OleBloc Studio (Blockchain Automation Platform for Enterprises)
  5. Bukopia Studio (Docker / Kubernetes Automation Platform for Enterprises)

  • The platform is built around 50+ Micro services.
  • Platform is built around Events using Kafka
  • Focus of the platform is to bring in the core functionality and not any specific functionality like generating any specific code in any specific language. 
  • Platform is divided into two main sections:
  • All the products built on top of Desire 3D Platform will have the concept of Design Pipeline and Code Pipeline.

  1. Design Pipeline
  2. Code Pipeline

  • Platform provides the basic infrastructure requirement based on Microservices Architecture to build Smart Device Apps (Angular based), Microservices based Apps and Blockchain based Apps.
  • More details on technologies used / supported in the platform are given below (after Design and Code Pipeline section).

Design Pipeline


Design Pipeline is divided into 3 Sections

  1. Software Specifications, Project Details & Technology Stack
  2. Design of the  App, Infrastructure and Deployment model.
  3. Design Repository (Check-In, Check out, Lock, Versioning)

Code Pipeline


Code Pipeline is divided into 5 Sections

  1. Code Factory (Generates Code for UI, Backend, Deployment Scripts)
  2. Build (UI and Backend, Unit and Functional Testing)
  3. Automated Staging for Dev and QA Testing
  4. Approval Process
  5. Production Ready / Deployment

Micro Services


Key Characteristics

  1. Componentization via Services
  2. Business Capability Centric Design
  3. Product model Not Projects
  4. Smart Endpoints and Dump Pipes
  5. Decentralized Governance
  6. Decentralized Data Management
  7. Infrastructure Automation
  8. Design for Failures
  9. Evolutionary Design

Micro Services Automation

Functional Reactive Programming

  • A responsive, maintainable & Extensible application is the goal.
  • A responsive application is both scalable (Elastic) and resilient
  • Responsiveness is impossible to achieve without both scalability and resilience.
  • A Message-Driven architecture is the foundation of scalable, resilient, and ultimately responsive systems.

Event Sourcing & CQRS

Event Sourcing Design pattern ensures that all changes to an Application is stored as a Sequence of Events 

CQRS is a pattern that segregates the operations that read data (Queries) from the operations that update data (Commands) by using separate interfaces. CQRS should only be used on specific portions of a system in Bounded Context (in DDD).

Domain Driven Design

Domain-Driven Design is an approach to the development of complex software in which we: Focus on the Core Domain. Explore models in a creative collaboration of domain specialists and software practitioners. Speak a ubiquitous language within an explicitly Bounded Context.

The Scale Cube & Micro Services

The 3 Dimensions to App scaling, ie. Functional Decomposition in the Y-Axis, Cloning of Services in the X-Axis and Database Partitioning in the Z-Axis, which gives the maximum scalability compare to outdated Monolithic App Design..

Hexagonal Architecture

The core of the Hexagonal Architecture revolves around the Domain Layer (Use case Boundary / Bounded Context) followed by Ports (interfaces) and Adapters (the actual implementations).

Immutable Containers

Auto creation of Immutable containers based on Docker infrastructure. Same containers will be used in development, to QA to production environment.

Block Chain Automation

Blockchain : Combination of multiple technologies.

  • Distributed System
  • P2P Networks
  • Hashing Functions 
  • Merkle Trees
  • Public / Private Key Cryptography
  • Cryptographic Signatures / Elliptic curve Cryptography

What is Blockchain?

It's a protocol for building Immutable  historical record of transactions.

  • Transactions are time based
  • Transactions are Immutable
  • Ledgers record transactions

Blockchain Versions

  • v1.0 Currency (Bitcoin)
  • v2.0 Smart Contracts
  • v3.0 Decentralized Apps

HyperLedger Fabric

Membership Services

  • Registration
  • Identity Management
  • Auditability

Blockchain Services

  • Consensus Manager
  • Distributed Ledger
  • P2P Protocol
  • Ledger Storage

Chain Code Services

  • Secure Container
  • Secure Registry

Blockchain Features

Blockchain cannot:

  • Be controlled by any single Entity
  • Has No single point of failure.

Blockchain is a Self auditing eco system of Digital Value

  • Transparency : Data is embedded within the network as a whole. Customers participating parties can see the data as per their role.
  • It cannot be corrupted. Updating a single block requires enormous of computing power and time. 

Potential Application of Blockchain

  1. Smart Contracts
  2. Sharing Economy (Uber / Airbnb)
  3. Governance
  4. Supply Chain Auditing
  5. Internet of Things
  6. Identity Management
  7. AML and KYC
  8. Land Title Registration
  9. Stock Trading
  10. Neighborhood Microgrids
  11. P2P Stock Trading
  12. File Storage 

Applying Blockchain across Industries

  • Finance
  • Banking
  • Health care
  • Government
  • Manufacturing
  • Insurance
  • Retail
  • Legal
  • Media & Entertainment
  • Supply Chain and Logistics
  • Finance and Accounting

Deep Learning


Deep Learning is a hierarchical learning model with more than one hidden layer. Deep Learning emulates the learning approach that human beings use to gain knowledge. Each algorithm in the hierarchy applies a non-linear transformation on its input and uses what it learns to create a statistical model as output. This iterative process continue until the output has reached an acceptable level of accuracy. Machine learning is classified into supervised learning and un supervised learning. Deep learning follows the later.

Platform will focus on integrating Deep Learning technologies from Google. Apple, Microsoft and others to easily integrate with your Business Apps.

Following are some of the commercial technologies available (From Google, Apple, Microsoft, Open Source)  in the platform to be used / integrated into your Business Apps.

Text Analysis

Text Analysis will help you to understand the meaning, context and extract information about people, places, events and much more. This can be also used for sentiment analysis about your product / services on social media or understand the intent from Customer Conversations happening in a call center to a messaging app.

Speech Recognition

This will enable you to convert audio into text. Commercial Speech API will recognize over 80 languages and it's variants. Using the Text Analysis on the converted text, you can build your business App to interact with the end user using voice. 

Language Translation

This service helps the customer to translate any arbitrary string into a any supported language. This can be used to convey the information available in the App (as text) to convert to users preferred language in real time. Or convert an extracted text from an Image or Video into the users preferred language.

Video Analysis

Video Analysis allows the user to extract the metadata identifying various objets, landmarks, places & faces etc. You will also able to identify key moments / sentiments and search for similar moments / sentiments across different videos. 

Image Analysis

Image analysis will classify the image into thousands of categories, detects individual objects and faces within the images as well as read printed words contained in that image. 

Business Specific DL

Open Source Deep Learning libraries will be used to create Business Specific Deep Learning solutions. Deep Learning 4 Java is such an Open Source DL Library. 

Progressive Web Apps


Key Characteristics

  • Progressive - Works for every user, regardless of browser choice
  • Responsive - Fits into any form factor like Web, Smart Phone, Tablet etc.. 
  • Wireless Connectivity Independent - Service workers help to work off line or on low quality wireless networks.
  • App Like - Feels like an App by having fast boot and this is achieved by App Shell functionality.
  • Fresh - Always updated
  • Safe - Always uses HTTPS for communication
  • Discoverable - Search Engines can discover the App due to Web App Manifest.
  • Re-engagable - Easy thru Push Notifications. 
  • Installable - Allows users to add Apps they find most useful to their home screens without the hassle of an App Store.
  • Linkable - Easily share Apps via URL.

Base Implementation

  • HTTPS + Service Worker
  • Web App Manifest 
  • App Shell Caching
  • Splash Screen
  • Smooth Navigation
  • Cross browser support
  • Push Notifications
  • Advanced offline Support

App Shell

Requirements to power the User Interface

  • Minimal HTML, CSS & JavaScript
  • Separates the Core UI from App Data
  • First load should be extremely quick
  • Cache the minimal HTML, CSS, & JS
  • Shell should be loaded from Cache every subsequent App invocation. This gives blazing fast startup time.
  • Core UI is cached using Service Worker

Service Workers

  • Service worker is a programmable network proxy
  • Client side proxy written in JavaScript
  • They are always triggered and kept alive by their relationship to events.
  • They are event driven with the time limited script contexts.
  • Service Worker : Capable of 
  • Handling Push notifications
  • Background data synchronization
  • Receiving centralized updates

Web App Manifest

  • Rich native presence on users home screen
  • Launch App in Full Screen mode
  • Control the screen launch, them color for site
  • One tap to "Add" to Home Screen

Offline Capabilities

  • Show content even on slow network connection
  • Store data locally using Service Workers (Local storage, IndexedDB, WebSQL, PouchDB etc)

Offline Cache Pattern

  • Cache Only or Network Only
  • Try Cache first, then network
  • Try Network first then Cache