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

.. _master_index:

ONAP Documentation
==================

.. caution::
   This version of documentation is created from the latest master branch of
   source repositories, includes a proposed theme change, and is not a stable release.
   To get the current stable release use one of the following

   * http://docs.onap.org
   * http://docs.onap.org/en/beijing
   * the selector on the bottom right and select beijing

.. toctree::
   :maxdepth: 2

   release/index
   guides/onap-developer/index
   guides/onap-user/index
   guides/onap-provider/index
