diff --git a/dios/lib.py b/dios/lib.py
index 10c87aef2dd59deb9bc86eaebb2f0abb6d02bcb4..27504cb178135116f217f761680dff6d164e7ba6 100644
--- a/dios/lib.py
+++ b/dios/lib.py
@@ -100,12 +100,29 @@ def is_itype_like(obj, itype):
 
 def get_itype(obj):
     """
-    Return the according Itype, by any of any possible user input, like
-      - "datetime"
-      - DtItype
-      - pd.Series(...).index
-      - pd.DatetimeIndex
+
+    Return the according Itype.
+
     and return the according Itype
+    Parameters
+    ----------
+    obj : {itype string, Itype, pandas.Index, instance of pd.index}
+        get the itype fitting for the input
+
+    Examples
+    --------
+    >>> get_itype("datetime")
+    <class 'dios.lib.DtItype'>
+
+    >>> s = pd.Series(index=pd.to_datetime([]))
+    >>> get_itype(s.index)
+    <class 'dios.lib.DtItype'>
+
+    >>> get_itype(DtItype)
+    <class 'dios.lib.DtItype'>
+
+    >>> get_itype(pd.DatetimeIndex)
+    <class 'dios.lib.DtItype'>
     """
     if type(obj) == type and issubclass(obj, __Itype):
         return obj
@@ -242,29 +259,33 @@ def cast_to_itype(series, itype, policy='lossless', err='raise', inplace=False):
 
 
 class OptsFields:
-    """storage class for the keys in ``dios_options``"""
+    """storage class for the keys in `dios_options`
 
-    """How to inform user about mixed Itype (warn/err/ignore)"""
-    mixed_itype_warn_policy = "mixed_itype_policy"
+    Use like so: ``dios_options[OptsFields.X] = Opts.Y``.
 
+    See Also
+    --------
+        Opts: values for the options dict
+        dios_options: options dict for module
     """
