OpenStack Dashboard (Horizon)
Go to file
Kahou Lei 222e6d9ae0 Custom Horizon Theme
This patch is to propose the workflow of customizing Horizon theme
easily.

Currently Horizon relies on DjangoScssFilter to preprocess all the scss
files. The css styles such as color and font are mostly controlled by
the variables specified in the the scss files (_variables.scss). In
addition, Horizon mostly reuses bootstrap sass variables to define the
styles.

We leverage the current idea by injecting another level of variables to
overwrite the current bootstrap/horizon variables such that developer
can swap the theme easily.

This patch includes several areas of code changes:

1. Introduce another static file subdirectory for developer to store
   custom themes.
2. Add an additional configuration in the settings.py for developer to
   load the theme to use.
3. Add an example new custom theme.
4. Refactor the current Horizon sass files such that they don't hardcode
   the style but are controlled by the variables instead.

Implements: blueprint horizon-themes

Change-Id: Id915b95b66d9aba97cdb41cc100bf7dc1d75afcd
Co-Authored-By: Alan Fung <wingfung@cisco.com>
Co-Authored-By: Kahou Lei <kahou82@gmail.com>
Co-Authored-By: David Lyle <dklyle0@gmail.com>
2015-03-19 22:23:21 +00:00
.tx Update .tx/config with type of files 2014-03-21 15:30:03 +01:00
doc Custom Horizon Theme 2015-03-19 22:23:21 +00:00
horizon Merge "Fixed transcluded content not updating in action list" 2015-03-17 21:29:39 +00:00
openstack_dashboard Custom Horizon Theme 2015-03-19 22:23:21 +00:00
tools Adding review clean up script 2015-01-27 08:56:21 -07:00
.gitignore Added a migrate_settings command 2015-02-05 12:24:18 +01:00
.gitreview Add .gitreview and rfc.sh. 2011-10-28 09:50:35 -04:00
.jshintrc Improving jshint 2015-02-13 13:19:56 -08:00
.mailmap Update my mailmap 2013-10-25 14:49:23 +08:00
.pylintrc updating run_tests.sh to mimic other openstack projects, pep8, pylint, coverage 2011-08-31 14:41:36 -07:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 03:30:36 +00:00
HACKING.rst Remove #noqa from django.conf.urls.include 2014-09-29 13:58:39 +04:00
LICENSE Initial commit 2011-01-12 13:43:31 -08:00
Makefile Unifies the project packaging into one set of modules. 2012-02-29 00:20:13 -08:00
manage.py Gate on H102 Apache 2.0 license header not found for pep8 2013-11-19 13:55:04 -05:00
MANIFEST.in Drop NodeJS dependency in favor of pure-python lesscpy 2013-08-16 09:31:08 +02:00
openstack-common.conf Remove unused openstack.common.importutils 2014-10-13 15:15:31 -07:00
README.rst Add install guide for users and clean up README 2014-10-09 03:29:26 +09:00
requirements.txt Updated from global requirements 2015-03-05 04:50:21 +00:00
run_tests.sh Base launch instance wizard 2015-02-19 14:39:52 -08:00
setup.cfg Remove Python 2.6 classifier 2014-11-26 10:14:57 +01:00
setup.py Updated from global requirements 2014-05-01 13:44:26 +00:00
test-requirements.txt Replace unittest2 with testtools 2015-02-20 06:50:41 +08:00
tox.ini Move to hacking 0.10 2015-02-04 20:27:07 -08:00

Horizon (OpenStack Dashboard)

Horizon is a Django-based project aimed at providing a complete OpenStack Dashboard along with an extensible framework for building new dashboards from reusable components. The openstack_dashboard module is a reference implementation of a Django site that uses the horizon app to provide web-based interactions with the various OpenStack projects.

Using Horizon

See doc/source/topics/install.rst about how to install Horizon in your OpenStack setup. It describes the example steps and has pointers for more detailed settings and configurations.

It is also available at http://docs.openstack.org/developer/horizon/topics/install.html.

Getting Started for Developers

doc/source/quickstart.rst or http://docs.openstack.org/developer/horizon/quickstart.html describes how to setup Horizon development environment and start development.

Building Contributor Documentation

This documentation is written by contributors, for contributors.

The source is maintained in the doc/source directory using reStructuredText and built by Sphinx

  • Building Automatically:

    $ ./run_tests.sh --docs
  • Building Manually:

    $ tools/with_venv.sh sphinx-build doc/source doc/build/html

Results are in the doc/build/html directory