SD-Core Documentation
=====================

SD-Core is an ONF's 5G/LTE Core.  More information about SD-Core can be found at
the `ONF website <https://opennetworking.org/sd-core/>`_.


Getting Started with SD-Core
----------------------------
- Learn more about SD-Core

  - `SD-Core Website <https://opennetworking.org/sd-core/>`_
  - `SD-Core Whitepaper <https://opennetworking.org/wp-content/uploads/2021/07/SD-Core-Technical-White-Paper-FINAL-1.pdf>`_
  - `SD-Core Techinar <https://youtu.be/-eQzbSxXgSU>`_
  - `SD-Core Wiki <https://wiki.opennetworking.org/display/COM/SD-Core>`_

- Stay in touch by joining

  - `SD-Core mailing list <https://groups.google.com/a/opennetworking.org/g/sdcore-announce>`_
  - \#sdcore-dev channel in `ONF Community Slack <https://onf-community.slack.com>`_


Community
---------

Information about participating in the SD Core community and development process
can be found on the `ONF Wiki
<https://wiki.opennetworking.org/display/COM/SD-Core>`_.

.. toctree::
   :maxdepth: 2
   :caption: Overview
   :hidden:
   :glob:

   overview/introduction.rst
   overview/architecture.rst
   overview/3gpp-compliance-5g.rst
   overview/3gpp-compliance-4g.rst
   overview/faq.rst
   glossary

.. toctree::
   :maxdepth: 2
   :caption: Configuration
   :hidden:
   :glob:

   configuration/config.rst

.. toctree::
   :maxdepth: 2
   :caption: Troubleshooting Guide
   :hidden:
   :glob:

   troubleshooting/flowchart.rst

.. toctree::
   :maxdepth: 2
   :caption: Developer Guide
   :hidden:
   :glob:

   developer/guide.rst
   developer/gnbsim.rst
   developer/testpod.rst


.. toctree::
   :maxdepth: 2
   :caption: Releases
   :hidden:
   :glob:

   release/1*
   release/process.rst

.. toctree::
   :maxdepth: 1
   :caption: Meta
   :hidden:
   :glob:

   readme
