diff --git a/modules/base/doc/base.rst b/modules/base/doc/base.rst
index 72d9ed9dcc547e63247afb10905942c1be04a8b0..24bbf4448bafc9c09046204c92899e9ea49f21e6 100644
--- a/modules/base/doc/base.rst
+++ b/modules/base/doc/base.rst
@@ -2,7 +2,22 @@
 ================================================================================
 
 .. toctree::
+  :maxdepth: 1
 
+  generic
   logging
+  ../bindings/bindings
+  ../conop/conop
+  ../db/db
+  ../geom/geom
+  ../gfx/gfx
+  ../gui/gui
+  ../img/base/img
+  ../io/io
+  ../mol/base/mol
+  ../seq/base/seq
   settings
+  table
   testutils
+
+
diff --git a/modules/base/doc/settings.rst b/modules/base/doc/settings.rst
index 8ba0ffc3786c1be74b85077fde007b696a85f50d..ffd01d0e7994274039e1fd58aeb8aaff82c3c53f 100644
--- a/modules/base/doc/settings.rst
+++ b/modules/base/doc/settings.rst
@@ -1,4 +1,4 @@
-:mod:`ost.settings` - Locate Files and Retrieve Preferences
+:mod:`~ost.settings` - Locate Files and Retrieve Preferences
 ================================================================================
 
 .. automodule:: ost.settings
diff --git a/modules/doc/table.rst b/modules/base/doc/table.rst
similarity index 100%
rename from modules/doc/table.rst
rename to modules/base/doc/table.rst
diff --git a/modules/conop/doc/cleanup.rst b/modules/conop/doc/cleanup.rst
index a7a49bdf6d1463fdead7fd9ad02180be4ea0bcbe..4f18817627883971da307bde0229f5180015274e 100644
--- a/modules/conop/doc/cleanup.rst
+++ b/modules/conop/doc/cleanup.rst
@@ -1,4 +1,4 @@
-:mod:`conop.cleanup <ost.conop.cleanup>` -- Sanitize structures
+:mod:`~ost.conop.cleanup>` -- Sanitize structures
 ================================================================================
 
 .. module:: ost.conop.cleanup
diff --git a/modules/db/doc/db.rst b/modules/db/doc/db.rst
index a9f2cb59f34330f5324c06312018cb17d8689b33..98a15ddc0ec3de59fb65714f386bd23ff5273ed4 100644
--- a/modules/db/doc/db.rst
+++ b/modules/db/doc/db.rst
@@ -1,4 +1,4 @@
-Linear Database
+:mod:`~ost.db` - Linear Database
 ===============================================================================
 
 .. currentmodule:: ost.db
diff --git a/modules/img/alg/doc/alg.rst b/modules/img/alg/doc/alg.rst
index 57584f48909f0b2e6f49aff0c1f5db7f12e749fb..1825f56c544b73078df97daba86bf52afc1bb8e6 100644
--- a/modules/img/alg/doc/alg.rst
+++ b/modules/img/alg/doc/alg.rst
@@ -1,4 +1,4 @@
-:mod:`img.alg <ost.img.alg>` - Image Processing Algorithms
+:mod:`~ost.img.alg` - Image Processing Algorithms
 ================================================================================
 
 .. module:: ost.img.alg
diff --git a/modules/img/base/doc/img.rst b/modules/img/base/doc/img.rst
index 9fe712166cb3240e94bdecf5b146e571c5372bfe..0cd470a66cce267dc572c9e2a628ffa7e9673766 100644
--- a/modules/img/base/doc/img.rst
+++ b/modules/img/base/doc/img.rst
@@ -5,6 +5,7 @@
   :hidden:
 
   point-size-extent
+  ../alg/alg
 
 .. module:: ost.img
    :synopsis: Images and density maps
diff --git a/modules/index.rst b/modules/index.rst
index e307b97022fe6818b1809792ad26fe02b2d1d392..9a286f1c114187f2c10e59968a108e447f18e2a6 100644
--- a/modules/index.rst
+++ b/modules/index.rst
@@ -8,40 +8,10 @@ OpenStructure documentation
   install
   intro
   users
-  base/generic
   base/base
