jekyll-theme-bas-style-kit 0.2.3 → 0.3.0.pre.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +41 -0
  3. data/LICENSE.md +4 -3
  4. data/README.md +170 -615
  5. data/_config.yml +61 -20
  6. data/_data/bas-style-kit/bsk-css.yml +5 -0
  7. data/_data/bas-style-kit/bsk-js.yml +13 -0
  8. data/_data/bas-style-kit/bsk-vars.yml +3 -0
  9. data/_data/menus.yml +19 -0
  10. data/_includes/bas-style-kit/body.html +3 -0
  11. data/_includes/bas-style-kit/bsk-body--analytics-script.html +9 -0
  12. data/_includes/bas-style-kit/bsk-body--back-to-top.html +2 -0
  13. data/_includes/bas-style-kit/bsk-body--core-scripts.html +8 -0
  14. data/_includes/bas-style-kit/bsk-body--standard-footer.html +16 -0
  15. data/_includes/bas-style-kit/bsk-body--standard-header.html +17 -0
  16. data/_includes/bas-style-kit/bsk-body--standard.html +15 -0
  17. data/_includes/bas-style-kit/bsk-body.html +9 -0
  18. data/_includes/bas-style-kit/bsk-footer--contents.html +0 -0
  19. data/_includes/bas-style-kit/bsk-footer--legal-policies.html +8 -0
  20. data/_includes/bas-style-kit/bsk-footer--ogl.html +9 -0
  21. data/_includes/bas-style-kit/bsk-head--core-meta.html +4 -0
  22. data/_includes/bas-style-kit/bsk-head--core-styles.html +6 -0
  23. data/_includes/bas-style-kit/bsk-head--favicon.html +2 -0
  24. data/_includes/bas-style-kit/bsk-head--seo-meta.html +4 -0
  25. data/_includes/bas-style-kit/bsk-head.html +6 -0
  26. data/_includes/bas-style-kit/bsk-header--cookie-notice.html +11 -0
  27. data/_includes/bas-style-kit/bsk-header--development-phase.html +12 -0
  28. data/_includes/bas-style-kit/bsk-header--site-navigation.html +6 -0
  29. data/_includes/bas-style-kit/bsk-nav--collapse.html +4 -0
  30. data/_includes/bas-style-kit/bsk-nav--header.html +4 -0
  31. data/_includes/bas-style-kit/bsk-nav-collapse--primary-navigation.html +32 -0
  32. data/_includes/bas-style-kit/bsk-nav-collapse--secondary-navigation.html +20 -0
  33. data/_includes/bas-style-kit/bsk-nav-header--brand.html +8 -0
  34. data/_includes/bas-style-kit/bsk-nav-header--collapse-trigger.html +6 -0
  35. data/_includes/bas-style-kit/head.html +1 -0
  36. data/_layouts/bas-style-kit/blank.html +4 -0
  37. data/_layouts/bas-style-kit/bsk--base.html +8 -0
  38. data/_layouts/bas-style-kit/bsk--standard.html +8 -0
  39. data/_layouts/bas-style-kit/html.html +8 -0
  40. data/screenshot.png +0 -0
  41. metadata +101 -34
  42. data/LICENSE-MIT.md +0 -21
  43. data/_data/bsk_jekyll_js.json +0 -22
  44. data/_data/bsk_jekyll_vars.json +0 -4
  45. data/_includes/layout/cookie-banner.html +0 -7
  46. data/_includes/layout/phase-banner.html +0 -15
  47. data/_includes/layout/site-footer.html +0 -26
  48. data/_includes/layout/site-navigation.html +0 -77
  49. data/_includes/snippets/back-to-top.html +0 -1
  50. data/_includes/snippets/body-js.html +0 -12
  51. data/_includes/snippets/google-analytics.html +0 -12
  52. data/_includes/snippets/head.html +0 -29
  53. data/_includes/snippets/is-something-wrong.html +0 -1
  54. data/_layouts/blank.html +0 -1
  55. data/_layouts/default.html +0 -20
  56. data/_layouts/html.html +0 -12
  57. data/assets/bsk-jekyll/css/jekyll-theme-bas-style-kit.scss +0 -75
  58. data/assets/bsk-jekyll/img/apple-touch-icon.png +0 -0
  59. data/assets/bsk-jekyll/js/cookie-banner.js +0 -32
  60. data/assets/css/main.scss +0 -7
  61. data/assets/js/page-js-test.js +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: a2f2c85c81743f860da21189915fc3445913fef5
4
- data.tar.gz: 0e4c8b3a3c54c9de7fd398ddd2d52343b61cf17b
2
+ SHA256:
3
+ metadata.gz: df59f75fdc4991621b5ff5f537da27484f945f2a9d35a19483e1bc8a406fc8c9
4
+ data.tar.gz: b26da147481d36eeeb7349f7319ab151029caee65879cf1a8cf8fbce9b384018
5
5
  SHA512:
6
- metadata.gz: 13d28f56684c9102f23257c6baa3401ca58c1eadb538f20beb233675134fbddfca5d93a29efc0ad6d9235b94b58037c56dd6a56214745fe72f458955386aa57d
7
- data.tar.gz: ae23be77c6ea67ae92dc3aa48ea56ba0cda7e7500525bf08e067db55215edf7b823ef5083a1ba0d891670d8f7f49454aa80440ef95842ccc7d6a9f77b526ded4
6
+ metadata.gz: 134beac42b7e144a5e57653cd2eea36022b076df955a197dd45efb4b3a3e3984a9b8a9db3e91124f198672754c1b2436eab7641954ba7dfd18c4d0c0331861e2
7
+ data.tar.gz: 281da51a5225487884d051ee8620e11457cd8dbf1e09875409fca2cc85c37454099f2e9d0ec8bbb9a26a013f6f2efde8f0abca48366dac401847a849c541735d
data/CHANGELOG.md CHANGED
@@ -5,6 +5,47 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html
5
5
 
6
6
  ## [Unreleased][unreleased]
7
7
 
