Technology Stack
This page lists all the technologies used in building MOSIP. As far as possible free and open source software with clear long term support availability have been chosen. For a deployment certain choices can be replaced with other free or commercial options.
Domain | Tools/Technologies | Version | Licence Type | Commercial | Production | Cost |
---|---|---|---|---|---|---|
Operating System | CentOS | 7.7 | MIT License | Yes | Yes | NA - Part of Azure |
Infrastructure | Cloud - Azure/AWS | NA - Cloud tool | Commercial | Yes | Depends on Deployment Arch. | Depends on Deployment Arch. |
Development - Language Runtime | Java SE 11 | OpenJDK 11 | Oracle Binary Code License | No | Yes | NA |
Development - Language Runtime | J2EE | JAVA EE 8 | GPL | No | Yes | NA |
Development - UI Application framework | JavaFx | OpenJFX 11 | GPL v2 + Classpath | No | Yes | NA |
Development - Application Framework | Vert.x | 3.5.1 | Apache License 2.0 | No | Yes | NA |
Development - Application Framework | Spring | 5 | Apache License 2.0 | No | Yes | NA |
Development - Utilities | Apache commons(60+ to be considered) | Latest version | Apache License 2.0 | No | Yes | NA |
Development - Data Grid | Apache Ignite | 2.4.0 | Apache License 2.0 | No | Yes | NA |
Development - Object Mapper | Orika | 1.5.2 | Apache License 2.0 | No | Yes | NA |
Development - validator | Hibernate validator | 5.4.2 | Apache Software License 2.0 | No | Yes | NA |
Development - Encryption | BouncyCastle | 1.59 | Adaptation of MIT X11 License | No | Yes | NA |
Development - JSON marshal/unmarshal | Jackson | 2.9.5 | Apache License 2.0 | No | Yes | NA |
Development - Device Driver | RXTX | RXTX-2-2-20081207 | LGPL v 2.1 | No | Yes | NA |
Development - Unit Testing | Junit | 5.x and above | Common Public License - v 1.0 | No | No | NA |
Development - Log | logback | 1.2.3 | GNU Lesser GPL Version 2.1 | No | Yes | NA |
Development - Templating | velocity | 2 | Apache License 2.0 | No | Yes | NA |
Development - Tools | Open street view | NA - Cloud tool | Open Database License (ODbL) | No | Yes | NA |
Development - IDE | Eclipse Oxygen | 4.7.3 | Eclipse Public License Version 2.0 | No | No | NA |
Development - Webapp | Angular | 4+ | MIT License | No | Yes | NA |
Development - Unit Testing | Karma | 2.0.x | MIT License | No | No | NA |
Development - Unit Testing | Jasmine | 2.6.1 | MIT License | No | No | NA |
Development - API Documentation | Swagger | 3.13.2 | Apache License 2.0 | No | No | NA |
Development - Application Server | Tomcat server | 8 | Apache License 2.0 | No | Yes | NA |
Development - Orchestration | Apache Camel | 2.19.3 | Apache License 2.0 | No | Yes | NA |
Development - WebSub | Ballerina Websub | 1.2.8 | Apache License 2.0 | No | Yes | NA |
Development - Database | H2 DB | 1.4.197 | No | Yes | NA | |
Development - Database | PostgreSQL | Server: 10 | Postgres License BSD 2-clause "Simplified License" | Yes | No | NA |
Development - Database Modeling tool | PG Data Modeler | 0.9.2 | Commercial | No | Yes | Nominal |
Development - Scanner library | 7 | Commercial | ||||
Development - Code quality | Sonar | 7.2 | Open Source License | No | No | NA |
Development - UI Designs | Pencil Project | 3.0.4 | GNU Public License version 2 | No | No | NA |
Testing tools | Rest-assured | 3.0.0 | Apache License 2.0 | |||
Testing tools | WireMock or Citrus framework | 2.16.0 or respectively | Apache License 2.0 | No | No | NA |
Testing tools | JMeter | 4.x | Apache License 2.0 | No | No | NA |
Testing tools | Burp suite Professional + | 9.0.3.7 | PortSwigger - Burp suite Professional + / V1.7.33 | No | No | NA |
Testing tools | TestNG | 6.11 | Apache License 2.0 | No | No | NA |
DevOps tools | Jira | 6.4 and above | Not Open source | |||
Testing tools | No | No | NA | 12.0.3 | Open Source License | |
DevOps tools | SonarLint | v3.5 | GNU GPL | |||
DevOps tools | GitHub | 2.7.x | Commercial - Github | |||
DevOps tools | SonarQube | 6.7.3 LTS | GNU GPL | |||
DevOps tools | Maven | 3.53.x | Apache License 2.0 | |||
DevOps tools | Docker | 18.03.x CE | Apache 2.0 | |||
DevOps tools | Ansible | 2.2 | GNU GPL v3.0 | |||
DevOps tools | Github actions | NA - Cloud tool | ||||
DevOps tools | Travis | NA - Cloud tool | MIT License | |||
DevOps tools | Glowroot | Apache License 2.0 | ||||
DevOps tools | Prometheus | Apache License 2.0 | ||||
DevOps tools | Grafana | Apache License 2.0 | ||||
Messaging | ActiveMQ | Apache License 2.0 | ||||
Secure Code Scanning | SonarQube with OWASP plugin will be used | |||||
Web Server/HTTP proxy server | Nginx | NA - Cloud tool | ||||
IAM | Keycloak |
Last updated