diff --git a/docs/compiler/setting_up.rst b/docs/compiler/setting_up.rst
deleted file mode 100644
index 8fb9a17bbcb2c..0000000000000
--- a/docs/compiler/setting_up.rst
+++ /dev/null
@@ -1,35 +0,0 @@
-Setting Up
-==========
-
-To use Ivy's compiler and transpiler, you'll need an **API key**. We are starting to
-grant pilot access to certain users, so you can `join the waitlist `_
-if you want to get one!
-
-Ivy Folder
-----------
-
-When importing Ivy for the first time, a ``.ivy`` folder will be created in your
-working directory. If you want to keep this folder in a different location,
-you can set an ``IVY_ROOT`` environment variable with the path of your ``.ivy`` folder.
-
-Setting Up the API key
-----------------------
-
-Once the ``.ivy`` folder has been created (either manually or automatically by
-importing Ivy), you will have to paste your API key as the content of the ``key.pem`` file.
-For reference, this would be equivalent to:
-
-.. code-block:: console
-
- echo -n API_KEY > .ivy/key.pem
-
-Issues and Questions
---------------------
-
-If you find any issue or bug while using the compiler and/or the transpiler, please
-raise an `issue in GitHub `_ and add the ``compiler``
-or the ``transpiler`` label accordingly. A member of the team will get back to you ASAP!
-
-Otherwise, if you haven't found a bug but want to ask a question, suggest something, or get help
-from the team directly, feel free to open a new post at the ``pilot-access`` forum in
-`Ivy's discord server! `_
\ No newline at end of file
diff --git a/docs/index.rst b/docs/index.rst
index 83925717fcd0f..e88f08969b560 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -3,13 +3,31 @@
.. include:: ../README.md
:parser: myst_parser.sphinx_
+
+.. toctree::
+ :hidden:
+ :maxdepth: -1
+
+ Home
+
+
.. toctree::
:hidden:
:maxdepth: -1
- :caption: Overview
+ :caption: The Basics
overview/get_started.rst
- Examples
+ demos/quickstart.ipynb
+
+
+.. toctree::
+ :hidden:
+ :maxdepth: -1
+ :caption: Demos
+
+ demos/learn_the_basics.rst
+ demos/guides.rst
+ demos/examples_and_demos.rst
.. toctree::
@@ -19,7 +37,6 @@
overview/motivation.rst
overview/related_work.rst
- overview/extensions.rst
.. toctree::
@@ -37,17 +54,14 @@
.. toctree::
:hidden:
:maxdepth: -1
- :caption: Compiling and Transpiling
+ :caption: API Reference
- compiler/setting_up.rst
- compiler/compiler.rst
- compiler/transpiler.rst
+ overview/one_liners.rst
.. autosummary::
:toctree: docs/functional
:template: top_functional_toc.rst
- :caption: API Reference
:recursive:
:hide-table:
diff --git a/docs/overview/deep_dive/ivy_frontends_tests.rst b/docs/overview/deep_dive/ivy_frontends_tests.rst
index 5b27829d9e5ff..c3333472e2833 100644
--- a/docs/overview/deep_dive/ivy_frontends_tests.rst
+++ b/docs/overview/deep_dive/ivy_frontends_tests.rst
@@ -11,7 +11,6 @@ Ivy Frontend Tests
.. _`Ivy Tests`: https://unify.ai/docs/ivy/overview/deep_dive/ivy_tests.html
.. _`Function Testing Helpers`: https://github.com/unifyai/ivy/blob/bf0becd459004ae6cffeb3c38c02c94eab5b7721/ivy_tests/test_ivy/helpers/function_testing.py
.. _`CI Pipeline`: https://unify.ai/docs/ivy/overview/deep_dive/continuous_integration.html
-.. _`setting up`: https://unify.ai/docs/ivy/compiler/setting_up.html#setting-up-testing
Introduction
@@ -802,7 +801,7 @@ The CI Pipeline runs the entire collection of Frontend Tests for the frontend th
You will need to make sure the Frontend Test is passing for each Ivy Frontend function you introduce/modify.
If a test fails on the CI, you can see details about the failure under `Details -> Run Frontend Tests` as shown in `CI Pipeline`_.
-You can also run the tests locally before making a PR. See the relevant `setting up`_ section for instructions on how to do so.
+You can also run the tests locally before making a PR. See the relevant :ref:`Setting Up Testing in PyCharm` section for instructions on how to do so.
Frontend Framework Testing Configuration
----------------------------------------
diff --git a/docs/overview/extensions.rst b/docs/overview/extensions.rst
deleted file mode 100644
index dce2922e795d8..0000000000000
--- a/docs/overview/extensions.rst
+++ /dev/null
@@ -1,15 +0,0 @@
-Extensions
-==========
-
-| (a) :ref:`Applied Libraries` ✅
-| Ivy libraries in mechanics, vision, robotics, memory and other areas
-|
-| (b) **Builder [page coming soon!]** ✅
-| :code:`ivy.Trainer`, :code:`ivy.Dataset`, :code:`ivy.Dataloader` and other helpful classes and functions for creating training workflows in only a few lines of code
-
-.. toctree::
- :hidden:
- :maxdepth: -1
- :caption: Extensions
-
- extensions/applied_libraries.rst
diff --git a/docs/overview/extensions/applied_libraries.rst b/docs/overview/extensions/applied_libraries.rst
deleted file mode 100644
index 3798463466737..0000000000000
--- a/docs/overview/extensions/applied_libraries.rst
+++ /dev/null
@@ -1,113 +0,0 @@
-Applied Libraries
-=================
-
-In other parts of the overview, we have focused on the the Ivy framework itself.
-Here, we explore how Ivy has been used to create a suite of libraries in various fields related to ML.
-Aside from being useful tools for ML developers in any framework, these libraries are a perfect showcase of what is possible using Ivy!
-
-Currently, there are Ivy libraries for: Mechanics, 3D Vision, Robotics, Gym Environments, and Differentiable Memory.
-We run through some demos from these libraries now, and encourage you to pip install the libraries and run the demos yourself if you like what you see!
-
-Ivy Mechanics
--------------
-
-`Ivy Mechanics `_ provides functions for conversions of orientation, pose, and positional representations, as well as transformations, and some other more applied functions.
-The orientation module is the largest, with conversions to and from all Euler conventions, quaternions, rotation matrices, rotation vectors, and axis-angle representations.
-
-For example, this demo shows the use of :code:`ivy_mech.target_facing_rotation_matrix`:
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_mech/demo_a.gif?raw=true
- :align: center
- :width: 100%
-
-This demo shows the use of :code:`ivy_mech.polar_to_cartesian_coords`:
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_mech/demo_b.gif?raw=true
- :align: center
- :width: 100%
-
-Ivy Vision
-----------
-
-`Ivy Vision `_ focuses predominantly on 3D vision, with functions for image projections, co-ordinate frame transformation, forward warping, inverse warping, optical flow, depth generation, voxel grids, point clouds, and others.
-
-For example, this demo shows the use of :code:`ivy_vision.coords_to_voxel_grid`:
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_vision/voxel_grid_demo.gif?raw=true
- :align: center
- :width: 100%
-
-This demo shows the use of :code:`ivy_vision.render_pixel_coords`:
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_vision/point_render_demo.gif?raw=true
- :align: center
- :width: 100%
-
-This demo shows Neural Radiance Fields (NeRF):
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_vision/nerf_demo.gif?raw=true
- :align: center
- :width: 100%
-
-
-Ivy Robot
----------
-
-`Ivy Robot `_ provides functions and classes for gradient-based trajectory optimization and motion planning.
-Classes are provided both for mobile robots and robot manipulators.
-
-For example, this demo shows the use of :code:`ivy_robot.sample_spline_path` and :code:`ivy_robot.RigidMobile.sample_body` for gradient-based motion planning of a drone.
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_robot/demo_a.gif?raw=true
- :align: center
- :width: 100%
-
-This demo shows the use of :code:`ivy_robot.sample_spline_path` and :code:`ivy_robot.Manipulator.sample_links` for gradient-based motion planning of a robot manipulator:
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_robot/demo_b.gif?raw=true
- :align: center
- :width: 100%
-
-Ivy Gym
--------
-
-`Ivy Gym `_ provides differentiable implementations of the control environments provided by OpenAI Gym, as well as a new “Swimmer” task which illustrates the simplicity of creating new tasks.
-The differentiable nature of the environments means that the cumulative reward can be directly optimized in a supervised manner, without the need for reinforcement learning.
-Ivy Gym opens the door for intersectional research between supervised learning, trajectory optimization, and reinforcement learning.
-
-For example, we show demos of each of the environments :code:`cartpole`, :code:`mountain_car`, :code:`pendulum`, :code:`reacher`, and :code:`swimmer` solved using direct trajectory optimization below.
-We optimize for a specific starting state of the environment:
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_gym/demo_a.gif?raw=true
- :align: center
- :width: 100%
-
-We show demos of each of the environments :code:`cartpole`, :code:`mountain_car`, :code:`pendulum`, :code:`reacher`, and :code:`swimmer` solved using supervised learning via a policy network.
-We train a policy which is conditioned on the environment state, and the starting state is then randomized between training steps:
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_gym/demo_b.gif?raw=true
- :align: center
- :width: 100%
-
-Ivy Memory
-----------
-
-`Ivy Memory `_ provides differentiable memory modules, including learnt modules such as Neural Turing Machines (NTM), but also parameter-free modules such as End-to-End Egospheric Spatial Memory (ESM).
-
-For example, in this demo we learn to copy a sequence using :code:`ivy_memory.NTM`:
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_memory/demo_a.gif?raw=true
- :align: center
- :width: 100%
-
-In this demo we create an egocentric 3D map of a room using :code:`ivy_memory.ESM`:
-
-.. image:: https://github.com/unifyai/unifyai.github.io/blob/main/img/externally_linked/ivy_memory/demo_b.gif?raw=true
- :align: center
- :width: 100%
-
-**Round Up**
-
-Hopefully, this has given you an idea of what’s possible using Ivy’s collection of applied libraries, and more importantly, given you inspiration for what’s possible using Ivy 🙂
-
-Please reach out on `discord `_ if you have any questions!
diff --git a/docs/overview/get_started.rst b/docs/overview/get_started.rst
index 5e850df91bb20..30e274ec9e26f 100644
--- a/docs/overview/get_started.rst
+++ b/docs/overview/get_started.rst
@@ -4,7 +4,7 @@ Get Started
..
If you want to use **Ivy's compiler and transpiler**, make sure to follow the
- `setting up instructions for the API key `_
+ :ref:`setting up instructions for the API key `
after installing Ivy!
@@ -54,3 +54,40 @@ If you are planning to contribute, you want to run the tests, or you are looking
for more in-depth instructions, it's probably best to check out
the `Contributing - Setting Up `_ page,
where OS-specific and IDE-specific instructions and video tutorials to install Ivy are available!
+
+
+Ivy's compiler and transpiler
+-----------------------------
+
+To use Ivy's compiler and transpiler, you'll need an **API key**. We are starting to
+grant pilot access to certain users, so you can `join the waitlist `_
+if you want to get one!
+
+Ivy Folder
+~~~~~~~~~~
+
+When importing Ivy for the first time, a ``.ivy`` folder will be created in your
+working directory. If you want to keep this folder in a different location,
+you can set an ``IVY_ROOT`` environment variable with the path of your ``.ivy`` folder.
+
+Setting Up the API key
+~~~~~~~~~~~~~~~~~~~~~~
+
+Once the ``.ivy`` folder has been created (either manually or automatically by
+importing Ivy), you will have to paste your API key as the content of the ``key.pem`` file.
+For reference, this would be equivalent to:
+
+.. code-block:: bash
+
+ echo -n API_KEY > .ivy/key.pem
+
+Issues and Questions
+~~~~~~~~~~~~~~~~~~~~
+
+If you find any issue or bug while using the compiler and/or the transpiler, please
+raise an `issue in GitHub `_ and add the ``compiler``
+or the ``transpiler`` label accordingly. A member of the team will get back to you ASAP!
+
+Otherwise, if you haven't found a bug but want to ask a question, suggest something, or get help
+from the team directly, feel free to open a new post at the ``pilot-access`` forum in
+`Ivy's discord server! `_
diff --git a/docs/overview/one_liners.rst b/docs/overview/one_liners.rst
new file mode 100644
index 0000000000000..98f59695ffcc4
--- /dev/null
+++ b/docs/overview/one_liners.rst
@@ -0,0 +1,29 @@
+One liners
+----------
+
+.. grid:: 1 1 3 3
+ :gutter: 4
+
+ .. grid-item-card:: ``ivy.compile()``
+ :link: one_liners/compile.rst
+
+ Compiles a ``Callable`` or set of them into an Ivy graph.
+
+ .. grid-item-card:: ``ivy.transpile()``
+ :link: one_liners/transpile.rst
+
+ Transpiles a ``Callable`` or set of them from a ``source`` framework to another
+ framework.
+
+ .. grid-item-card:: ``ivy.unify()``
+ :link: one_liners/transpile.rst
+
+ Transpiles an object into Ivy code. It's an alias to
+ ``ivy.transpile(..., to="ivy", ...)``
+
+.. toctree::
+ :hidden:
+ :maxdepth: -1
+
+ one_liners/compile.rst
+ one_liners/transpile.rst
diff --git a/docs/compiler/compiler.rst b/docs/overview/one_liners/compile.rst
similarity index 99%
rename from docs/compiler/compiler.rst
rename to docs/overview/one_liners/compile.rst
index f6f0b5ab2a9e4..2ac7cb461c829 100644
--- a/docs/compiler/compiler.rst
+++ b/docs/overview/one_liners/compile.rst
@@ -1,5 +1,5 @@
-Graph Compiler
-==============
+``ivy.compile()``
+=================
..
diff --git a/docs/compiler/transpiler.rst b/docs/overview/one_liners/transpile.rst
similarity index 98%
rename from docs/compiler/transpiler.rst
rename to docs/overview/one_liners/transpile.rst
index 92e55711364b9..d24c631997fd0 100644
--- a/docs/compiler/transpiler.rst
+++ b/docs/overview/one_liners/transpile.rst
@@ -1,5 +1,5 @@
-Transpiler
-==========
+``ivy.transpile`` / ``ivy.unify``
+=================================
..
@@ -241,7 +241,7 @@ still working on some rough edges. These include:
the inference to be correct.
Keep in mind that the transpiler uses the graph compiler under the hood, so the
-`sharp bits of the compiler `_
+`sharp bits of the compiler `_
apply here as well!
Examples