8
+ ### Changed [BREAKING!]
9
+
10
+ * Re-licensing project under the Open Government License
11
+ * Upgrading to Jekyll 3.7.2
12
+ * Upgrading to Style Kit 0.3.0
13
+ * Layouts, includes and data files are now in a `bas-style-kit` namespace
14
+ * Generic *blank* and *HTML* layouts and associated includes have been redeveloped
15
+ * The Style Kit layout has been split into *base* and *standard* layouts
16
+ * Style Kit includes have been redeveloped and renamed
17
+ * All data files now use Yaml formatting to support comments
18
+
19
+ ### Removed [BREAKING!]
20
+
21
+ * *default* layout, switch to either *bsk--base* or *bsk--standard* as needed
22
+ * apple touch icons - although these never worked correctly
23
+ * 'back to top' and 'is something wrong' links - these will be re-added when supported in the Style Kit
24
+ * HTML5 shim and Respond.js as the Style Kit no longer supports IE 10 or below
25
+ * All local assets as they are either now part of the Style Kit, or will be re-added when supported in the Style Kit
26
+
27
+ ### Added
28
+
29
+ * *bsk--base* layout which implements the Style Kit, but in a very generic way
30
+ * *bsk--standard* layout which implements the Style Kit with typical elements such as a header and footer
31
+ * CSS files are now loaded from a data file, as with JavaScript
32
+ * CSS and JavaScript files can and do use Sub-Resource Integrity (SRI) for better security
33
+ * Jekyll Menus plugin
34
+ * Jekyll Tidy plugin
35
+
36
+ ### Changed
37
+
38
+ * Upgrading other Gem dependencies to latest versions
39
+ * Upgrading application Docker image to use latest BAS Jekyll image
40
+ * The *blank* layout is now based on Jekyll's built in *None* layout
41
+ * Improving Dockerfile
42
+ * Tidying up README
43
+ * Tidying up Dockerfile and Docker Compose
44
+ * Gemfile lock file is now tracked
45
+ * Updated release procedures
46
+
47
+ ## 0.2.3 - 11/04/2017
48
+
8
49
  ### Added
9
50
 
10
51
  * Note in release notes to ensure the Jekyll variable is updated to reflect the changed version
data/LICENSE.md CHANGED
@@ -1,7 +1,8 @@
1
1
  # License
2
2
 
3
- Copyright 2017 NERC BAS.
3
+ © Natural Environment Research Council (NERC), 2017-2018, British Antarctic Survey.
4
4
 
5
- Unless stated otherwise all code is licensed under the MIT license.
5
+ You may use and re-use this software and associated documentation files free of charge in any format or medium, under
6
+ the terms of the Open Government Licence v3.0.
6
7
 
7
- Copies of this license are included within this project.
8
+ You may obtain a copy of the Open Government Licence at http://www.nationalarchives.gov.uk/doc/open-government-licence/
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
- # jekyll-theme-bas-style-kit
1
+ # BAS Style Kit Jekyll Theme
2
2
 