-  geom/geom
-  mol/base/mol
-  mol/alg/molalg
-  mol/alg/chain_mapping
-  mol/alg/contact_score
-  mol/alg/dockq
-  mol/alg/helix_kinks
-  mol/alg/ligand_scoring
-  mol/alg/qsscore
-  mol/alg/scoring
-  mol/alg/stereochemistry
-  mol/alg/structure_analysis
-  mol/alg/trajectory_analysis
-  mol/mm/molmm
-  conop/conop
-  img/base/img
-  img/alg/alg
-  seq/base/seq
-  seq/alg/seqalg
-  seq/alg/renumber
-  seq/alg/aaindex
-  db/db
-  bindings/bindings
-  io/io
-  gfx/gfx
-  gui/gui
   newmodule
   external
   contributing
-  table
-  mol/alg/lddt
-  mol/alg/molck
   actions
 
 For Starters
@@ -108,7 +78,7 @@ Graphical User Interface
 Varia
 --------------------------------------------------------------------------------
 
-**Datasets**: :doc:`tabular data <table>`
+**Datasets**: :doc:`tabular data <base/table>`
 
 **Supported File Formats**: :doc:`structure formats<io/structure_formats>` | :doc:`sequence formats <io/sequence_formats>` | :doc:`sequence profile formats <io/sequence_profile_formats>` | :doc:`image formats <io/image_formats>`
 
diff --git a/modules/mol/alg/doc/chain_mapping.rst b/modules/mol/alg/doc/chain_mapping.rst
index eeb69d34a7ca70bef81b6ab0000fcd30f174f9b6..0933f252685a7b01851087d8104db8709ceacf53 100644
--- a/modules/mol/alg/doc/chain_mapping.rst
+++ b/modules/mol/alg/doc/chain_mapping.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg.chain_mapping <ost.mol.alg.chain_mapping>` -- Chain Mapping
+:mod:`~ost.mol.alg.chain_mapping` -- Chain Mapping
 --------------------------------------------------------------------------------
 
 .. automodule:: ost.mol.alg.chain_mapping
diff --git a/modules/mol/alg/doc/contact_score.rst b/modules/mol/alg/doc/contact_score.rst
index 489ff85d74a63e0c71b495d2aaf307df4773b4da..ebc839d47e74ca1980681772ce0f3703285a56a5 100644
--- a/modules/mol/alg/doc/contact_score.rst
+++ b/modules/mol/alg/doc/contact_score.rst
@@ -1,7 +1,7 @@
-:mod:`mol.alg.contact_score <ost.mol.alg.contact_score>` -- Contact based scores
+:mod:`~ost.mol.alg.contact_score` -- Contact-Based Scores
 ------------------------------------------------------------------------------------
 
 .. automodule:: ost.mol.alg.contact_score
    :members:
    :member-order: bysource
-   :synopsis: Contact based scores
+   :synopsis: Contact-based scores
diff --git a/modules/mol/alg/doc/dockq.rst b/modules/mol/alg/doc/dockq.rst
index 82b261fa7f9b91e18352ae0a95709eb761b0a8ae..4eabd307f5216e84f8faef3f906d37568cce83f2 100644
--- a/modules/mol/alg/doc/dockq.rst
+++ b/modules/mol/alg/doc/dockq.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg.dockq <ost.mol.alg.dockq>` -- DockQ implementation
+:mod:`~ost.mol.alg.dockq` -- DockQ Implementation
 --------------------------------------------------------------------------------
 
 .. module:: ost.mol.alg.dockq
