.. This work is licensed under a
   Creative Commons Attribution 4.0 International License.

.. _master_index:

Open Network Automation Platform
================================

Open Network Automation Platform (ONAP) is an open source project hosted by
the Linux Foundation.

ONAP provides a comprehensive platform for real-time, policy-driven service
orchestration and automation. ONAP enables service providers and developers
to rapidly automate the instantiation and configuration of physical and
virtual network functions and to support complete life cycle management
activities. By unifying the resources of open source members, ONAP enables
the acceleration of the development of a vibrant ecosystem around a globally
shared architecture and the implementation of network automation faster than
any product could on its own.

Please find some guidance here on the content of ONAP documentation:

 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | Documentation areas                                                             | Description                                                                                   |
 +=================================================================================+===============================================================================================+
 | :ref:`ONAP 'Jakarta' Release Notes <onap-release-notes>`                        | The Release Notes are providing general information about the ONAP release and recent changes,|
 |                                                                                 | feature enhancements, or bug fixes.                                                           |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`Component Release Notes <component-release-notes>`                        | The Component Release Notes are providing project specific information about recent changes,  |
 |                                                                                 | features, enhancements, or bug fixes.                                                         |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`ONAP Release History <release-history>`                                   | The list contains the name and date of previous ONAP releases.                                |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`ONAP Overview <overview>`                                                 | ONAP Overview provides generic and high-level guidance on the mission and main                |
 |                                                                                 | functionalities of ONAP. Basic guidelines on license details, limitations and                 |
 |                                                                                 | security references support understanding the solution.                                       |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`ONAP Architecture <ONAP-architecture>`                                    | The ONAP Architecture and its functional elements are described in details here. You can learn|
 |                                                                                 | how the two main frameworks, namely the Design-time framework and the Run-time framework      |
 |                                                                                 | cooperate and how the Microservices and Common services support certain functions.            |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`ONAP Components and Functionalities <doc_onap-developer_guide_projects>`  | The ONAP Components and Functionalities are described in details here. You can learn what     |
 |                                                                                 | functionalities ONAP provides and how the certain components in ONAP operate together.        |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`Operations and Adminstration Guides <operation_guides>`                   | ONAP Platform Operations and Adminstration covers the configuration and installation of ONAP, |
 |                                                                                 | its management, monitoring and other operational tasks (integration, user management, ...)    |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`User Guides <user-guides>`                                                | The User Guides focus on tasks to administer Services using ONAP, covering Service Design,    |
 |                                                                                 | instantiation and their management using control loops                                        |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`Developer Guides <ONAP_developer_guides>`                                 | Developers contributing to the ONAP development can find crucial information in the Developer |
 |                                                                                 | Guides. You can search among the developers’ topics in alphabetical order.                    |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`Documentation Guides <ONAP_documentation_guides>`                         | People interested in the creation of ONAP documentation can find crucial information in the   |
 |                                                                                 | ONAP Documentation Guide. Currently some content resides also in the Developer Guide. This is |
 |                                                                                 | subject to be reviewed, updated and migrated to the ONAP Documentation Guide.                 |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+
 | :ref:`ONAP Security <onap-security-index>`                                      | The current state of ONAP Security is described here. You can learn about discovered and fixed|
 |                                                                                 | vulnerabilities.                                                                              |
 +---------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------+


.. toctree::
   :maxdepth: 1
   :hidden:

   Home <self>

.. toctree::
   :maxdepth: 1
   :hidden:  
   :caption: RELEASE

   release/index
   release/component-release-notes
   release/history

.. toctree::
   :maxdepth: 1
   :hidden:  
   :caption: PLATFORM

   platform/overview/index
   platform/architecture/index
   platform/components/index

.. toctree::
   :maxdepth: 1
   :hidden:  
   :caption: GUIDES

   guides/onap-operator/index
   guides/onap-user/index
   guides/onap-developer/index
   guides/onap-documentation/index

.. toctree::
   :maxdepth: 1
   :hidden:  
   :caption: SECURITY

   security/index
   