.. 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 - Closed Loop Automation Platform<../../../submodules/clamp.git/docs/index.rst>
   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 Deployment Guidelines/APPC Deployment Guidelines.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>
   NBI - NorthBound API <../../../submodules/externalapi/nbi.git/docs/installation/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>