3
- Jekyll theme implementation of the [BAS Style Kit](https://stlye-kit.web.bas.ac.uk).
3
+ Jekyll theme for the [BAS Style Kit](https://stlye-kit.web.bas.ac.uk).
4
4
 
5
5
  ![Screenshot of theme](screenshot.png)
6
6
 
@@ -24,703 +24,221 @@ Or install it yourself as:
24
24
  $ gem install jekyll-theme-bas-style-kit
25
25
  ```
26
26
 
27
- ## Usage
28
-
29
- Refer to [Jekyll's theme documentation](https://jekyllrb.com/docs/themes/) for general information.
30
-
31
- ### Selecting the BAS Style Kit Jekyll theme
32
-
33
- Add these lines to your Jekyll site's `_config.yml`:
27
+ Add these lines to your `_config.yml` to use the Style Kit theme:
34
28
 
35
29
  ```yaml
36
30
  theme: jekyll-theme-bas-style-kit
37
31
 
38
- gems:
39
- - jekyll-data
32
+ # If your site uses additional plugins, append these items
33
+ plugins:
34
+ - jekyll-menus
35
+ - jekyll-tidy
40
36
  ```
41
37
 
42
- **Note:** This theme sets additional config options, see the *Config options* section for more information.
43
-
44
- **Note:** If you have loaded any Jekyll plugins using the `gems` option, also include these plugins:
38
+ ## Usage
45
39
 
46
- ```yaml
47
- gems:
48
- - jekyll-data
49
- ```
40
+ Refer to [Jekyll's theme documentation](https://jekyllrb.com/docs/themes/) for general information.
50
41
 
51
42
  ### Layouts
52
43
 
53
- This theme provides three layouts:
54
-
55
- * blank
56
- * HTML
57
- * default
58
-
59
- #### Blank
60
-
61
- Returns content without modification, and is used as the fundamental layout, from which all other layouts derive.
44
+ This theme defines two types of layout:
62
45
 
63
- This layout is useful if you need to output data in a format other than HTML (such as JSON or XML).
46
+ * *generic* - non Style Kit specific intended for atypical content
47
+ * *non-generic* - implement the Style Kit either broadly or in more opinionated forms
64
48
 
65
- **Note:** You will need to set a suitable content-type header if returning non-HTML content.
49
+ All layouts use the `.html` extension. I.e. the layout `blank` should be referenced as `blank.html`.
66
50
 
67
- #### HTML
51
+ All layouts are namespaced using a `bas-style-kit/` directory - i.e. the layout `blank.html` should be referenced as
52
+ `bas-style-kit/blank.html`.
68
53
 
69
- Returns content in the `<body>` tag of a basic HTML page. Includes `<head>` elements returned by the *head* include.
54
+ #### Generic layouts
70
55
 
71
- **Note:** This layout includes the BAS Style Kit CSS styles, but not Bootstrap JavaScript components (see the
72
- *default* layout for this).
56
+ * [`blank`](/docs/layout/blank.md)
57
+ * [`html`](/docs/layout/html.md)
73
58
 
74
- **Note:** This layout does not include information about the use of Cookies, which **MUST** be displayed if used on a
75
- website. You will need to provide a suitable notice to users if this applies. See the *Cookie notice* section for more
76
- information.
59
+ #### Style Kit specific layouts
77
60
 
78
- This layout is useful if you need to show content in isolation, or using a specific page style, such as a page designed
79
- for printing, or for displaying full screen.
80
-
81
- #### Default
82
-
83
- Returns content in a [container](https://style-kit.web.bas.ac.uk/core/layout/#fixed-width-container) with a number of
84
- additional components using includes:
85
-
86
- | Component | Include File | Description | Notes |
87
- | ------------------------ | -------------------------------- | -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
88
- | Cookie notice banner | `layout/cookie-banner.html` | Dismissible cookie notice | See the *Cookie notice* section for more information |
89
- | Site navigation | `layout/site-navigation.html` | [Navbar](https://style-kit.web.bas.ac.uk/components/navbar/) containing site navigation | See the *Site navigation* section for more information |
90
- | Development phase banner | `layout/phase-banner.html` | Contextual warning for current development phase | See the *Development phase* section for more information |
91
- | Site footer | `layout/site-footer.html` | Basic [footer](https://style-kit.web.bas.ac.uk/components/footer/) | Designed to be overiden, see the *Legal policies* section for information it must contain |
92
- | JavaScript | `snippets/body-js.html` | Scripts required for jQuery, Bootstrap's JavaScript components, and the cookie notice banner | - |
93
- | Analytics | `snippets/google-analytics.html` | Scripts required for Google Analytics | Not included if `ga_property` config option is not set |
61
+ * [`bsk--base`](/docs/layout/bsk--base.md)
62
+ * [`bsk--base`](/docs/layout/bsk--standard.md)
94
63
 
95
64
  ### Includes
96
65
 
97
- Includes for this theme are split into *layout* and *snippets*. Layouts are used as part of the visual structure of the
98
- site (such as the main navigation). Snippets are more general and used in various places (including in other includes).
99
-
100
- #### Cookie Banner
101
-
102
- **Type:** Layout
103
-
104
- **File:** `layout/cookie-banner.html`
105
-
106
- Presents a full-width banner, pinned to the top of the page, with a statement that the site uses cookies, and where a
107
- user can find out more information.
108
-
109
- This banner can be dismissed by the user, which will hide the message for 30 days using (ironically) a cookie.
110
-
111
- See the *Cookie notice* section for more information.
112
-
113
- **Note:** This include depends on the `snippets/body-js.html` include.
114
-
115
- #### Phase Banner
116
-
117
- **Type:** Layout
118
-
119
- **File:** `layout/phase-banner.html`
120
-
121
- Presents a full-width banner, pinned after the site navigation, with a statement describing the status of the website.
122
- For example, if a website is in the *beta* phase of development, a notice advising users that the website is still
123
- under development will be shown, with an invitation for them to submit feedback.
124
-
125
- If a website is in the *live* phase of development, no banner is shown.
126
-
127
- See the *Development phase notice* and *Website feedback* sections for more information.
128
-
129
- **Note:** The message shown for each development phase cannot currently be changed.
130
-
131
- #### Site footer
132
-
133
- **Type:** Layout
134
-
135
- **File:** `layout/site-footer.html`
136
-
137
- Provides a basic [footer](https://style-kit.web.bas.ac.uk/components/footer/) designed to meet requirements for:
138
-
139
- * linking to the top of the current page and to give feedback
140
- * explaining the license for content within the website
141
- * displaying links to legal polices
142
-
143
- As footers will vary greatly between websites, this footer is deliberately basic, and limited, in its structure. It is
144
- expected this include will be overiden by each website with its own specific footer.
145
-
146
- See the *Legal policies* and *Website feedback* sections for information on what a footer **MUST** contain.
147
-
148
- #### Site navigation
149
-
150
- **Type:** Layout
151
-
152
- **File:** `layout/site-navigation.html`
153
-
154
- Provides a default implementation of a [navbar](https://style-kit.web.bas.ac.uk/components/navbar/) designed to meet
155
- the needs of most websites. The navbar consists of:
156
-
157
- * the site title
158
- * a toggle to show or hide navigation items on smaller devices (such as phones)
159
- * a set of navigation items (see the *Site navigation* section for how to set these)
160
- * a drop-down of other relevant BAS websites, including the BAS public website and data catalogue
161
- * a link to give feedback about the website
162
-
163
- See the *Site navigation* and *Website feedback* sections for more information.
164
-
165
- #### Back to top
166
-
167
- **Type:** Snippet
168
-
169
- **File:** `snippets/back-to-top.html`
170
-
171
- Provides a link to the `#site-top` anchor, positioned at the top of each page. It is shown in the default footer
172
- include.
173
-
174
- **Note:** This snippet depends on the *default* layout being used, or a layout with a `#site-top` element defined.
175
-
176
- #### Body JS
177
-
178
- **Type:** Snippet
66
+ Refer to [Jekyll's documentation](https://jekyllrb.com/docs/include/) for general information.
179
67
 
180
- **File:** `snippets/body-js.html`
68
+ This theme uses includes extensively to give fine grained control over how elements such as the navbar behave, including
69
+ both their content and structure.
181
70
 
182
- Inserts `<script>` tags to reference JavaScript files. Entries defined in the `bsk_jekyll_js.json` data file will be
183
- output first, followed by per-page files using the `body_js_files` front-matter option.
71
+ Includes are often used conditionally using a related configuration option, to be disabled more easily.
184
72
 
185
- See the *JavaScript* section for more information.
73
+ All includes use the `.html` extension. I.e. the include `body` should be referenced as `body.html`.
186
74
 
187
- **Note:** This snippet is designed for loading JavaScript *after* the main page content. If a script needs to be run
188
- before this content, you will need to do this manually.
75
+ All includes are namespaced using a `bas-style-kit/` directory - i.e. the include `body.html` should be referenced as
76
+ `bas-style-kit/body.html`.
189
77
 
190
- #### Google Analytics
78
+ #### Generic includes
191
79
 
192
- **Type:** Snippet
80
+ * [`head`](/docs/include/head.md)
81
+ * [`body`](/docs/include/body.md)
193
82
 
194
- **File:** `snippets/google-analytics.html`
83
+ #### Style Kit specific includes
195
84
 
196
- If the `ga_property` config option is set, include the Google Analytics tracking script, and configures it for the
197
- relevant Google Analytics property.
85
+ * [`bsk-head`](/docs/include/bsk-head.md)
86
+ * [`bsk-body`](/docs/include/bsk-body.md)
87
+ * [`bsk-body--standard`](/docs/include/bsk-body--standard.md)
198
88
 
199
- The tracking script is configured to anonymise the IP address of visitors client side, meaning we it is never visible
200
- to the Google Analytics service.
89
+ HTML Head includes:
201
90
 
202
- #### Head
91
+ * [`bsk-head--core-meta`](/docs/include/bsk-head--core-meta.md)
92
+ * [`bsk-head--seo-meta`](/docs/include/bsk-head--seo-meta.md)
93
+ * [`bsk-head--core-styles`](/docs/include/bsk-head--core-styles.md)
94
+ * [`bsk-head--favicon`](/docs/include/bsk-head--favicon.md)
203
95
 
204
- **Type:** Snippet
96
+ HTML Body includes:
205
97
 
206
- **File:** `snippets/head.html`
98
+ * [`bsk-body--core-scripts`](/docs/include/bsk-body--core-scripts.md)
99
+ * [`bsk-body--analytics-script`](/docs/include/bsk-body--analytics-script.md)
100
+ * [`bsk-body--back-to-top`](/docs/include/bsk-body--back-to-top.md)
101
+ * [`bsk-body--standard-header`](/docs/include/bsk-body--standard-header.md)
102
+ * [`bsk-body--standard-footer`](/docs/include/bsk-body--standard-footer.md)
207
103
 
208
- Represents the `<head>` tag of a HTML page with these elements:
104
+ Footer includes:
209
105
 
210
- * HTML doc-type
211
- * UTF-8 character encoding scheme
212
- * directive for Internet Explorer to use the latest rendering engine available (ignored by Microsoft Edge)
213
- * directive for devices to set the viewport width to the width of the current device in CSS pixels at a scale of 100%,
214
- and an initial scale of 100%
215
- * the title directive, containing a page title (if set) followed by the site `title` config option
216
- * the description directive, containing the site `description` config option
217
- * the canonical directive, used for constructing internal URLs and by search engines for deduplicating content where it
218
- is available from multiple locations. Uses the `baseurl` config option and expresses a preference for URLs without a
219
- `.html` extension if used.
220
- * links to the image used by mobile devices if this website is pinned to a home-screen
221
- * references to the BAS Style Kit, Jekyll theme, and website specific CSS
222
- * workarounds for older versions of Internet Explorer to not break with the use of modern HTML features
106
+ * [`bsk-footer--contents`](/docs/include/bsk-footer--contents.md)
107
+ * [`bsk-footer--legal-policies`](/docs/include/bsk-footer--legal-policies.md)
108
+ * [`bsk-footer--ogl`](/docs/include/bsk-footer--ogl.md)
223
109
 
224
- #### Is something wrong
110
+ Header includes:
225
111
 
226
- **Type:** Snippet
112
+ * [`bsk-header--cookie-notice`](/docs/include/bsk-header--cookie-notice.md)
113
+ * [`bsk-header--site-navigation`](/docs/include/bsk-header--site-navigation.md)
114
+ * [`bsk-header--development-phase`](/docs/include/bsk-header--development-phase.md)
227
115
 
228
- **File:** `snippets/is-something-wrong.html`
116
+ Navigation includes:
229
117
 
230
- Displays a link to give feedback about the current website. It is shown in the default footer include.
118
+ * [`bsk-nav--header`](/docs/include/bsk-nav--header.md)
119
+ * [`bsk-nav--collapse`](/docs/include/bsk-nav--collapse.md)
120
+ * [`bsk-nav-header--collapse-trigger`](/docs/include/bsk-nav-header--collapse-trigger.md)
121
+ * [`bsk-nav-header--brand`](/docs/include/bsk-nav-header--brand.md)
122
+ * [`bsk-nav-collapse--primary-navigation`](/docs/include/bsk-nav-collapse--primary-navigation.md)
123
+ * [`bsk-nav-collapse--secondary-navigation`](/docs/include/bsk-nav-collapse--secondary-navigation.md)
231
124
 
232
- See the *Website feedback* section for more information.
125
+ ### Data files
233
126
 
234
- ### Assets
127
+ Refer to [Jekyll's documentation](https://jekyllrb.com/docs/datafiles/) for general information.
235
128
 
236
- All assets in this theme are scoped to the `bsk-jekyll` directory.
129
+ This theme uses data files to define CSS and JavaScript resources to load and for some variables about the theme.
237
130
 
238
- **Note:** In the longer term, all of these assets are due to be hosted within the BAS CDN, rather than within each
239
- website that uses this theme. This makes such sites more consistent, and gives performance benefits using browser
240
- caching.
131
+ All data files use the `.yml` (Yaml) extension and are namespaced using a `bas-style-kit/` directory - i.e. a data
132
+ element `foo` in the data file `bsk-vars.yml` is available as `site.data.bas-style-kit.bsk-vars.foo`.
241
133
 
242
- **Note:** To include JavaScript files, after the page has loaded, see the *JavaScript* section.
134
+ #### Style Kit specific data files
243
135
 
244
- #### `bsk-jekyll/bas-style-kit-jekyll-theme.scss`
245
-
246
- CSS styles specific to this theme, designed to be the same for each site using this theme.
247
-
248
- **Note:** This file **SHOULD NOT** be overiden, use `css/main.scss` instead.
249
-
250
- **Note:** This file currently contains some styles that are waiting to be merged with the upstream Style Kit project.
251
-
252
- #### `bsk-jekyll/img/apple-touch-icon.png`
253
-
254
- Image used if this website is pinned to the start screen of a smartphone.
255
-
256
- **Note:** The name of this file is conventional, and **SHOULD NOT** be changed. It **MAY** be overiden if needed.
257
-
258
- #### `bsk-jekyll/js/cookie-banner.js`
259
-
260
- Simple script to set a cookie when the user dismisses the cookie banner. If this cookie is present the banner will not
261
- be shown on subsequent pages for a period of 30 days. After this time the banner will be shown again, until dismissed
262
- again for another 30 days.
263
-
264
- See the *JavaScript* section for more information on how this file is loaded.
265
-
266
- #### `css/main.scss`
267
-
268
- CSS styles specific to each website. This file is empty by default and is designed to be overiden by each website.
269
-
270
- **Note:** This file is included in the *head* include, and so **SHOULD NOT** be removed to avoid 404 errors. It **MAY**
271
- be left empty if not needed.
272
-
273
- **Note:** This file will not be moved to the BAS CDN.
274
-
275
- ### Config options
276
-
277
- There are a number of general config options which **SHOULD** be set for this theme:
278
-
279
- | Option | Type | Description | Default Value | Example Value | Notes |
280
- | ------------- | ------ | -------------------------- | ------------- | --------------------------------------------------- | ------------------------------------------ |
281
- | `title` | String | Name of the website | *None* | "Example Website" | Also used for the title HTML property |
282
- | `description` | String | Description of the website | *None* | "Example website for the BAS Style Kit Jekyll Theme | Used in the description meta HTTP property |
283
-
284
- There are a number of theme specific config options, some of which **SHOULD** be set:
285
-
286
- | Option | Type | Description | Default Value | Example Value | Notes |
287
- | ------------------- | ------ | -------------------------------------------------------------- | ------------- | ---------------------- | --------------------------------------------------------------------------- |
288
- | `phase` | String | Current development phase of the website | `live` | `alpha` | See the *Development phase notice* section for more information |
289
- | `copyright_href` | String | URL to copyright statement of the website | *None* | `/copyright-statement` | See the *Legal policies* section for more information |
290
- | `privacy_href` | String | URL to privacy policy of the website | *None* | `/privacy-policy` | See the *Legal policies* section for more information |
291
- | `cookies_href` | String | URL to cookie policy of the website | *None* | `/cookie-policy` | See the *Legal policies* section for more information |
292
- | `feedback_href` | String | URL to feedback page of the website | *None* | `/feedbac` | See the *Website feedback* section for more information |
293
- | `ga_property` | String | Google Analytics property of the website | *None* | `UA-64130716-XX` | Values should start with `UA-64130716-` for BAS Google Analytics properties |
294
- | `nav_items` | List | Items in the website to include in the site navigation | *None* | *List of items* | See the *Site navigation* section for more information |
295
- | `nav_related_sites` | List | Items for other BAS websites to include in the site navigation | *List* | *List of items* | See the *Site navigation* section for more information |
296
-
297
- There are some additional general config options which are set by this theme, but can be overriden if needed:
298
-
299
- | Option | Type | Description | Default Value | Example Value | Notes |
300
- | ----------- | ------ | -------------------------------------------------------------------- | ------------- | --------------- | ------------------------------------------------------------------------ |
301
- | `gems` | List | List of Jekyll plugins to include, set to dependencies of this theme | *List* | *List of items* | If this option is set within a website, ensure these values are included |
302
- | `permalink` | String | Removes the `.html` file extension from URLs generated by Jekyll | `pretty` | `pretty` | Other options are available, see the Jekyll documentation |
303
-
304
- ### Theme variables
305
-
306
- The `bsk_jekyll_vars.json` Jekyll data file contains variables which can be used by websites using this theme.
307
-
308
- | Variable | Type | Description | Notes |
309
- | --------------- | ------ | --------------------------------------------------- | ----- |
310
- | `theme_version` | String | Version of the BAS Style Kit Jekyll Theme | - |
311
- | `bsk_version` | String | Version of the BAS Style Kit used within this theme | - |
312
-
313
- ### JavaScript
314
-
315
- JavaScript files can be loaded after the main site content in two ways:
316
-
317
- 1. Using the `bsk_jekyll_js.json` Jekyll data file - for files that should be loaded in all pages
318
- 2. Using the `body_js_files` front-matter option - for files that should only be loaded for specific pages
319
-
320
- Both methods are added to the page using the *Body JS* include, using the following structure for each script:
321
-
322
- | Property | Type | Required | Description | Example Value | Notes |
323
- | --------- | ------ | -------- | ------------------------------------------------- | ---------------------------------------- | ------------------------------------------------ |
324
- | `comment` | String | Yes | Used as a HTML comment added before each script | `Code for managing cookie banner` | - |
325
- | `href` | String | Yes | Defines the location of the script to be loaded | `/assets/bsk-jekyll/js/cookie-banner.js` | Depends on the type property value |
326
- | `type` | String | Yes | Controls how this item is processed and displayed | `local` | See below for valid values |
327
-
328
- Supported script types are:
329
-
330
- * `local`
331
- * `remote`
332
-
333
- **Note:** See the `bsk_jekyll_js.json` Jekyll data file for scripts which are included in all pages by default.
334
-
335
- **Example**
336
-
337
- For scripts referenced in the `bsk_jekyll_js.json` Jekyll data file:
338
-
339
- ```json
340
- {
341
- {
342
- "comment": "Cookie library used to persistently hide the cookie banner",
343
- "href": "https://cdn.web.bas.ac.uk/js-libs/js.cookie-2.1.3.min.js",
344
- "type": "remote"
345
- },
346
- {
347
- "comment": "Code for managing cookie banner",
348
- "href": "/assets/bsk-jekyll/js/cookie-banner.js",
349
- "type": "local"
350
- }
351
- ]
352
- ```
353
-
354
- For scripts referenced in the `body_js_files` front-matter option:
355
-
356
- ```md
357
- ---
358
- title: A page
359
- body_js_files:
360
- - comment: Cookie library used to persistently hide the cookie banner
361
- href: https://cdn.web.bas.ac.uk/js-libs/js.cookie-2.1.3.min.js
362
- type: remote
363
- - comment: Code for managing cookie banner
364
- href: /assets/bsk-jekyll/js/cookie-banner.js
365
- type: local
366
- ---
367
-
368
- # Page content
369
- ...
370
- ```
371
-
372
- #### Remote scripts
373
-
374
- Set the `href` property to the URL of a remote file.
375
-
376
- **Example**
377
-
378
- ```
379
- href: https://cdn.web.bas.ac.uk/js-libs/js.cookie-2.1.3.min.js
380
- ```
381
-
382
- #### Local scripts
383
-
384
- Set the `href` property to a URL relative to the base of the current website.
385
-
386
- **Note:** The base URL of the website will be prepended to the `href` property, if one is defined.
387
-
388
- **Example**
389
-
390
- ```
391
- href: /assets/bsk-jekyll/js/cookie-banner.js
392
- ```
136
+ * [bsk-css](/data-file/bsk-css.md)
137
+ * [bsk-js](/data-file/bsk-js.md)
138
+ * [bsk-vars](/data-file/bsk-vars.md)
393
139
 
394
- ### Site navigation
140
+ ### Variables
395
141
 
396
- Two kinds of navigation item are supported within the site navigation (an instance of the
397
- [navbar](https://style-kit.web.bas.ac.uk/components/navbar/) component):
142
+ Refer to [Jekyll's documentation](https://jekyllrb.com/docs/variables/) for general information.
398
143
 
399
- 1. resources within the current website - shown after the site title
400
- 2. BAS websites relevant to the current website - shown before the feedback item on the navbar's right
144
+ #### Style Kit specific variables
401
145
 
402
- Both kinds of item are displayed using the *Site navigation* include, and set using config options:
146
+ | Variable | Fully Qualified Variable | Purpose | Example | Notes |
147
+ | --------------- | ------------------------------------------------ | ----------------------------------------------- | ------- | ----- |
148
+ | `theme_version` | `site.data.bas-style-kit.bsk_vars.theme_version` | Version of this theme | `0.3.0` | - |
149
+ | `bsk_version` | `site.data.bas-style-kit.bsk_vars.bsk_version` | Version of the Style Kit used within this theme | `0.3.0` | - |
403
150
 
404
- * internal items: `nav_items`
405
- * related items: `nav_related_sites`
151
+ ### Configuration options
406
152
 
407
- #### Internal items
153
+ Refer to [Jekyll's documentation](https://jekyllrb.com/docs/configuration/) for general information.
408
154
 
409
- This theme allows multiple types of item to be used for internal navigation items. Some of these types are generic,
410
- some are included to integrate more easily with Jekyll's conventions and features.
155
+ Configuration options are used extensively throughout this theme. Some variables are used to set properties such as the
156
+ brand text or image in the navbar (attributes), others are used to enable various features (feature flags).
411
157
 
412
- **Properties**
158
+ Configuration options for this theme are namespaced under a `bas_style_kit_jekyll_theme` option - i.e. an option `foo`
159
+ is set as `bas_style_kit_jekyll_theme.foo`.
413
160
 
414
- | Property | Type | Required | Description | Example Value | Notes |
415
- | -------- | ------ | -------- | ------------------------------------------------- | ------------- | ------------------------------------------------ |
416
- | `name` | String | Yes | Used as the link text | `About` | - |
417
- | `type` | String | Yes | Controls how this item is processed and displayed | `single_item` | May require additional properties to be set |
418
-
419
- Supported item types are:
420
-
421
- * `single_item`
422
- * `dropdown_item`
423
-
424
- **Example**
161
+ Configuration options in this documentation use a dot notation to indicate a nested structure - i.e. an option `foo.bar`
162
+ should be set as:
425
163
 
426
164
  ```yml
427
- nav_items:
428
- -
429
- name: About
430
- type: single_item
165
+ foo:
166
+ bar
431
167
  ```
432
168
 
433
- ##### Single item
434
-
435
- The most basic item type, set manually and displayed as a navbar item (link).
436
-
437
- **Additional Properties**
438
-
439
- | Property | Type | Required | Description | Example Value | Notes |
440
- | -------- | ------ | -------- | --------------------------------- | ------------- | ------------------------------------------------ |
441
- | `href` | String | Yes | Used as the link `href` attribute | `/about` | Set the `href` property to `/` for the home page |
442
-
443
- **Note:** The base URL of the website will be prepended to the `href` property, if one is defined.
444
-
445
- **Active item**
446
-
447
- When the current page matches the `href` attribute, the item is made the active navbar item.
448
-
449
- **Example**
169
+ A configuration option `bas_style_kit_jekyll_theme.feature_flags.site.back_to_top_anchor` should be set as:
450
170
 
451
171
  ```yml
452
- nav_items:
453
- -
454
- name: Home
455
- type: single_item
456
- href: /
457
- -
458
- name: About
459
- type: single_item
460
- href: /about
172
+ bas_style_kit_jekyll_theme:
173
+ feature_flags:
174
+ site:
175
+ back_to_top_anchor: '[value]'
461
176
  ```
462
177
 
463
- ##### Dropdown item
464
-
465
- A more complex item type, set manually and displayed as a
466
- [navbar drop-down](https://style-kit.web.bas.ac.uk/components/navbar/#drop-down-menus).
467
-
468
- **Note:** Advanced drop-down features such as dividers and headers are not supported.
469
-
470
- **Additional Properties**
471
-
472
- | Property | Type | Required | Description | Example Value | Notes |
473
- | ------------------ | ------ | -------- | ------------------------------------------ | ------------- | ------------------------------------------------ |
474
- | `actions` | List | Yes | Defines the actions for the drop-down menu | N/A | - |
475
- | `actions.*.name` | String | Yes | Used as the action text | `Downloads` | Example of a single action |
476
- | `actions.*.href` | String | Yes | Used as the action `href` atttibute | `/resources/downloads` | Example of a single action |
477
-
478
- **Note:** The base URL of the website will be prepended to the `action.*.href` property, if one is defined.
479
-
480
- **Active item**
481
-
482
- When the current page matches the `href` attribute of an action in a drop-down item, the drop-down action is made
483
- active, and drop-down menu the active navbar item.
484
-
485
- **Example**
486
-
487
- ```yml
488
- nav_items:
489
- -
490
- name: Resources
491
- type: dropdown_item
492
- actions:
493
- -
494
- name: Downloads
495
- href: /resources/downloads
496
- ```
497
-
498
- #### Related items
499
-
500
- Related items are comparatively  easier to define than internal items, it uses the same structure as the `single_item`
501
- internal item type.
502
-
503
- **Note:** Related items **SHOULD** always include entries for the BAS public website and BAS data catalogue.
504
-
505
- **Note:** Related items **SHOULD NOT** include non-BAS websites, as the drop-down menu title 'Part of the British
506
- Antarctic Survey' implies its contents will be BAS operated websites.
507
-
508
- **Example**
509
-
510
- ```yml
511
- nav_related_sites:
512
- -
513
- name: BAS Home
514
- href: https://www.bas.ac.uk
515
- -
516
- name: BAS Style Kit
517
- href: https://style-kit.bas.ac.uk
518
- -
519
- name: Discover BAS data
520
- href: https://data.bas.ac.uk
521
- ```
522
-
523
- ### Cookie notice
524
-
525
- By law and by policy BAS websites are required to tell end-users whether cookies are used, and if so, where they can
526
- find out more information about these cookies.
527
-
528
- It is assumed all BAS websites will use cookies, not least as all websites are expected to use analytics tracking,
529
- which depends on cookies.
530
-
531
- This theme provides a cookie banner to meet this need. It consists of:
532
-
533
- * the `phase` config option - which defines the URL to a page explaining how cookies are used on this website
534
- * the *Cookie banner* include - which displays a dismissible message and a link to the cookies usage page
535
- * the *Site footer* include - which includes a link to the cookies usage page
536
- * the *Body JS* include - which includes the JavaScript needed to make the cookie banner dismissible
537
-
538
- The `cookies_href` config option **MUST** be set to a location with more information on how the website uses cookies.
539
- See the *Legal policies* section for more information.
540
-
541
- **Note:** This **SHOULD NOT** be the cookie policy used on the BAS public website, as it is not representative of our
542
- other websites.
543
-
544
- ### Development phase notice
545
-
546
- Websites exist at various stages of a development lifecycle - from inception, development, general availability through
547
- to retirement.
548
-
549
- Various points in this lifecycle are relevant to highlight to end-users, to give context and managing expectations.
550
- For example, new websites likely won't perform well, or have missing information.
551
-
552
- The BAS Style Kit, and this theme, support the
553
- [development phases](https://www.gov.uk/service-manual/agile-delivery#phases-of-an-agile-project) defined by the
554
- Government Digital Service (GDS) - these are:
555
-
556
- * Discovery - a stage before any website is built
557
- * Alpha - an early prototyping stage
558
- * Beta - a pre-release stage, things are expected to work correctly but with restrictions in terms of scale,
559
- completeness or performance
560
- * Live - a service in general release - expected to work correctly without restrictions
561
- * Retirement - a service being wound down - expected to work until being shut-down, but no further improvements made
562
-
563
- This theme provides a development phase banner to inform end-users of the current development phase. It consists of:
564
-
565
- * the `phase` config option - which defines current development phase for the website
566
- * the *Phase banner* include - which displays information to end-users
567
-
568
- The `phase` config option **MUST** be set to one of these options:
569
-
570
- * `alpha`
571
- * `beta`
572
- * `live`
573
- * `retired`
574
-
575
- For all phases except live, a banner with a link to give site feedback will be shown. In the live phase no additional
576
- information is shown.
577
-
578
- **Note:** The *discovery* phase is not supported as website prototypes should only be made in the *alpha* stage.
579
-
580
- ### Legal policies
581
-
582
- By law and by policy BAS websites are required to provide end-users with information on various legal policies. Namely:
178
+ #### Style Kit specific configuration options
583
179
 
584
- 1. a copyright statement
585
- 2. a privacy policy
586
- 3. a cookies policy
180
+ * [feature flags](/docs/config/feature-flags.md)
181
+ * [attributes](/docs/config/attributes.md)
587
182
 
588
- Links to these policies are displayed in the *Site footer* include, using config options to set their locations.
183
+ ### Plugins
589
184
 
590
- #### Copyright statement
185
+ This theme depends on these plugins:
591
186
 
592
- The `copyright_href` config option **MUST** be set to a location with more information on how information on this
593
- website is licensed, and how it can be used.
594
-
595
- It **MUST** document, which legal entity owns the content on the website, the license they make it available to
596
- different auidences under, and what these users can and can't do as a result of this license.
597
-
598
- It **MUST** acknowledge other rights holders, and the terms under which they make their information available, if this
599
- applies. This may include information from other parts of BAS or NERC, which are licensed differently.
600
-
601
- The license under which the majority of the website's content is made available **SHOULD** be displayed in the site
602
- footer, to make it easy to find by end-users. The phrase `Except where otherwise stated` can be used where multiple
603
- licenses apply to different types of concept, providing this is suitably explained in the copyright statement, or next
604
- to the relevant content.
605
-
606
- Template policies which can be used as an example/base for such policies are being developed with relevant stake
607
- holders. Until these are ready contact the Web & Applications team for advice on what to put in such polices.
608
-
609
- **Note:** This **SHOULD NOT** be the copyright statement used on the BAS public website, as it is not representative of
610
- our other websites.
611
-
612
- #### Privacy policy
613
-
614
- The `privacy_href` config option **MUST** be set to a location with more information on how user's information is used
615
- by the website.
616
-
617
- It **MUST** document if any personal information is collected from end-users, why it is collected, who will hold it
618
- and process it, how long it will be held for, and how the end-user can access, update or remove this information.
619
-
620
- Template policies which can be used as an example/base for such policies are being developed with relevant stake
621
- holders. Until these are ready contact the Web & Applications team for advice on what to put in such polices.
622
-
623
- **Note:** This **SHOULD NOT** be the privacy policy used on the BAS public website, as it is not representative of our
624
- other websites.
625
-
626
- #### Cookies policy
627
-
628
- The `cookies_href` config option **MUST** be set to a location with more information on how the website uses cookies.
629
-
630
- It should document the cookies used, what they are for and when they are set to expire. It should also provide
631
- information on how users can view and manage cookies used by this website.
632
-
633
- Template policies which can be used as an example/base for such policies are being developed with relevant stake
634
- holders. Until these are ready contact the Web & Applications team for advice on what to put in such polices.
635
-
636
- **Note:** This **SHOULD NOT** be the cookie policy used on the BAS public website, as it is not representative of our
637
- other websites.
638
-
639
- ### Website feedback
640
-
641
- Feedback from end-users is vital to build a website based on their needs, rather than the needs we think they have.
642
-
643
- To this end, an easy to use mechanism for end-users to submit feedback **SHOULD** be available on all websites.
644
-
645
- This theme provides numerous links to a feedback URL, defined using the `feedback_href` config option. This **SHOULD**
646
- take the user to a form where they can provide feedback about the website.
647
-
648
- Links to this URL are shown:
649
-
650
- * in the site navigation, as the right most item
651
- * in the development phase banner, for development phases except *live*
652
- * in the site footer, as a 'is something wrong with this page?' link
653
-
654
- See the *Site navigation*, *Site footer* and *Development phase notice* sections for more information.
187
+ * [Jekyll data](https://github.com/ashmaroli/jekyll-data) - for including theme data files into a site's configuration
188
+ * [Jekyll menu](https://github.com/forestryio/jekyll-menus) - for managing navigation menus
189
+ * [Jekyll tidy](https://github.com/apsislabs/jekyll-tidy) - for rewriting HTML output to be well structured
655
190
 
656
191
  ## Development
657
192
 
658
- [Git](https://git-scm.com) and [Docker](https://www.docker.com/products/docker) [1] are required to build this project
659
- locally.
193
+ [Git](https://git-scm.com), [Docker](https://www.docker.com/community-edition) and
194
+ [Docker Compose](https://docs.docker.com/compose/overview/) are required to build this project locally.
660
195
 
661
196
  To update the Docker image for this project, access to the private
662
- [BAS Docker Registry](https://docker-registry.data.bas.ac.uk) [2] is also required.
197
+ [BAS Docker Registry](https://docker-registry.data.bas.ac.uk) [1] is also required.
663
198
 
664
199
  ```shell
665
- $ git clone https://gitlab.data.bas.ac.uk/BSK/bas-style-kit-jekyll-theme.git
200
+ $ git clone https://gitlab.data.bas.ac.uk/web-apps/bsk/bas-style-kit-jekyll-theme.git
666
201
  $ cd bas-style-kit-jekyll-theme
667
-
668
202
  $ docker-compose up
669
203
  ```
670
204
 
671
- Go to [localhost:9000](http://localhost:9000) to preview the theme.
205
+ Visit [localhost:9000](http://localhost:9000) to see a preview of the theme.
672
206
 
673
207
  **Note:** If you don't have access to the BAS Private Docker Registry, you will need to build the project Docker image
674
208
  locally first using `docker-compose build`.
675
209
 
676
- [1] To install Git and Docker:
677
-
678
- **On macOS**
210
+ [1] The first time you use this registry, you will need to authenticate using:
679
211
 
680
212
  ```shell
681
- $ brew install git
682
- $ brew cask install docker
213
+ $ docker login docker-registry.data.bas.ac.uk
683
214
  ```
684
215
 
685
- **On Windows**
686
-
687
- * Install Docker and Git using their respective installers
688
-
689
- [2] The first time you use this registry, you will need to authenticate using:
690
- `docker login docker-registry.data.bas.ac.uk`
691
-
692
216
  ### Updating dependencies
693
217
 
694
- If `Gemfile` is changed, the project Docker image will need to be rebuilt and pushed to the private BAS Docker
695
- Repository [1].
696
-
697
- The current project version is used as part of the project Docker image tag to ensure the latest version is used by all
698
- developers. Before rebuilding this image you **MUST** update this tag value in `docker-compose.yml` and `.gitlab-ci.yml`
699
- first.
218
+ If the `.gemspec` for this project is changed, the project Docker image will need to be rebuilt and pushed to the
219
+ private BAS Docker Repository [1].
700
220
 
701
221
  ```shell
702
- $ cd jekyll-theme-bas-style-kit/
703
-
704
222
  $ docker-compose build app
705
223
  $ docker-compose push app
706
224
  ```
707
225
 
708
226
  [1] The first time you use this registry, you will need to authenticate using:
709
- `docker login docker-registry.data.bas.ac.uk`
227
+
228
+ ```shell
229
+ $ docker login docker-registry.data.bas.ac.uk
230
+ ```
710
231
 
711
232
  ### Jekyll plugins
712
233
 
713
- Additional Jekyll plugins can be used by listing them as dependencies of this theme.
234
+ Additional Jekyll plugins (gems) can be used by listing them as dependencies in the `gems` option in `_config.yml`.
714
235
 
715
- When the theme is installed by an end-user these plugins will be also be installed. This theme includes a `_config.yml`
716
- to set `gems` option to include any required plugins.
236
+ They will be installed automatically when this theme is used by an end-user.
717
237
 
718
238
  ### Jekyll config options
719
239
 
720
- The Jekyll Data plugin is used to set config options within sites that use this theme. For this to work the site still
721
- needs to call the Data plugin, other config options can then be set by this plugin.
722
-
723
- **Note:** Make sure to document which config options are set by this theme, especially conventional options.
240
+ The Jekyll Data plugin is used to set config options within sites that use this theme. Make sure to document which
241
+ config options are set by this theme.
724
242
 
725
243
  ### Ruby Gem
726
244
 
@@ -731,36 +249,73 @@ The `jekyll-theme-bas-style-kit.gemspec` file details the properties of the Gem
731
249
  **Note:** The `spec.files` parameter controls which files in this project are copied into the Gem. If a file is not
732
250
  listed it won't be included. This is separate to the Git `.gitignore` file.
733
251
 
252
+ ## GitHub mirror
253
+
254
+ A read-only mirror of this project's repository is maintained on GitHub, to support Jekyll's automatic theme
255
+ installation, and to allow use by those outside of BAS.
256
+
257
+ Merge requests **WILL NOT** be accepted on this mirror.
258
+
734
259
  ## Release procedures
735
260
 
736
- 1. bump version in `jekyll-theme-bas-style-kit.gemspec` and `docker-compose.yml` and `_data/bsk_jekyll_vars.json`
737
- 2. `docker-compose build`
738
- 3. `docker-compose push`
739
- 4. if new plugins have been added, update the usage section for where users override the `gems` config option
740
- 5. if new config options have been set, update the usage section
741
- 6. update screen-shot (width: 900px)
742
- 7. close release
743
- 8. commit changes to git and tag with new version
744
- 9. `docker-compose run app gem build jekyll-theme-bas-style-kit.gemspec`
745
- 10. `docker-compose run app gem push jekyll-theme-bas-style-kit-*.gem`
261
+ Before release:
262
+
263
+ 1. create a release branch
264
+ 2. remove `-develop` from the version in:
265
+ * `jekyll-theme-bas-style-kit.gemspec`
266
+ * `docker-compose.yml`
267
+ * `_data/bsk_jekyll_vars.json`
268
+ 3. push the app docker image [1]
269
+ 4. if new config options have been set, update the usage section
270
+ 5. update screen-shot (width: 900px)
271
+ 6. close release in changelog
272
+ 7. commit changes, merge with master and tag with new version
273
+ 8. push the release to Ruby Gems [2]
746
274
 
747
275
  **Note:** If the BAS Style Kit version changes, make sure to bump that version in `_data/bsk_jekyll_vars.json` too.
748
276
 
277
+ After release:
278
+
279
+ 1. bump the version with `-develop` as a prefix in:
280
+ * `jekyll-theme-bas-style-kit.gemspec`
281
+ * `docker-compose.yml`
282
+ * `_data/bsk_jekyll_vars.json`
283
+ 2. push the app docker image [1]
284
+ 3. commit changes, merge with master and close release branch
285
+
286
+ [1]
287
+
288
+ ```shell
289
+ $ docker-compose build
290
+ $ docker-compose push
291
+ ```
292
+
293
+ [2]
294
+
295
+ ```shell
296
+ $ docker-compose run app gem build jekyll-theme-bas-style-kit.gemspec
297
+ $ docker-compose run app gem push jekyll-theme-bas-style-kit-*.gem
298
+ ```
299
+
300
+ **Note:** Add `entrypoint: ash` to the `app` service in `docker-compose.yml`
301
+
749
302
  ## Issue tracking
750
303
 
751
- This project uses issue tracking, see the
752
- [issue tracker](https://gitlab.data.bas.ac.uk/BSK/bas-style-kit-jekyll-theme/issues) for more information.
304
+ This project uses [issue tracking](https://gitlab.data.bas.ac.uk/web-apps/bsk/bas-style-kit-jekyll-theme) to manage
305
+ development of new features/improvements and reporting bugs.
753
306
 
754
307
  **Note:** Read & write access to this issue tracker is restricted. Contact the project maintainer to request access.
755
308
 
756
309
  ## Feedback
757
310
 
758
- The maintainer of this project is the BAS Web & Applications Team, they can be contacted at: webapps@bas.ac.uk.
311
+ The maintainer of this project is the BAS Web & Applications Team, they can be contacted through the
312
+ [BAS Service Desk](mailto:servicedesk@bas.ac.uk).
759
313
 
760
314
  ## License
761
315
 
762
- Copyright 2017 NERC BAS.
316
+ © Natural Environment Research Council (NERC), 2017 - 2018, British Antarctic Survey.
763
317
 
764
- Unless stated otherwise, all code is licensed under the MIT license.
318
+ You may use and re-use this software and associated documentation files free of charge in any format or medium, under
319
+ the terms of the Open Government Licence v3.0.
765
320
 
766
- Copies of this licenses are included within this project.
321
+ You may obtain a copy of the Open Government Licence at http://www.nationalarchives.gov.uk/doc/open-government-licence/