diff --git a/modules/mol/alg/doc/helix_kinks.rst b/modules/mol/alg/doc/helix_kinks.rst
index d81aa79f08d923bbc17edd1879d23ec84d1d8266..37fc78bdb80a6761eaac03f6b8b0f04e86bda42a 100644
--- a/modules/mol/alg/doc/helix_kinks.rst
+++ b/modules/mol/alg/doc/helix_kinks.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg.helix_kinks <ost.mol.alg.helix_kinks>` -- Algorithms to calculate Helix Kinks
+:mod:`~ost.mol.alg.helix_kinks` -- Algorithms to Calculate Helix Kinks
 ---------------------------------------------------------------------------------------------------------------
 
 .. automodule:: ost.mol.alg.helix_kinks
diff --git a/modules/mol/alg/doc/lddt.rst b/modules/mol/alg/doc/lddt.rst
index 1d058710431f7872b86f27a9bd50a4a9ff8ecd95..ae4e6d3d01cbcde6af206ca46cdd1d734c6a7fdb 100644
--- a/modules/mol/alg/doc/lddt.rst
+++ b/modules/mol/alg/doc/lddt.rst
@@ -1,6 +1,8 @@
-====
-lDDT
-====
+:orphan:
+
+========================
+lDDT binary (deprecated)
+========================
 
 .. warning::
 
diff --git a/modules/mol/alg/doc/ligand_scoring.rst b/modules/mol/alg/doc/ligand_scoring.rst
index 8f775777bc749d4fe89efdad07307841af71a146..79fcb8dceccc9c44f1130d7ad04a0853d98c1c97 100644
--- a/modules/mol/alg/doc/ligand_scoring.rst
+++ b/modules/mol/alg/doc/ligand_scoring.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg.ligand_scoring <ost.mol.alg.ligand_scoring>` -- Ligand scoring functions
+:mod:`~ost.mol.alg.ligand_scoring` -- Ligand scoring functions
 ------------------------------------------------------------------------------------------
 
 .. module:: ost.mol.alg.ligand_scoring
diff --git a/modules/mol/alg/doc/molalg.rst b/modules/mol/alg/doc/molalg.rst
index b3e77373186b5cf036a51fa12bb532db68c8b2d1..aab9fc5e207fa376d227ae4dd3fe8ec4e720f9fe 100644
--- a/modules/mol/alg/doc/molalg.rst
+++ b/modules/mol/alg/doc/molalg.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg <ost.mol.alg>` -- Algorithms for Structures
+:mod:`~ost.mol.alg` -- Algorithms for Structures
 ================================================================================
 
 .. module:: ost.mol.alg
@@ -7,16 +7,19 @@
 Submodules
 --------------------------------------------------------------------------------
 
-* :doc:`chain_mapping – Chain Mapping <chain_mapping>`
-* :doc:`contact_score – Contact based scores<contact_score>`
-* :doc:`dockq – DockQ implementation<dockq>`
-* :doc:`helix_kinks – Algorithms to calculate Helix Kinks<helix_kinks>`
-* :doc:`ligand_scoring – Ligand scoring functions<ligand_scoring>`
-* :doc:`qsscore – New QS score implementation<qsscore>`
-* :doc:`scoring – Specialized scoring functions<scoring>`
-* :doc:`stereochemistry – Stereochemistry Checks<stereochemistry>`
-* :doc:`structure_analysis – Functions to analyze structures<structure_analysis>`
-* :doc:`trajectory_analysis – DRMSD, pairwise distances and more<trajectory_analysis>`
+.. toctree::
+  :maxdepth: 1
+
+  chain_mapping
+  contact_score
+  dockq
+  helix_kinks
+  ligand_scoring
+  qsscore
+  scoring
+  stereochemistry
+  structure_analysis
+  trajectory_analysis
 
 Local Distance Test scores (lDDT, DRMSD)
 --------------------------------------------------------------------------------
@@ -1451,4 +1454,3 @@ from a :class:`ost.io.MMCifInfoBioUnit` or the derived
   :param bu_info: Info object
   :type bu_info: :class:`MMCifInfoBioUnit`/:class:`BUInfo`
   :returns: A :class:`ost.mol.EntityHandle` of the requested biounit
-
diff --git a/modules/mol/alg/doc/molck.rst b/modules/mol/alg/doc/molck.rst
index 7c4d9ee6300a7076e32dd9c81161fde444f35d67..c344308c72a001bff19f60e30cc4075dab9198a4 100644
--- a/modules/mol/alg/doc/molck.rst
+++ b/modules/mol/alg/doc/molck.rst
@@ -1,9 +1,10 @@
+:orphan:
+
 ..  Note on large code blocks: keep max. width to 100 or it will look bad
                                on webpage!
 
-=========================
-Molecular Checker (Molck)
-=========================
+Molck - the Molecular Checker binary (deprecated)
+=================================================
 
 --------------------------------------
 Where can I find the Molck executable? 
diff --git a/modules/mol/alg/doc/qsscore.rst b/modules/mol/alg/doc/qsscore.rst
index d2c2d9eebd346e40f7c7c0fb27e417f178d93737..1422d625a5dca24bdb7a2745c16d307161159882 100644
--- a/modules/mol/alg/doc/qsscore.rst
+++ b/modules/mol/alg/doc/qsscore.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg.qsscore <ost.mol.alg.qsscore>` -- New QS score implementation
+:mod:`~ost.mol.alg.qsscore` -- New QS Score Implementation
 --------------------------------------------------------------------------------
 
 .. note::
