ONAP depends on or has integration capabilities with the open source software projects or standards listed on this page.
The "Category" column may contain:
- Component: something linked with ONAP. This includes frameworks, libraries
- Database: a separate executable
- Notation or Language
- Tool: something used in the development process only, such as a Utility, Compiler
|Bower is a package manager for web-based frameworks, libraries, utilities and other assets
|BPEL (Business Process Execution Language) is an XML-based language that allows Web services in a service-oriented architecture (SOA) to interconnect and share data
|Business Process Model and Notation
|The Cask Data Application Platform (CDAP) is an open source project for distributed data and applications. CDAP is a layer of software running on top of Hadoop platforms
|Apache Cassandra is a distributed (NoSQL) database management system designed to handle large amounts of data across many commodity servers, providing high availability with no single point of failure.
|Containerization (along with compose)
|A business rules management system (BRMS) with a forward and backward chaining inference based rules engine, using an enhanced implementation of the Rete algorithm.
in conjunction with the ELK stack (Elasticsearch, Logstash and Kibana)
|A search engine based on Apache Lucene, providing a distributed, multitenant-capable full-text search engine with an HTTP web interface and schema-free JSON documents
|A web based code review and repository management for the Git version control system.
|Distributed version control system
|Apache Hadoop is a framework that allows for the distributed processing of large data sets across clusters of computers using simple programming models. It is designed to scale up from single servers to thousands of machines, each offering local computation and storage
|Apache HBase is a distributed, versioned, non-relational database modeled after Google's Bigtable. HBase provides random, realtime read/write access to Big Data, especially hosting very large tables -- billions of rows X millions of columns -- atop clusters of commodity hardware.
|Hibernate (our JPA 2.0 provider ORM)
|Java (v7 and 8)
|Version 8 of the Java OpenJDK and run-time
|GPLv2 with Classpath Exception. See OpenJDK Legal pages
|Language / Platform
|Provides a web server and javax.servlet container, plus support for HTTP/2, WebSocket, OSGi, JMX, JNDI, JAAS and many other integrations
|Java Persistence Architecture (JSR-317) - the specification level of the Object Relation Mapping layer.
Where EclipseLink is the RI and Hibernate is the JPA provider.
|A simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks.
|Eclipse Public License 1.0
|Test Framework (Tool)
1.8.10 Container orchestration
|A data visualization plugin for Elasticsearch, providing visualization capabilities on top of the content indexed on an Elasticsearch cluster
|A community-developed fork of the MySQL relational database management system intended to remain free under the GNU GPL
|Apache Maven is a software project management and comprehension tool. Based on a project object model (POM), Maven can manage project build, reporting and documentation from a central piece of information.
|A popular and widely deployed relational database management system (RDBMS)
|Provides connectivity for client applications developed in the Java programming language with MySQL Connector/J, a driver that implements the Java Database Connectivity (JDBC) API.
|Artistic License 2.0
|The main project in the OpenStack Orchestration program, Heat implements an orchestration engine to launch multiple composite cloud applications based on templates.
|An object-relational database management system (ORDBMS) with an emphasis on extensibility and standards compliance
|An application framework and inversion of control container for the Java platform
|An open source framework backed by a large ecosystem of tools that helps you design, build, document, and consume your RESTful APIs. The Swagger API specification has been renamed the OpenAPI Specification.
|A testing framework inspired from JUnit and NUnit but introducing some new functionalities that make it more powerful and easier to use
|Titan Graph DB
|A scalable graph database optimized for storing and querying graphs containing hundreds of billions of vertices and edges distributed across a multi-machine cluster.
|We use version 8 of this web container that implements version 3.1 of the Servlet spec JSR-340.
|Topology and Orchestration Specification for Cloud Applications (TOSCA), is an OASIS standard language to describe a topology of cloud based web services, their components, relationships, and the processes that manage them. The TOSCA standard includes specifications to describe processes that create or modify web services.
|SO, Modeling, VNF SDK
|Reference implementation of the TOSCA Simple Yaml Profile 1.0.
|A general-purpose, developmental, modeling language in the field of software engineering, that is intended to provide a standard way to visualize the design of a system (originated by Booch, Jacobson and Rumbaugh).
|A human-readable data serialization standard language (YAML Ain't Markup Language), used to implement Heat templates.
|A data modeling language for the definition of data sent over the NETCONF network configuration protocol
|Multiple, by source directory. See ReadMe.md
Beijing SO workaround for Azure - https://github.com/onapdemo