.. This work is licensed under a Creative Commons Attribution 4.0 International License.
   http://creativecommons.org/licenses/by/4.0

.. _index-setting-individual-components:

=========================================
**Setting Up individual ONAP components**
=========================================
From a developer perspective, ONAP can be installed component per component. This advanced installation procedure is recommended only for experienced developers who desire to focus their attention on a few components and who have a deep understanding of dependencies between components.
This type of installation is not recommended to fully install ONAP.

The installation procedures for the various components are provided below:

User Interfaces
---------------

.. toctree::
   :maxdepth: 1
   :titlesonly:

   CLAMP - :ref:`Closed Loop Automation Platform<index-clamp-installation>`
   SDC - Service Design and Creation <../../../submodules/sdc.git/docs/installation.rst>
   Use-Case UI <../../../submodules/usecase-ui.git/docs/platform/installation.rst>
   VID - Virtual Infrastructure Deployment <../../../submodules/vid.git/docs/installation.rst>

Platform Components
-------------------

.. toctree::
   :maxdepth: 1
   :titlesonly:

   APPC - Application Controller <../../../submodules/appc/deployment.git/docs/APPC%20Deployment%20Guidelines/APPC%20Deployment%20Guidelines.rst>
   DCAE - Data Collection, Analytics, and Events <../../../submodules/dcaegen2.git/docs/sections/installation.rst>
   Holmes - Alarm Correlation <../../../submodules/holmes/rule-management.git/docs/platform/installation.rst>
   Policy <../../../submodules/policy/engine.git/docs/platform/installation.rst>
   SDNC - Software-Defined Networks Controller <../../../submodules/sdnc/oam.git/docs/installation.rst>
   SO - Service Orchestration <../../../submodules/so.git/docs/Install_Configure_SO.rst>
   VFC - Virtual Function Controller <../../../submodules/vfc/nfvo/lcm.git/docs/platform/installation.rst>

Common Services
---------------

.. toctree::
   :maxdepth: 1
   :titlesonly:

   AAI - Active and Available Inventory <../../../submodules/aai/aai-common.git/docs/platform/installation.rst>
   DMaaP - Data Management as a Platform Message Router <../../../submodules/dmaap/messagerouter/messageservice.git/docs/Installation/Installation.rst>
   Modeling Parsers <../../../submodules/modeling/toscaparsers.git/docs/nfvparser/installation/installation.instruction.rst>
   MSB - Micro Services Bus <../../../submodules/msb/apigateway.git/docs/platform/installation.rst>
   MultiVIM Cloud <../../../submodules/multicloud/framework.git/docs/MultiCloud-Heat-Deployment-Guide.rst>

SDK
---

.. toctree::
   :maxdepth: 1
   :titlesonly:

   CLI - Command Line Interface<../../../submodules/cli.git/docs/installation_guide.rst>
   Portal <../../../submodules/portal.git/docs/tutorials/portal-sdk/setting-up.rst>
   VNF Software Development Kit <../../../submodules/vnfsdk/model.git/docs/files/mktplace-install.rst>
