Indigo is an elegant, customizable theme for Open edX.
Note: This version of the Indigo theme is compatible with the Lilac release of Open edX.
You can view the theme in action at http://demo.openedx.overhang.io.
Indigo was specially developed to be used with Tutor (at least v12.0.0). If you have not installed Open edX with Tutor, then installation instructions will vary.
Clone the theme repository:
git clone https://github.com/overhangio/indigo
Render your theme:
tutor config render --extra-config ./indigo/config.yml ./indigo/theme "$(tutor config printroot)/env/build/openedx/themes/indigo"
Rebuild the Openedx docker image:
tutor images build openedx
Restart your platform:
tutor local start -d
You will then have to enable the "indigo" theme, as per the Tutor documentation:
tutor local settheme indigo $(tutor config printvalue LMS_HOST) $(tutor config printvalue CMS_HOST)
To upgrade the Indigo theme from a previous version, simply pull the changes from the git repository:
cd indigo/ git pull
Then run the commands above starting from tutor config render...
.
A few settings in the theme can be easily customised: this includes the theme primary color, landing page tagline, footer legal links. Theme settings are defined in the config.yml file at the root of the repository. You can override all or part of those settings by creating you own config-custom.yml
file. Then, render the theme with:
tutor config render \ --extra-config ./indigo/config.yml \ --extra-config ./indigo/config-custom.yml \ ./indigo/theme "$(tutor config printroot)/env/build/openedx/themes/indigo"
The theme images are stored in indigo/theme/lms/static/images for the LMS, and in indigo/theme/cms/static/images for the CMS. To use custom images in your theme, just replace the files stored in these folders with your own prior to running tutor config render
.
By default, the /about
and /contact
pages contain a simple line of text: "This page left intentionally blank. Feel free to add your own content". This is of course unusable in production. In the following, we detail how to override just any of the static templates used in Open edX.
The static templates used by Open edX to render those pages are all stored in the edx-platform/lms/templates/static_templates folder. To override those templates, you should add your own in the following folder:
ls "$(tutor config printroot)/env/build/openedx/themes/indigo/lms/templates/static_templates"
For instance, edit the "donate.html" file in this directory. We can derive the content of this file from the contents of the donate.html static template in edx-platform:
<%page expression_filter="h"/> <%! from django.utils.translation import ugettext as _ %> <%inherit file="../main.html" /> <%block name="pagetitle">${_("Donate")}</%block> <main id="main" aria-label="Content" tabindex="-1"> <section class="container about"> <h1> <%block name="pageheader">${page_header or _("Donate")}</%block> </h1> <p> <%block name="pagecontent">Add a compelling message here, asking for donations.</%block> </p> </section> </main>
This new template will then be used to render the /donate url.
This work is licensed under the terms of the GNU Affero General Public License (AGPL).