diff --git a/developer/jami-concepts/index.md b/developer/jami-concepts/index.md
new file mode 100644
index 0000000000000000000000000000000000000000..11e812d66e79a29d0cf906f48bd43dedd2464d2f
--- /dev/null
+++ b/developer/jami-concepts/index.md
@@ -0,0 +1,65 @@
+# Jami Concepts
+
+Jami is a quite complex platform interacting with many different components and introducing many new concepts.
+This manual is intended to help you understand how Jami works, how to develop for Jami, and how to contribute to the project.
+
+To quickly summarize and help you to find the part of the manual that you are looking for, here is a brief overview of the different sections:
+
+Jami is a distributed platform that allows users to communicate without the need for a central server.
+So, a Jami account consists of a chain of certificates (CA, account, and device) that is used to authenticate the user and to encrypt the communication.
+The account is stored on the user's device, not on a server.
+
+For this, here is the page that explains how it works:
+* :ref:`account-management`
+* :ref:`jami-identifiers`
+
+After the user account is created, the user can contact other people by sending connection requests through a DHT (<https://opendht.net>) after finding the contact ID
+(directly known or by looking up the name server).
+If both parties agree, they will first try to create a P2P TCP link (with the ICE protocol), then encrypt it via TLS and use it as a multiplexed socket to transmit data for various protocols, cf.:
+
+* :ref:`contact-management`
+* :ref:`banned-contacts`
+* :ref:`connection-manager`
+* :ref:`name-server-protocol`
+
+When both peers are in their contact list, a conversation is created.
+This conversation is a **swarm** based on **Swarm Technology**.
+A **swarm** is synced between all devices in a conversation via the `git` protocol (it's a Git repository), and connections across devices in a conversation are routed by a component called the **DRT** (distributed routing table).
+
+* :ref:`swarm`
+* :ref:`drt`
+
+Then, the connection can be used to send messages, files, or to make calls (1:1 or conferences).
+
+* :ref:`calls`
+* :ref:`calls-in-swarm`
+* :ref:`file-transfer`
+* :ref:`conference-protocol`
+
+```{note}
+   Only calls using Jami accounts are based on Swarm Technology.
+```
+
+Finally, a user can have multiple devices, and a lot of information is synced between them.
+
+* :ref:`synchronizing-profiles`
+* :ref:`synchronization-protocol`
+
+```{toctree}
+   :maxdepth: 1
+
+   account-management
+   banned-contacts
+   calls-in-swarm
+   calls
+   conference-protocol
+   connection-manager
+   contact-management
+   drt
+   file-transfer
+   jami-identifiers
+   name-server-protocol
+   swarm
+   synchronization-protocol
+   synchronizing-profiles
+```
\ No newline at end of file
diff --git a/developer/jami-concepts/index.rst b/developer/jami-concepts/index.rst
deleted file mode 100644
index 0c50d56b91893004b378610bc40116a9b7fe7c81..0000000000000000000000000000000000000000
--- a/developer/jami-concepts/index.rst
+++ /dev/null
@@ -1,74 +0,0 @@
-#############
-Jami Concepts
-#############
-
-Jami is a quite complex platform interacting with many different
-components and introducing many new concepts. This manual is intended
-to help you understand how Jami works, how to develop for Jami, and how
-to contribute to the project.
-
-To quickly summarize and help you to find the part of the manual that
-you are looking for, here is a brief overview of the different sections:
-
-Jami is a distributed platform that allows users to communicate without
-the need for a central server. So, a Jami account consists on a chain of
-certificate (CA, Account, Device) that is used to authenticate the user
-and to encrypt the communication. The account is stored on the user's
-device, not on a server.
-
-For this, here is the page that explains how it works:
-+ :ref:`account-management`
-+ :ref:`jami-identifiers`
-
-After the user account is created, the user can contact other people by
-sending connection requests through a DHT (https://opendht.net) after finding the contact id
-(directly known or by lookup the name server). If both parties
-agree, they will first try to create a p2p TCP link (with the ICE protocol), then
-encrypt it via TLS and use it as a multiplexed socket to transmit data for various
-protocols c.f.:
-
-+ :ref:`contact-management`
-+ :ref:`banned-contacts`
-+ :ref:`connection-manager`
-+ :ref:`name-server-protocol`
-
-When both peers are in their contact list, a conversation is created. This conversation
-is called a **Swarm**. A **swarm** is synced between all devices in a conversation via
-the `git` protocol (it's a git repository) and connections across devices in a conversation
-are routed by a component called the **drt** (distributed routing table).
-
-+ :ref:`swarm`
-+ :ref:`drt`
-
-Then, the connection can be used to send messages, files, or to make calls (1:1 or conferences).
-
-+ :ref:`calls`
-+ :ref:`calls-in-swarm`
-+ :ref:`file-transfer`
-+ :ref:`conference-protocol`
-
-.. note::
-   Calls may be fully replaced by call in swarms in the future (except for SIP accounts)
-
-Finally, a user can have multiple devices and a lot of information is synced between them.
-
-+ :ref:`synchronizing-profiles`
-+ :ref:`synchronization-protocol`
-
-.. toctree::
-   :maxdepth: 1
-
-   account-management
-   banned-contacts
-   calls-in-swarm
-   calls
-   conference-protocol
-   connection-manager
-   contact-management
-   drt
-   file-transfer
-   jami-identifiers
-   name-server-protocol
-   swarm
-   synchronization-protocol
-   synchronizing-profiles