-    Set the number of rows and variables to display in a call that use
-    ``__repr__`` or ``__str__`` like e.g. ``print(dios)`` do.
-    """
+
+    mixed_itype_warn_policy = "mixed_itype_policy"
     disp_max_rows = "disp_max_rows "
     disp_min_rows = "disp_min_rows "
     disp_max_cols = "disp_max_vars"
-
-    """
-    dios default representation:
-     - `indexed` (default) - show a index for every series
-     - `aligned`     - show a pd.Dataframe, where all indices, from all series 
-                       are merged together. 
-    """
     dios_repr = 'dios_repr'
 
 
 class Opts:
+    """storage class for string values for `dios_options`
+
+    Use like so: ``dios_options[OptsFields.X] = Opts.Y``.
+
+    See Also
+    --------
+        OptsFields: keys for the options dict
+        dios_options: options dict for module
+    """
     itype_warn = 'warn'
     itype_err = 'err'
     itype_ignore = 'ignore'
@@ -272,14 +293,48 @@ class Opts:
     repr_indexed = 'indexed'
 
 
-# set default values
-dios_options = {
+class __DocDummy(dict):
+    pass
+
+
+dios_options = __DocDummy()
+dios_options.update(**{
     OptsFields.disp_max_rows: 60,
     OptsFields.disp_min_rows: 10,
     OptsFields.disp_max_cols: 10,
     OptsFields.mixed_itype_warn_policy: Opts.itype_warn,
     OptsFields.dios_repr: Opts.repr_indexed,
-}
+})
+
+opdoc = f"""Options dictionary for module `dios`.
+
+Use like so: ``dios_options[OptsFields.X] = Opts.Y``.
+
+**Items**:
+ * {OptsFields.dios_repr}: {{'indexed', 'aligned'}} default: 'indexed'
+    dios default representation if:
+     * `indexed`:  show every column with its index
+     * `aligned`:  transform to pandas.DataFrame with indexed merged together.
+ * {OptsFields.disp_max_rows}  : int
+    Maximum numbers of row before truncated to `disp_min_rows`
+    in representation of DictOfSeries
+
+ * {OptsFields.disp_min_rows} : int
+    min rows to display if `max_rows` is exceeded
+
+ * {OptsFields.disp_max_cols} : int
+    Maximum numbers of columns before truncated representation
+
+ * {OptsFields.mixed_itype_warn_policy} : {{'warn', 'err', 'ignore'}}
+    How to inform user about mixed Itype
+
+See Also
+--------
+    OptsFields: keys for the options dict 
+    Opts: values for the options dict 
+
+"""
+dios_options.__doc__ = opdoc
 
 
 def _throw_MixedItype_err_or_warn(itype):
diff --git a/dox/index.rst b/dox/index.rst
index a08e96ecf960209ee47968b2d103f7a40abb1937..c5641f9e8fe35dff539eab275c264f9350c872e5 100644
--- a/dox/index.rst
+++ b/dox/index.rst
@@ -27,7 +27,7 @@ For full module api documentation see:
 .. toctree::
    :maxdepth: 2
 
-   sphinx/autodoc_diosapi
+   autodoc_diosapi
 
 or browse the Index..
 
diff --git a/dox/indexing_help.md b/dox/indexing_help.md
index cd8f4878b2d66a3427613b126a66f1f392deefe3..a77f27fadd9f48b86f7a07577f2c625214916a38 100644
--- a/dox/indexing_help.md
+++ b/dox/indexing_help.md
@@ -93,14 +93,14 @@ Indexer Table
 
 | example | type | on  | like `.loc` | handling | conditions / hints | link |
 | ------- | ---- | --- | ----------- | -------- | ------------------ | ---- |
-|[Column indexer](#select-columns-gracefully)| 
+|[Column indexer](#select-columns-gracefully)| ---- | --- | ----------- | -------- | ------------------ | ---- |
 | `.aloc[any, 'a']`         | scalar               | columns |no | select graceful | - | [cols](#select-columns-gracefully)|
 | `.aloc[any, 'b':'z']`       | slice                | columns |yes| slice | - | [cols](#select-columns-gracefully)|
 | `.aloc[any, ['a','c']]`     | list-like            | columns |no | filter graceful | - | [cols](#select-columns-gracefully)|
 | `.aloc[any [True,False]]`   | bool list-like       | columns |yes| take `True`'s | length must match nr of columns | [cols](#select-columns-gracefully)|
 | `.aloc[any, s]`             | pandas.Series        | columns |no | like list,  | only `s.values` are evaluated | [cols](#select-columns-gracefully)|
 | `.aloc[any, bs]`            | bool pandas.Series   | columns |yes| like bool-list | see there | [cols](#select-columns-gracefully)|
-|[Row indexer](#selecting-rows-a-smart-way)|                                               
+|[Row indexer](#selecting-rows-a-smart-way)|    ---- | --- | ----------- | -------- | ------------------ | ---- |                                           
 | `.aloc[7, any]`             | scalar               | rows    |no | translate to `.loc[key:key]` | - | [rows](#selecting-rows-a-smart-way) |
 | `.aloc[3:42, any]`          | slice                | rows    |yes| slice | - | | 
 | `.aloc[[1,2,24], any]`      | list-like            | rows    |no | filter graceful | - | [rows](#selecting-rows-a-smart-way) |
@@ -108,7 +108,7 @@ Indexer Table
 | `.aloc[s, any]`             | pandas.Series        | rows    |no | like `.loc[s.index]` | - | [ser](#pandasseries-and-boolean-pandasseries-as-row-indexer) |
 | `.aloc[bs, any]`            | bool pandas.Series   | rows    |no | align + just take `True`'s  | evaluate `usebool`-keyword |  [ser](#pandasseries-and-boolean-pandasseries-as-row-indexer)|
 | `.aloc[[[s],[1,2,3]], any]` | nested list-like     | both    | ? | one row-indexer per column | outer length must match nr of (selected) columns | [nlist](#nested-lists-as-row-indexer) |
-|[2D-indexer](#the-power-of-2d-indexer)|                                                
+|[2D-indexer](#the-power-of-2d-indexer)| ---- | --- | ----------- | -------- | ------------------ | ---- |                                                
 | `.aloc[di]`                 | dios-like            | both    |no | full align  | - | |
 | `.aloc[di, ...]`            | dios-like            | both    |no | full align | ellipsis has no effect | |
 | `.aloc[di>5]`               | bool dios-like       | both    |no | full align + take `True`'s | evaluate `usebool`-keyword | |