diff --git a/modules/mol/alg/doc/scoring.rst b/modules/mol/alg/doc/scoring.rst
index 4b0f6a7a7aaa06ab133b8db514aab25046bb0a52..a9651f5fa6f72c2c919a8b334ee33e2686353389 100644
--- a/modules/mol/alg/doc/scoring.rst
+++ b/modules/mol/alg/doc/scoring.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg.scoring <ost.mol.alg.scoring>` -- Specialized scoring functions
+:mod:`~ost.mol.alg.scoring` -- Specialized Scoring Functions
 ---------------------------------------------------------------------------------
 
 .. module:: ost.mol.alg.scoring
diff --git a/modules/mol/alg/doc/stereochemistry.rst b/modules/mol/alg/doc/stereochemistry.rst
index 0ed0dd38f9e39fef142ce004a58b75acdad7c36f..78ebf8b02f1e199fef32521ffedcad09e053ffc1 100644
--- a/modules/mol/alg/doc/stereochemistry.rst
+++ b/modules/mol/alg/doc/stereochemistry.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg.stereochemistry <ost.mol.alg.stereochemistry>` -- Stereochemistry Checks
+:mod:`~ost.mol.alg.stereochemistry` -- Stereochemistry Checks
 --------------------------------------------------------------------------------------
 
 .. warning::
