0.1.8 • Published 3 years ago

respec-themeable v0.1.8

Weekly downloads
15
License
MIT
Repository
github
Last release
3 years ago

respec-themeable

respec-themeable is a JS library that makes it easier to customize ReSpec for writing technical specifications. ReSpec developers are done a good job but there are some minor issues when you try to use it outside of W3C context. respec-themeable provides workarounds for these problems.

Features

  • set background image text (left side bar) based on specStatus
  • customizable publisher name (instead of the hardwired W3C)
  • hide hardwired documentation W3C copyright texts
  • set defaults for some respecConfig properties
  • set logo from <link rel="icon" sizes="any" href="..."> element
  • make main colors customizable via CSS variables

Demo

You can view this README file formatted with ReSpec at: https://respec-themeable.github.io

Installing

Add the following script tag after your respecConfig declaration script tag:

<script src="https://unpkg.com/respec-themeable" class="remove"></script>

Configuration

publisher

By default ReSpec uses W3C as an implicit publisher (ie: in background image text). respec-themeable accepts publisher from publisher configuration property.

var respecConfig = {
    publisher: "My Company"
}

When no publisher property is set, respec-themeable try to find company in the properties of authors and editors otherwise it falls back to shortName configuration property value.

noPackage

If the HTML document has web manifest link, respec-themeable will use it as source of some default respecConfig properties. Otherwise respec-themeable tries to use the file package.json relative to the HTML document. You can disable package.json usage by setting noPackage to true.

var respecConfig = {
    noPackage: true
}

logo

If the HTML document has icon link with sizes="any" attribute and there is no logo in respecConfig then the href from icon link will be used as logo src.

    <link rel="icon" sizes="any" href="logo.svg"/>
You can use data URL in the link's href attribute.

subtitle

If there is no subtitle in respecConfig then description property from manifest or package.json will be used as subtitle.

title

If there is no <title> tag in the HTML document then name property from manifest or package.json will be used as title.

shortName

If there is no shortName in respecConfig then name property from manifest or package.json will be used as shortName.

--theme-color

The main theme color can be set using --theme-color CSS variable.

:root {
    --theme-color: red;
}

--accent-color

The accent color can be set using --accent-color CSS variable.

:root {
    --accent-color: green;
}

version

If there is a version property in manifest or package.json then it will be displayed under the subtitle.

bugs

If there is a bugs property in manifest or package.json then it will be set with label Issues in the otherLinks configuration property.

repository

If there is a repisotroy.url property in manifest or package.json then it will be set with label Repository in the otherLinks configuration property.

data-format

You can use nunjucks, handlebars or mustache in data-format property (with data-include) for template processing external markdown files. Don't forget to provide script tag for selected template engine.

License

This project is licensed under the MIT License. See the LICENSE for details.

0.1.8

3 years ago

0.1.7

3 years ago

0.1.4

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.2

3 years ago

0.1.3

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago