diff --git a/docs/src/_static/css/wire.css b/docs/src/_static/css/wire.css
new file mode 100644
index 0000000000..a28bd8b810
--- /dev/null
+++ b/docs/src/_static/css/wire.css
@@ -0,0 +1,243 @@
+*{
+ -webkit-box-sizing:border-box;
+ -moz-box-sizing:border-box;
+ box-sizing:border-box
+}
+html,body{
+ margin:0;
+ padding:0;
+ min-height:100%
+}
+html{
+ font-family:-apple-system,BlinkMacSystemFont,sans-serif;
+ font-size:16px;
+ line-height:1.5;
+ position:relative;
+}
+body{
+ color:#34383b;
+ background-color:#fff;
+}
+a{
+ color:#0772de;
+ text-decoration:none;
+ transition:color 0.08s
+}
+a:hover,a:focus{
+ color:#05498f
+}
+html,body{
+ -webkit-font-smoothing:antialiased;
+ -moz-osx-font-smoothing:grayscale;
+ -webkit-text-size-adjust:100%;
+ -ms-text-size-adjust:100%;
+ font-weight:300
+}
+h1,h2,h3,h4,h5,h6{
+ margin-bottom:0;
+ line-height:1.5;
+ text-rendering:optimizeLegibility
+}
+h1{
+ font-size:2rem;
+ font-weight:300;
+ text-align:center;
+ padding:32px 16px
+}
+h2{
+ margin-top:2rem;
+ font-size:1.5rem;
+ font-weight:600
+}
+h2:first-child{
+ margin-top:0
+}
+h3{
+ margin-top:2rem;
+ font-size:1.5rem;
+ font-weight:300
+}
+h4{
+ margin-top:2rem;
+ font-size:1rem;
+ font-weight:600
+}
+strong,b{
+ font-weight:600
+}
+p,dd{
+ margin-top:0;
+ margin-bottom:1rem
+}
+p.lead,dd.lead{
+ font-size:2rem;
+ font-weight:300;
+ color:#696c6e
+}
+p.dark,dd.dark{
+ color:#34383b
+}
+p.error,dd.error{
+ margin:160px 0 80px;
+ text-align:center
+}
+p a {
+ word-break: break-all;
+}
+ul,ol,dl{
+ margin:0 0 1rem;
+ padding:0
+}
+li{
+ list-style-image:url('data:image/svg+xml;utf8,');
+}
+
+hr{
+ margin:2rem 0;
+ border:0;
+ border-top:1px solid #696c6e;
+ border-bottom:0
+}
+blockquote{
+ padding:0 0 0 12px;
+ margin:1rem 0 1rem -14px;
+ border-left:2px solid #696c6e;
+ color:#34383b
+}
+dt{
+ font-weight:600
+}
+del{
+ color:#34383b
+}
+main{
+ max-width:840px;
+ display:flex;
+ align-items:stretch;
+ margin:0 auto
+}
+@media screen and (max-width: 550px){
+ main{
+ display:inherit
+ }
+}
+article{
+ max-width:560px;
+ margin:0 auto
+}
+main article{
+ margin:0
+}
+header{
+ max-width:840px;
+ height:96px;
+ border-bottom:1px solid #bec0c1;
+ display:flex;
+ align-items:center;
+ justify-content:center;
+ margin:0 auto 32px
+}
+header a{
+ font-size:12px;
+ font-weight:600;
+ color:#34383b
+}
+header a:hover{
+ color:#17181a
+}
+header a:first-child{
+ margin-right:auto
+}
+header a:last-child{
+ margin-left:auto
+}
+a h1{
+ color:#34383b
+}
+input[type='checkbox']{
+ display:none
+}
+input[type='checkbox']:checked ~ #menu{
+ display:block
+}
+footer{
+ text-align:center;
+ color: #696C6E;
+}
+footer div{
+ max-width:840px;
+ line-height:160px;
+ margin:0 auto;
+ font-size:12px;
+ font-weight:600
+}
+
+.wy-menu-vertical a {
+ color: #0772de;
+}
+
+.wy-menu-vertical a:hover {
+ color: #05498f;
+ background-color: #fff;
+}
+
+.wy-side-scroll {
+ background-color: #fafafa;
+}
+
+.wy-nav-side {
+ background-color: #fafafa;
+}
+
+.wy-side-nav-search {
+ background-color: #fafafa;
+}
+
+.wy-body-for-nav {
+ background-color: #fff;
+}
+
+.wy-nav-content {
+ background-color: #fff !important;
+}
+
+.wy-nav-content-wrap {
+ background-color: #fff !important;
+}
+
+.wy-menu-vertical li.current {
+ background-color: #eaeaea;
+}
+
+.wy-menu-vertical li.current a {
+ border: none;
+}
+
+.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a, .wy-menu-vertical li.toctree-l3.current li.toctree-l4>a {
+ background: unset;
+}
+
+.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a:hover, .wy-menu-vertical li.toctree-l3.current li.toctree-l4>a:hover {
+ background-color: #c9c9c9;
+}
+
+.wy-nav-content {
+ max-width: unset;
+}
+
+.wy-nav-top {
+ background-color: #fafafa;
+ color: #34383b;
+}
+
+.wy-nav-top a {
+ color: #34383b;
+}
+/*
+.wy-side-nav-search a {
+ color: #0772de;
+}
+
+.wy-side-nav-search a:hover {
+ color: #05498f;
+} */
\ No newline at end of file
diff --git a/docs/src/_static/favicon/favicon.ico b/docs/src/_static/favicon/favicon.ico
new file mode 100644
index 0000000000..c528ac2b00
Binary files /dev/null and b/docs/src/_static/favicon/favicon.ico differ
diff --git a/docs/src/_static/image/Wire_logo.svg b/docs/src/_static/image/Wire_logo.svg
new file mode 100644
index 0000000000..c6392ab636
--- /dev/null
+++ b/docs/src/_static/image/Wire_logo.svg
@@ -0,0 +1,3 @@
+
diff --git a/docs/src/_static/image/wire_symbol.png b/docs/src/_static/image/wire_symbol.png
new file mode 100644
index 0000000000..4ee3434121
Binary files /dev/null and b/docs/src/_static/image/wire_symbol.png differ
diff --git a/docs/src/_templates/README.md b/docs/src/_templates/README.md
new file mode 100644
index 0000000000..09f2cdd156
--- /dev/null
+++ b/docs/src/_templates/README.md
@@ -0,0 +1,4 @@
+# Writing HTML templates
+
+If you want more control over HTML generation over ReadTheDocs theme. See https://github.com/readthedocs/sphinx_rtd_theme/tree/master/sphinx_rtd_theme for specific templates you may wish to override. It can be fully overriden or partially (just extend the default template and only use the block you wish to change).
+
diff --git a/docs/src/_templates/layout.html b/docs/src/_templates/layout.html
new file mode 100644
index 0000000000..668345074e
--- /dev/null
+++ b/docs/src/_templates/layout.html
@@ -0,0 +1,31 @@
+{%- extends "sphinx_rtd_theme/layout.html" %}
+
+{% block sidebartitle %}
+
+
+ {%- if logo %}
+ {#- Not strictly valid HTML, but it's the only way to display/scale
+ it properly, without weird scripting or heaps of work
+ #}
+ {%- if sphinx_version_info < (4, 0) -%}
+
+ {%- else %}
+
+ {%- endif %}
+ {%- endif %}
+
+
+
+
+ {%- include "searchbox.html" %}
+{% endblock %}
\ No newline at end of file
diff --git a/docs/src/conf.py b/docs/src/conf.py
index 5ad267b9ae..6b2ee1500c 100644
--- a/docs/src/conf.py
+++ b/docs/src/conf.py
@@ -22,7 +22,7 @@
today_date = datetime.date.today()
copyright = f'{today_date.year}, Wire'
author = 'Wire Swiss GmbH'
-version = '0.0.3'
+version = '0.0.4'
# the 'release' variable is used in latex-based PDF generation
release = version
@@ -97,6 +97,16 @@
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
+# NOTE: if you want to fully override default theme css, use this property (presumes it is in _static folder)
+#html_style = 'css/wire.css'
+
+# additional css files (presumes they are in _static folder)
+html_css_files = [
+ 'css/wire.css',
+]
+
+html_favicon = '_static/favicon/favicon.ico'
+html_logo = '_static/image/wire_logo.svg'
smv_tag_whitelist = ''
smv_branch_whitelist = r'^(install-with-poetry)$'