diff --git a/docs/conf.py b/docs/conf.py
index 7f7ac44c..05376dbe 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -15,8 +15,8 @@
import re
import sys
from subprocess import check_call
-
-import edx_theme
+from datetime import datetime
+import sphinx_book_theme
def get_version(*file_paths):
@@ -65,7 +65,6 @@ def get_version(*file_paths):
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
- 'edx_theme',
'sphinx.ext.autodoc',
'sphinx.ext.doctest',
'sphinx.ext.intersphinx',
@@ -96,8 +95,8 @@ def get_version(*file_paths):
# General information about the project.
project = 'commerce_coordinator'
-copyright = edx_theme.COPYRIGHT # pylint: disable=redefined-builtin
-author = edx_theme.AUTHOR
+copyright = f'{datetime.now().year}, edX LLC.' # pylint: disable=redefined-builtin
+author = "edX LLC."
project_title = 'commerce_coordinator'
documentation_title = f"{project_title}"
@@ -191,16 +190,48 @@ def get_version(*file_paths):
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
-html_theme = 'edx_theme'
+html_theme = 'sphinx_book_theme'
# 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 = {
+ "repository_url": "https://github.com/edx/commerce-coordinator",
+ "repository_branch": "main",
+ "path_to_docs": "docs/",
+ "use_repository_button": True,
+ "use_issues_button": True,
+ "use_edit_page_button": True,
+ # Please don't change unless you know what you're doing.
+ "extra_footer": """
+
+
+
+
+ These works by
+ edX LLC
+ are licensed under a
+ Creative Commons Attribution-ShareAlike 4.0 International License.
+ """
+}
+
+html_logo = "https://logos.openedx.org/open-edx-logo-color.png"
+html_favicon = "https://logos.openedx.org/open-edx-favicon.ico"
-# Add any paths that contain custom themes here, relative to this directory.
-html_theme_path = [edx_theme.get_html_theme_path()]
+if not os.environ.get('DJANGO_SETTINGS_MODULE'):
+ os.environ['DJANGO_SETTINGS_MODULE'] = 'test_utils.test_settings'
# The name for this set of Sphinx documents.
# " v documentation" by default.
diff --git a/requirements/doc.in b/requirements/doc.in
index 5528b8ef..21212f14 100644
--- a/requirements/doc.in
+++ b/requirements/doc.in
@@ -5,7 +5,7 @@
-r test.txt # Core and testing dependencies for this package
doc8 # reStructuredText style checker
-edx_sphinx_theme # edX theme for Sphinx output
+sphinx_book_theme # edX theme for Sphinx output
twine # Validates README.rst for usage on PyPI
build # Needed to build the wheel for twine README check
Sphinx # Documentation builder
diff --git a/requirements/doc.txt b/requirements/doc.txt
index 33628e8c..c6475e58 100644
--- a/requirements/doc.txt
+++ b/requirements/doc.txt
@@ -2,8 +2,10 @@
# This file is autogenerated by pip-compile with Python 3.8
# by the following command:
#
-# make upgrade
+# pip-compile --output-file=requirements/doc.txt requirements/doc.in
#
+accessible-pygments==0.0.4
+ # via pydata-sphinx-theme
alabaster==0.7.13
# via sphinx
amqp==5.2.0
@@ -27,7 +29,9 @@ async-timeout==4.0.3
attrs==23.2.0
# via -r requirements/test.txt
babel==2.15.0
- # via sphinx
+ # via
+ # pydata-sphinx-theme
+ # sphinx
backoff==2.2.1
# via
# -r requirements/test.txt
@@ -41,6 +45,8 @@ backports-zoneinfo[tzdata]==0.2.1
# django
# djangorestframework
# kombu
+beautifulsoup4==4.12.3
+ # via pydata-sphinx-theme
billiard==4.2.0
# via
# -r requirements/test.txt
@@ -146,7 +152,6 @@ django==4.2.13
# via
# -c requirements/common_constraints.txt
# -c requirements/constraints.txt
- # -r requirements/test.txt
# django-cors-headers
# django-crum
# django-extensions
@@ -191,6 +196,7 @@ doc8==1.1.1
docutils==0.19
# via
# doc8
+ # pydata-sphinx-theme
# readme-renderer
# restructuredtext-lint
# sphinx
@@ -219,8 +225,6 @@ edx-opaque-keys==2.10.0
# edx-drf-extensions
edx-rest-api-client==5.7.1
# via -r requirements/test.txt
-edx-sphinx-theme==3.1.0
- # via -r requirements/doc.in
exceptiongroup==1.2.1
# via
# -r requirements/test.txt
@@ -327,6 +331,7 @@ packaging==24.1
# -r requirements/test.txt
# build
# marshmallow
+ # pydata-sphinx-theme
# pyproject-api
# pytest
# sphinx
@@ -362,9 +367,13 @@ pycparser==2.22
# via
# -r requirements/test.txt
# cffi
+pydata-sphinx-theme==0.14.4
+ # via sphinx-book-theme
pygments==2.18.0
# via
+ # accessible-pygments
# doc8
+ # pydata-sphinx-theme
# readme-renderer
# rich
# sphinx
@@ -502,7 +511,6 @@ six==1.16.0
# edx-auth-backends
# edx-django-release-util
# edx-lint
- # edx-sphinx-theme
# python-dateutil
slumber==0.7.1
# via
@@ -519,10 +527,15 @@ social-auth-core==4.5.4
# -r requirements/test.txt
# edx-auth-backends
# social-auth-app-django
+soupsieve==2.5
+ # via beautifulsoup4
sphinx==5.3.0
# via
# -r requirements/doc.in
- # edx-sphinx-theme
+ # pydata-sphinx-theme
+ # sphinx-book-theme
+sphinx-book-theme==1.0.1
+ # via -r requirements/doc.in
sphinxcontrib-applehelp==1.0.4
# via sphinx
sphinxcontrib-devhelp==1.0.2
@@ -579,6 +592,7 @@ typing-extensions==4.12.2
# astroid
# edx-opaque-keys
# kombu
+ # pydata-sphinx-theme
# pylint
# rich
# stripe