mGramSeva is built on top of the DIGIT Platform. It consists of the following layers
Back End
Core Services
User Service (egov-user)
User OTP (user-otp)
Access Control (access-control)
ID Generation Service (id-gen)
Payment Gateway (pg-service)
Workflow Service (wf-service)
Encryption Service (data-encryption-service)
Localization Service (localization-service)
Boundary Service (location-service)
URL Shortening Service (url-shortening-service)
PDG Generation Service (pdf-generator)
SMS Notifications (notification-sms)
notification-email
Business Services
Dashboard Analytics (DSS)
Municipal services:
Property Service (property-services)
Water Service Calculator (ws-calculator)
Water Service (ws-service)
eChallan (echallan)
User Events (user-event)
The sequence diagram below illustrates a typical interaction between the various services.
Tools and technologies used to setup, build and deploy mGramSeva stack.
DIGIT being an open-source platform, all the tools and tech stack used to build, deploy and operate DIGIT - are also open-sourced and community edition. The various tools used for this platform are listed below with the specific versions used and their short description.
All content on this page by eGov Foundation is licensed under a Creative Commons Attribution 4.0 International License.
All content on this page by eGov Foundation is licensed under a Creative Commons Attribution 4.0 International License.
Platform Tools
Latest Version
Used Version
Description
License Type
6.2.0
5.4.1
Apache Kafka is an open-sourced and community distributed event streaming platform capable of handling trillions of events a day.
6.2.0
5.4.1
ZooKeeper is an open-source Apache project that provides a centralized service for providing configuration information, naming, synchronization and group services over large clusters in distributed systems. When working with Apache Kafka, ZooKeeper is primarily used to track the status of nodes in the Kafka cluster and maintain a list of Kafka topics and messages.
Zuul
2.3.0
2.2.2
Zuul is an open-sourced edge service that proxies requests to multiple backing services. It provides a unified “front door” to your system, which allows a browser, mobile app, or other user interfaces to consume services from multiple hosts without managing cross-origin resource sharing (CORS) and authentication for each one.
8.0.0
6.6.2
Elasticsearch is a distributed, free and open search and analytics engine for all types of data, including textual, numerical, geospatial, structured and unstructured.
Kibana
8.0.0
6.6.2
Kibana is a free and open frontend application that sits on top of the Elastic Stack, providing search and data visualization capabilities for data indexed in Elasticsearch.
1.8.3
1.0.6
Fluent Bit is an open-source and multi-platform Log Processor and Forwarder which allows you to collect data/logs from different sources, unify and send them to multiple destinations. It's fully compatible with Docker and Kubernetes environments.
13.4
9.6 and 10.6
PostgreSQL is a powerful, open-source object-relational database system with over 30 years of active development that has earned it a strong reputation for reliability, feature robustness, and performance
redis
6.2.5
3.2.6
Redis is an open-source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. Redis provides data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyper logs, geospatial indexes, and streams.
Jaeger
1.25.0
1.18
Jaeger is open-source software for tracing transactions between distributed services. It's used for monitoring and troubleshooting complex microservices environments.
Dev Stack
Latest Version
Used Version
Description
License
Type
OpenJDK
JDK11
8u212
OpenJDK is completely open-source and can be used freely
GPL-2
2.2.6
Spring Boot is an open-source micro-framework maintained by a company called Pivotal. It provides Java developers with a platform to get started with an auto configurable production-grade Spring application.
React
17.0.2
16.7.0
React is one of Facebook's first open-source projects that is both under very active development and is also being used to ship code to everybody on facebook.com.
MIT
16.8.0
Material-UI CE (Community Edition) has been 100% open-source (MIT) since the very beginning, and always will be. Developers can ensure Material-UI is the right choice for their React applications through Material-UI's community maintenance strategy.
MIT
NodeJS
14.0
8.4.0
Node. js is an open-source, cross-platform, JavaScript runtime environment. It executes JavaScript code outside of a browser.
MIT
DevOps Stack
Latest Version
Used Version
Description
License Type
Kubernetes
1.22
1.18.x
Kubernetes, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications.
Docker
19.03.14
19.x
Docker, a subset of the Moby project, is a software framework for building, running, and managing containers on servers and the cloud.
Helm
3.6.3
3.x.x
Helm helps you manage Kubernetes applications — Helm Charts help you define, install, and upgrade even the most complex Kubernetes.
1.1.0
v0.14.10
Terraform allows infrastructure to be expressed as code in a simple, human-readable language called HCL (HashiCorp Configuration Language).
Jenkins
2.306
2.289
Jenkins – an open-source automation server that enables developers around the world to reliably build, test, and deploy their software.
MIT
Go Lang
1.16.7
1.13.3
Go is an open-source programming language that makes it easy to build simple, reliable, and efficient software.
Groovy
3.0.8
3.0
Apache Groovy is a powerful, optionally typed and dynamic language, with static-typing and static compilation capabilities, for the Java platform aimed at improving developer productivity thanks to a concise, familiar and easy to learn syntax.
Python
3.9.6
v3.9.6
Python software and documentation are licensed under the PSF License Agreement. Starting with Python 3.8.6,
PSF
Sops
v3.7.1
v3.7.1
sops is an editor of encrypted files that supports YAML, JSON, ENV, INI and BINARY formats and encrypts with AWS KMS, GCP KMS, Azure Key Vault, age, and PGP.
Ansible
2.11.3
v2.9.23
Ansible is an open-source community project sponsored by Red Hat, it's the simplest way to automate IT.
GNU General Public License
yaml
1.2
1.2
YAML is a human-readable data serialization standard that can be used in conjunction with all programming languages and is often used to write configuration files.
License