# Technology

DIGIT being an open-source platform, all the tools and tech stack used to build, deploy and operate DIGIT - are also [open-source](https://opensource.com/resources/what-open-source)d and community edition. The tools used to set up, develop and deploy the mGramSeva stack are listed below with the specific versions used and their short description.

<table><thead><tr><th width="153">Platform Tools</th><th width="123">Latest Version</th><th>Used Version</th><th width="326">Description</th><th>License Type</th><th>​</th></tr></thead><tbody><tr><td>​<a href="https://dattell.com/data-architecture-blog/comparing-confluent-kafka-and-apache-kafka/">Confluent Kafka</a>​</td><td>6.2.0</td><td>5.4.1</td><td>Apache <strong>Kafka</strong> is an open-sourced and community distributed event streaming platform capable of handling trillions of events a day.</td><td>​<a href="https://www.confluent.io/confluent-community-license-faq/">Community License</a> ​</td><td>​</td></tr><tr><td>​<a href="https://dattell.com/data-architecture-blog/what-is-zookeeper-how-does-it-support-kafka/">Zookeeper</a>​</td><td>6.2.0</td><td>5.4.1</td><td><strong>ZooKeeper</strong> is an <strong>open-source</strong> 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 <strong>Kafka</strong>, <strong>ZooKeeper</strong> is primarily used to track the status of nodes in the <strong>Kafka</strong> cluster and maintain a list of <strong>Kafka</strong> topics and messages.</td><td>​</td><td>​</td></tr><tr><td>​<a href="https://blog.heroku.com/using_netflix_zuul_to_proxy_your_microservices">Zuul</a>​</td><td>​<a href="https://github.com/Netflix/zuul/tree/v2.3.0">2.3.0</a>​</td><td>2.2.2</td><td><strong>Zuul</strong> 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.</td><td>​<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache <strong>License</strong> 2.0</a>​</td><td>​</td></tr><tr><td>​<a href="https://www.elastic.co/what-is/elasticsearch">Elasticsearch</a>​</td><td>​<a href="https://github.com/elastic/elasticsearch/releases/tag/v8.0.0-alpha1">8.0.0</a>​</td><td>6.6.2</td><td><em><strong>Elasticsearch</strong></em> is a distributed, free and open search and analytics engine for all types of data, including textual, numerical, geospatial, structured and unstructured.</td><td>​<a href="https://github.com/elastic/kibana/tree/7.13/licenses/ELASTIC-LICENSE-2.0.txt">Elastic License 2.0</a>​</td><td>​</td></tr><tr><td>​<a href="https://www.elastic.co/what-is/kibana">Kibana</a>​</td><td>​<a href="https://github.com/elastic/kibana/tree/v8.0.0-alpha1">8.0.0</a>​</td><td>6.6.2</td><td><em><strong>Kibana</strong></em> 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.</td><td>​<a href="https://github.com/elastic/kibana/tree/7.13/licenses/ELASTIC-LICENSE-2.0.txt">Elastic License 2.0</a>​</td><td>​</td></tr><tr><td>​<a href="https://fluentbit.io/">fluentbit</a>​</td><td>​<a href="https://github.com/fluent/fluent-bit/tree/v1.8.3">1.8.3</a>​</td><td>1.0.6</td><td><em><strong>Fluent Bit</strong></em> 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.</td><td>​<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache <strong>License</strong> 2.</a>​</td><td>​</td></tr><tr><td>​<a href="https://www.postgresql.org/">Postgresql</a>​</td><td>13.4</td><td>9.6 and 10.6</td><td><em><strong>PostgreSQL</strong></em> 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</td><td>​<a href="https://www.postgresql.org/about/licence/">PostGres License</a>​</td><td>​</td></tr><tr><td>​<a href="https://redis.io/">redis</a>​</td><td>​<a href="https://github.com/redis/redis/tree/6.2.5">6.2.5</a>​</td><td>3.2.6</td><td><em><strong>Redis</strong></em> 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.</td><td>​<a href="https://snyk.io/learn/what-is-bsd-license/">BSD License</a>​</td><td>​</td></tr><tr><td>​<a href="https://www.jaegertracing.io/">Jaeger</a>​</td><td>​<a href="https://github.com/jaegertracing/jaeger/tree/v1.25.0">1.25.0</a>​</td><td>1.18</td><td><em><strong>Jaeger</strong></em> is open-source software for tracing transactions between distributed services. It's used for monitoring and troubleshooting complex microservices environments.</td><td>​<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache <strong>Lice</strong></a>​</td><td>​</td></tr><tr><td><strong>Dev Stack</strong></td><td><strong>Latest Version</strong></td><td><p><strong>​</strong></p><p><strong>​</strong></p><p><strong>Used Version</strong></p><p><strong>​</strong></p></td><td><strong>Description</strong></td><td><p><strong>License</strong></p><p><strong>Type</strong></p></td><td>​</td></tr><tr><td>​<a href="https://openjdk.java.net/">OpenJDK</a>​</td><td>JDK11</td><td>8u212</td><td><em><strong>OpenJDK</strong></em> is completely <strong>open-source</strong> and can be used freely</td><td>​<a href="https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html">GPL-2</a>​</td><td>​</td></tr><tr><td>​<a href="https://spring.io/projects/spring-boot">SpringBoot</a>​</td><td> <a href="https://github.com/spring-projects/spring-boot/tree/v2.6.0-M1">2.6.0</a>​</td><td>2.2.6</td><td><em><strong>Spring Boot</strong></em> 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.</td><td>​<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache <strong>License</strong> 2.0</a>​</td><td>​</td></tr><tr><td>​<a href="https://reactjs.org/docs/how-to-contribute.html">React</a>​</td><td>​<a href="https://github.com/facebook/react/tree/v17.0.2">17.0.2</a>​</td><td>16.7.0</td><td><em><strong>React</strong></em> is one of Facebook's first <strong>open-source</strong> projects that is both under very active development and is also being used to ship code to everybody on facebook.com.</td><td>​<a href="https://www.mit.edu/~amini/LICENSE.md">MIT</a>​</td><td>​</td></tr><tr><td>​<a href="https://material-ui.com/">Material-UI-React</a>​</td><td>​</td><td>16.8.0</td><td><strong>Material</strong>-<strong>UI</strong> CE (Community Edition) has been 100% <strong>open</strong>-<strong>source</strong> (MIT) since the very beginning, and always will be. Developers can ensure <strong>Material</strong>-<strong>UI</strong> is the right choice for their React applications through <strong>Material</strong>-<strong>UI's</strong> community maintenance strategy.</td><td>​<a href="https://www.mit.edu/~amini/LICENSE.md">MIT</a>​</td><td>​</td></tr><tr><td>​<a href="https://github.com/nodejs/node">NodeJS</a>​</td><td>14.0</td><td>8.4.0</td><td>Node. js is an <strong>open</strong>-<strong>source</strong>, cross-platform, JavaScript runtime environment. It executes JavaScript code outside of a browser.</td><td>​<a href="https://www.mit.edu/~amini/LICENSE.md">MIT</a>​</td><td>​</td></tr><tr><td><p></p><p></p><p><strong>DevOps Stack</strong></p><p><strong>​</strong></p><p><strong>​</strong></p></td><td><p><strong>​</strong></p><p><strong>Latest Version</strong></p><p><strong>​</strong></p></td><td><strong>Used Version</strong></td><td><strong>Description</strong></td><td><strong>License Type</strong></td><td>​</td></tr><tr><td>Kubernetes</td><td>1.22</td><td>1.18.x</td><td><em>Kubernetes</em>, also known as K8s, is an open-source system for automating deployment, scaling, and management of containerized applications.</td><td>​<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache <strong>License</strong> 2.0</a>​</td><td>​</td></tr><tr><td>Docker</td><td>19.03.14</td><td>19.x</td><td><em>Docker</em>, a subset of the Moby project, is a software framework for building, running, and managing containers on servers and the cloud.</td><td>​<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache <strong>License</strong> 2.0</a>​</td><td>​</td></tr><tr><td>Helm</td><td>3.6.3</td><td>3.x.x</td><td><em>Helm</em> helps you manage Kubernetes applications — <em>Helm</em> Charts help you define, install, and upgrade even the most complex Kubernetes.</td><td>​<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache <strong>License</strong> 2.0</a>​</td><td>​</td></tr><tr><td>​<a href="https://www.terraform.io/">Terraform</a>​</td><td>1.1.0</td><td>v0.14.10</td><td>Terraform allows infrastructure to be expressed as code in a simple, human-readable language called HCL (HashiCorp Configuration Language).</td><td>​<a href="https://github.com/hashicorp/terraform/blob/main/LICENSE">Mozilla Public <em>License</em> 2.0</a>​</td><td>​</td></tr><tr><td>Jenkins</td><td>2.306</td><td>2.289</td><td><em>Jenkins</em> – an open-source automation server that enables developers around the world to reliably build, test, and deploy their software.</td><td>​<a href="https://www.mit.edu/~amini/LICENSE.md">MIT</a>​</td><td>​</td></tr><tr><td>Go Lang</td><td>1.16.7</td><td>1.13.3</td><td>Go is an open-source programming language that makes it easy to build simple, reliable, and efficient software.</td><td>​<a href="https://golang.org/LICENSE">3-clause BSD + patent grant</a>​</td><td>​</td></tr><tr><td>Groovy</td><td>​<a href="https://github.com/apache/groovy/releases/tag/GROOVY_3_0_8">3.0.8</a>​</td><td>3.0</td><td>Apache <em>Groovy</em> 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, <strong>familiar and easy to learn syntax</strong>.</td><td>​<a href="https://www.apache.org/licenses/LICENSE-2.0">Apache <strong>License</strong> 2.0</a>​</td><td>​</td></tr><tr><td>Python</td><td>​<a href="https://github.com/python/cpython/releases/tag/v3.9.6">3.9.6</a>​</td><td>​<a href="https://github.com/python/cpython/releases/tag/v3.9.6">v3.9.6</a>​</td><td><em>Python</em> software and documentation are licensed under the PSF <em>License</em> Agreement. Starting with <em>Python</em> 3.8.6,</td><td>PSF</td><td>​</td></tr><tr><td>​<a href="https://github.com/mozilla/sops/blob/master/LICENSE">Sops</a>​</td><td>​<a href="https://github.com/mozilla/sops/releases/tag/v3.7.1">v3.7.1</a>​</td><td>​<a href="https://github.com/mozilla/sops/releases/tag/v3.7.1">v3.7.1</a>​</td><td><strong>sops</strong> 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.</td><td>​<a href="https://github.com/hashicorp/terraform/blob/main/LICENSE">Mozilla Public <em>License</em> 2.0</a>​</td><td>​</td></tr><tr><td>Ansible</td><td>​<a href="https://github.com/ansible/ansible/releases/tag/v2.11.3">2.11.3</a>​</td><td>v2.9.23</td><td><em>Ansible</em> is an open-source community project sponsored by Red Hat, it's the simplest way to automate IT.</td><td>GNU General Public <strong>License</strong></td><td>​</td></tr><tr><td>​<a href="https://blog.stackpath.com/yaml/">yaml</a>​</td><td>1.2</td><td>1.2</td><td>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.</td><td>​<a href="https://github.com/yamlcss/yaml/blob/master/License.txt">License</a>​</td><td>​</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.digit.org/mgramseva/introducing-mgramseva/platform/technology.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