diff --git a/modules/mol/alg/doc/structure_analysis.rst b/modules/mol/alg/doc/structure_analysis.rst
index 681508ac8d74a073fdd048d6389087d520a722c0..79e679ac7720e6ca8e75bb76c33e39476c38f647 100644
--- a/modules/mol/alg/doc/structure_analysis.rst
+++ b/modules/mol/alg/doc/structure_analysis.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg.structure_analysis <ost.mol.alg.structure_analysis>` -- Functions to analyze structures
+:mod:`~ost.mol.alg.structure_analysis` -- Functions to Analyze Structures
 ---------------------------------------------------------------------------------------------------------------
 
 .. automodule:: ost.mol.alg.structure_analysis
diff --git a/modules/mol/alg/doc/trajectory_analysis.rst b/modules/mol/alg/doc/trajectory_analysis.rst
index d83c0b259592643e252dfd8df9298be552d6499a..b771f65f8a8b70ae94c174822a958f1d8a34b35c 100644
--- a/modules/mol/alg/doc/trajectory_analysis.rst
+++ b/modules/mol/alg/doc/trajectory_analysis.rst
@@ -1,4 +1,4 @@
-:mod:`mol.alg.trajectory_analysis <ost.mol.alg.trajectory_analysis>` -- DRMSD, pairwise distances and more
+:mod:`~ost.mol.alg.trajectory_analysis` -- DRMSD, Pairwise Distances and More
 ---------------------------------------------------------------------------------------------------------------
 
 .. automodule:: ost.mol.alg.trajectory_analysis
diff --git a/modules/mol/base/doc/mol.rst b/modules/mol/base/doc/mol.rst
index b6833b05054bd4397244d4ea11180a7a93a3e344..37f7a811fde4187ac26853de7f4e884a375b3c50 100644
--- a/modules/mol/base/doc/mol.rst
+++ b/modules/mol/base/doc/mol.rst
@@ -8,6 +8,7 @@
 The mol module implements data structures to work with molecular datasets. At its heart lie the :class:`EntityHandle` and :class:`EntityView` classes which represent molecular structures such as proteins, DNA, RNA and small molecules. There are also classes to deal with molecular surfaces.
 
 .. toctree::
+  :maxdepth: 2
   
   entity
   editors
@@ -15,13 +16,4 @@ The mol module implements data structures to work with molecular datasets. At it
   surface
   traj
   ../alg/molalg
-  ../alg/chain_mapping
-  ../alg/contact_score
-  ../alg/dockq
-  ../alg/helix_kinks
-  ../alg/ligand_scoring
-  ../alg/qsscore
-  ../alg/scoring
-  ../alg/stereochemistry
-  ../alg/structure_analysis
-  ../alg/trajectory_analysis
\ No newline at end of file
+  ../mm/molmm
\ No newline at end of file
diff --git a/modules/mol/mm/doc/antechamber.rst b/modules/mol/mm/doc/antechamber.rst
new file mode 100644
index 0000000000000000000000000000000000000000..ea975096a99ba16d8e4f8bc775064f3a7cbe4f33
--- /dev/null
+++ b/modules/mol/mm/doc/antechamber.rst
@@ -0,0 +1,30 @@
+:mod:`~ost.mol.mm.antechamber` -- Generating forcefields with Antechamber
+--------------------------------------------------------------------------------
+
+The antechamber submodule of mol.mm defines functions to use Antechamber (from
+AmberTools) to automatically generate force field parameters and load the
+results into :class:`~ost.mol.mm.Forcefield` objects.
+
+**Example usage**:
+
+.. code-block:: python
+
+  from ost.mol import mm
+
+  # create parameters for RVP using PDB's component dictionary
+  mm.antechamber.RunAntechamber('RVP', 'components.cif', base_out_dir='ligands')
+
+  # create force field
+  ff = mm.Forcefield()
+  ff = mm.antechamber.AddFromPath(ff, 'ligands/RVP')
+  # equivalent: ff = mm.antechamber.AddFromFiles(ff, 'ligands/RVP/frcmod',
+  #                                              'ligands/RVP/out.mpdb')
+  # since Antechamber cannot deal with ions, you can do it manually
+  ff = mm.antechamber.AddIon(ff, 'CL', 'CL', 35.45, -1.0, 0.4401, 0.4184)
+  # save it
+  ff.Save('ligands/ff.dat')
+
+**Functions**:
+
+.. automodule:: ost.mol.mm.antechamber
+  :members:
\ No newline at end of file
diff --git a/modules/mol/mm/doc/forcefield.rst b/modules/mol/mm/doc/forcefield.rst
index 5b88a42d19a7e1c3cdd859e04afd555c64c9ce4a..b6a181687f91abf0975822105e71af17d903137c 100644
--- a/modules/mol/mm/doc/forcefield.rst
+++ b/modules/mol/mm/doc/forcefield.rst
@@ -139,33 +139,9 @@ Reading forcefields
 Generating forcefields with Antechamber
 --------------------------------------------------------------------------------
 
-The antechamber submodule of mol.mm defines functions to use Antechamber (from
-AmberTools) to automatically generate force field parameters and load the
-results into :class:`~ost.mol.mm.Forcefield` objects.
-
-**Example usage**:
-
-.. code-block:: python
-
-  from ost.mol import mm
-
-  # create parameters for RVP using PDB's component dictionary
-  mm.antechamber.RunAntechamber('RVP', 'components.cif', base_out_dir='ligands')
-
-  # create force field
-  ff = mm.Forcefield()
-  ff = mm.antechamber.AddFromPath(ff, 'ligands/RVP')
-  # equivalent: ff = mm.antechamber.AddFromFiles(ff, 'ligands/RVP/frcmod',
-  #                                              'ligands/RVP/out.mpdb')
-  # since Antechamber cannot deal with ions, you can do it manually
-  ff = mm.antechamber.AddIon(ff, 'CL', 'CL', 35.45, -1.0, 0.4401, 0.4184)
-  # save it
-  ff.Save('ligands/ff.dat')
-
-**Functions**:
-
-.. automodule:: ost.mol.mm.antechamber
-  :members:
+The :doc:`antechamber <antechamber>` submodule of mol.mm defines functions to use
+Antechamber (from AmberTools) to automatically generate force field parameters
+and load the results into :class:`~ost.mol.mm.Forcefield` objects.
 
 The Forcefield Class
 --------------------------------------------------------------------------------
@@ -707,8 +683,3 @@ The Forcefield Class
 
     :returns: :class:`BlockModifier` for this name, invalid if it can't
               be found
-
-
-
-
-    
diff --git a/modules/mol/mm/doc/molmm.rst b/modules/mol/mm/doc/molmm.rst
index e372ae76bc1209b0b28eebb92c28b59e28b97d9b..91e204529c14f663cb85d03f7a60a31042b197b7 100644
--- a/modules/mol/mm/doc/molmm.rst
+++ b/modules/mol/mm/doc/molmm.rst
@@ -1,4 +1,4 @@
-The mm Module
+:mod:`~ost.mol.mm` - The mm Module
 ================================================================================
 
 .. module:: ost.mol.mm
@@ -79,6 +79,7 @@ Documentation
   interaction
   buildingblock
   forcefield
+  antechamber
   settings
   topology
   observers
diff --git a/modules/seq/alg/doc/aaindex.rst b/modules/seq/alg/doc/aaindex.rst
index cb875481431490d90ff35a68eed2c80378ec94ea..940794d3f6fc41d66a2172ba76af6ec1b4cd2daf 100644
--- a/modules/seq/alg/doc/aaindex.rst
+++ b/modules/seq/alg/doc/aaindex.rst
@@ -1,4 +1,4 @@
-:mod:`seq.alg.aaindex <ost.seq.alg.aaindex>` -- AAIndex annotations
+:mod:`~ost.seq.alg.aaindex` -- AAIndex annotations
 --------------------------------------------------------------------------------
 
 .. module:: ost.seq.alg.aaindex
diff --git a/modules/seq/alg/doc/renumber.rst b/modules/seq/alg/doc/renumber.rst
index ff161883987daa24d1b38e29468441a593b1c402..30688cd96a9e2ba5fad588c85b29e5ed1e67f210 100644
--- a/modules/seq/alg/doc/renumber.rst
+++ b/modules/seq/alg/doc/renumber.rst
@@ -1,4 +1,4 @@
-:mod:`seq.alg.renumber <ost.seq.alg.renumber>` -- Renumber entities
+:mod:`~ost.seq.alg.renumber` -- Renumber entities
 --------------------------------------------------------------------
 
 .. module:: ost.seq.alg.renumber
diff --git a/modules/seq/alg/doc/seqalg.rst b/modules/seq/alg/doc/seqalg.rst
index 98e0568c6db7e776cc4830764b193787a2dfa4a2..117574c5f8d5598e8f315ab1537b0254cf04ea43 100644
--- a/modules/seq/alg/doc/seqalg.rst
+++ b/modules/seq/alg/doc/seqalg.rst
@@ -1,4 +1,4 @@
-:mod:`seq.alg <ost.seq.alg>` -- Algorithms for Sequences
+:mod:`~ost.seq.alg` -- Algorithms for Sequences
 ================================================================================
 
 .. module:: ost.seq.alg
@@ -7,8 +7,11 @@
 Submodules
 --------------------------------------------------------------------------------
 
-* :doc:`aaindex – AAIndex annotations <aaindex>`
-* :doc:`renumber – Renumber entities <renumber>`
+.. toctree::
+  :maxdepth: 1
+
+  aaindex
+  renumber
 
 Algorithms for Alignments
 --------------------------------------------------------------------------------
diff --git a/modules/seq/base/doc/seq.rst b/modules/seq/base/doc/seq.rst
index 012e313059202f5373a2e9459b9399a169c7b866..de8b0de191495ab70c54d11df0d6abdcd903a2be 100644
--- a/modules/seq/base/doc/seq.rst
+++ b/modules/seq/base/doc/seq.rst
@@ -863,3 +863,9 @@ probabilities between Match, Insertion or Deletion states or neff values
 
     :returns: A nonsorted list of the names of all :class:`ProfileHandle`
               objects in the database
+
+.. toctree::
+  :maxdepth: 2
+  :hidden:
+
+  ../alg/seqalg
\ No newline at end of file