diff --git a/README.rst b/README.rst
index 227eca05..7058b3dd 100644
--- a/README.rst
+++ b/README.rst
@@ -1,7 +1,10 @@
.. _readme:
-Data.SyncMaster
-===============
+|Logo|
+
+.. |Logo| image:: docs/_static/logo_wide_red_text.svg
+ :alt: Data.SyncMaster logo
+ :target: https://github.com/MobileTeleSystems/data-syncmaster
|Repo Status| |Docker image| |PyPI| |PyPI License| |PyPI Python Version| |Documentation|
|Build Status| |Coverage| |pre-commit.ci|
diff --git a/docker/Dockerfile.server b/docker/Dockerfile.server
index 59963dce..8cea50a1 100644
--- a/docker/Dockerfile.server
+++ b/docker/Dockerfile.server
@@ -14,7 +14,7 @@ ENV PYTHONPATH=/app \
POETRY_VIRTUALENVS_CREATE=1
# add this when logo will be ready
-# COPY ./docs/_static/*.svg ./syncmaster/server/static/
+COPY ./docs/_static/*.svg ./syncmaster/server/static/
# Swagger UI
ADD https://cdn.jsdelivr.net/npm/swagger-ui-dist@latest/swagger-ui-bundle.js https://cdn.jsdelivr.net/npm/swagger-ui-dist@latest/swagger-ui.css \
diff --git a/docs/_static/custom.css b/docs/_static/custom.css
index ac17ca7e..6c27f546 100644
--- a/docs/_static/custom.css
+++ b/docs/_static/custom.css
@@ -1,3 +1,19 @@
-.logo {
- width: 200px !important;
-}
+@media not print {
+ @media (prefers-color-scheme: dark) {
+ body:not([data-theme="light"]) img.sidebar-logo {
+ content: url(logo_red_text.svg);
+ }
+
+ body:not([data-theme="light"]) img.readme-wide-logo {
+ content: url(logo_wide_red_text.svg);
+ }
+ }
+
+ body[data-theme="dark"] img.sidebar-logo {
+ content: url(logo_red_text.svg);
+ }
+
+ body[data-theme="dark"] img.readme-wide-logo {
+ content: url(logo_wide_red_text.svg);
+ }
+}
\ No newline at end of file
diff --git a/docs/_static/icon.svg b/docs/_static/icon.svg
new file mode 100644
index 00000000..c3b69244
--- /dev/null
+++ b/docs/_static/icon.svg
@@ -0,0 +1,86 @@
+
+
diff --git a/docs/_static/logo.svg b/docs/_static/logo.svg
new file mode 100644
index 00000000..21c04ce5
--- /dev/null
+++ b/docs/_static/logo.svg
@@ -0,0 +1,110 @@
+
+
diff --git a/docs/_static/logo_no_text.svg b/docs/_static/logo_no_text.svg
new file mode 100644
index 00000000..e442d8ed
--- /dev/null
+++ b/docs/_static/logo_no_text.svg
@@ -0,0 +1,80 @@
+
+
diff --git a/docs/_static/logo_original.svg b/docs/_static/logo_original.svg
new file mode 100644
index 00000000..c4114240
--- /dev/null
+++ b/docs/_static/logo_original.svg
@@ -0,0 +1,120 @@
+
+
diff --git a/docs/_static/logo_red_text.svg b/docs/_static/logo_red_text.svg
new file mode 100644
index 00000000..3684903f
--- /dev/null
+++ b/docs/_static/logo_red_text.svg
@@ -0,0 +1,110 @@
+
+
diff --git a/docs/_static/logo_wide.svg b/docs/_static/logo_wide.svg
new file mode 100644
index 00000000..0b8c8e0c
--- /dev/null
+++ b/docs/_static/logo_wide.svg
@@ -0,0 +1,112 @@
+
+
diff --git a/docs/_static/logo_wide_original.svg b/docs/_static/logo_wide_original.svg
new file mode 100644
index 00000000..db962124
--- /dev/null
+++ b/docs/_static/logo_wide_original.svg
@@ -0,0 +1,122 @@
+
+
diff --git a/docs/_static/logo_wide_red_text.svg b/docs/_static/logo_wide_red_text.svg
new file mode 100644
index 00000000..92762a58
--- /dev/null
+++ b/docs/_static/logo_wide_red_text.svg
@@ -0,0 +1,112 @@
+
+
diff --git a/docs/conf.py b/docs/conf.py
index 0b98cb5f..d5f94567 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -120,17 +120,29 @@
# Theme options are theme-specific and customize the look and feel of a theme
# further. For a list of options available for each theme, see the
# documentation.
-html_theme_options = {}
+html_theme_options = {
+ "sidebar_hide_name": True,
+ "top_of_page_buttons": [],
+}
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ["_static"]
html_extra_path = ["robots.txt"]
+
html_css_files = [
"custom.css",
]
+html_logo = "./_static/logo.svg"
+favicons = [
+ {"rel": "icon", "href": "icon.svg", "type": "image/svg+xml"},
+]
+html_copy_source = False
+html_show_sourcelink = False
+git_exclude_patterns = ["docs/_static/*.svg"]
+
# The master toctree document.
master_doc = "index"
diff --git a/docs/index.rst b/docs/index.rst
index c016dd5f..1f855480 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -1,5 +1,9 @@
-.. include:: ../README.rst
- :end-before: documentation
+.. toctree::
+ :maxdepth: 2
+ :caption: Data.SyncMaster
+ :hidden:
+
+ self
.. toctree::
:maxdepth: 2
@@ -30,3 +34,15 @@
changelog
contributing
security
+
+.. include:: ../README.rst
+ :end-before: |Logo|
+
+.. image:: _static/logo_wide.svg
+ :alt: Data.SyncMaster logo
+ :target: https://github.com/MobileTeleSystems/data-syncmaster
+ :class: readme-wide-logo
+
+.. include:: ../README.rst
+ :start-after: |Logo|
+ :end-before: documentation