foundation.theme

Classes

BaseTheme

Base class for Zurb Foundation based themes. Use this class to

Theme

Zurb Foundation vanilla theme. Use this if you don't want any changes

Module Contents

class foundation.theme.BaseTheme(compress: bool = True)[source]

Bases: onegov.core.theme.Theme

Base class for Zurb Foundation based themes. Use this class to create a theme that customizes Zurb Foundation somehow.

If you don’t want to customize it at all, use Theme.

To customize start like this:

from onegov.foundation import BaseTheme

class MyTheme(BaseTheme):
    name = 'my-theme'
    version = '1.0'

You can then add paths with your own scss files, as well as imports that should be added before the foundation theme, and imports that should be added after the foundation theme.

Finally, options passed to the compile() function take this form:

options = {
    'rowWidth': '1000px',
    'columnGutter': '30px'
}

Those options result in variables added at the very top of the sass source before it is compiled:

@import 'foundation/functions';

$rowWidth: 1000px;
$columnGutter: 30px;

If your variables rely on a certain order you need to pass an ordered dict.

compress = True[source]
property default_options: dict[str, Any][source]

Default options used when compiling the theme.

property pre_imports: list[str][source]

Imports added before the foundation import. The imports must be found in one of the paths (see extra_search_paths).

The form of a single import is ‘example’ (which would search for files named ‘example.scss’)

property foundation_components: Sequence[str][source]

All used foundation components.

property imports: Iterator[str][source]

All imports, including the foundation ones. Override with care.

property post_imports: list[str][source]

Imports added after the foundation import. The imports must be found in one of the paths (see extra_search_paths).

The form of a single import is ‘example’ (which would search for files named ‘example.scss’)

property extra_search_paths: list[str][source]

A list of absolute search paths added before the actual foundation search path.

property foundation_path: str[source]

The search path for the foundation files included in this module.

compile(options: Mapping[str, Any] | None = None) str[source]

Compiles the theme with the given options.

class foundation.theme.Theme(compress: bool = True)[source]

Bases: BaseTheme

Zurb Foundation vanilla theme. Use this if you don’t want any changes to zurb foundation, except for setting supported variables.

Do not use this class as a base for your own theme!

Example:

from onegov.core import Framework
from onegov.foundation import Theme

class App(Framework):
    theme_options = {
        'rowWidth': '1200px'
    }

@App.setting(section='core', name='theme')
def get_theme():
    return Theme()
name = 'zurb.foundation'[source]

The name of the theme, must be unique.