infotorg-api-jekyll-theme 0.1.2 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE.md +21 -0
  3. data/README.md +527 -1
  4. data/_config.yml +33 -3
  5. data/_includes/documentation_links.html +18 -0
  6. data/_includes/footer.html +12 -2
  7. data/_includes/head-app-css.html +2 -2
  8. data/_includes/head-favicon.html +85 -0
  9. data/_includes/navigation.html +5 -5
  10. data/_layouts/default.html +7 -3
  11. data/_layouts/documentation.html +9 -0
  12. data/_layouts/services.html +88 -0
  13. data/_layouts/swagger-ui.html +8 -3
  14. data/_sass/_bootstrap_variables.scss +16 -0
  15. data/_sass/_typography.scss +23 -0
  16. data/_sass/_variables.scss +1 -0
  17. data/assets/css/main.scss +39 -2
  18. data/assets/images/favicon/android-chrome-192x192.png +0 -0
  19. data/assets/images/favicon/apple-touch-icon-114x114.png +0 -0
  20. data/assets/images/favicon/apple-touch-icon-120x120.png +0 -0
  21. data/assets/images/favicon/apple-touch-icon-144x144.png +0 -0
  22. data/assets/images/favicon/apple-touch-icon-152x152.png +0 -0
  23. data/assets/images/favicon/apple-touch-icon-180x180.png +0 -0
  24. data/assets/images/favicon/apple-touch-icon-57x57.png +0 -0
  25. data/assets/images/favicon/apple-touch-icon-60x60.png +0 -0
  26. data/assets/images/favicon/apple-touch-icon-72x72.png +0 -0
  27. data/assets/images/favicon/apple-touch-icon-76x76.png +0 -0
  28. data/assets/images/favicon/favicon-16x16.png +0 -0
  29. data/assets/images/favicon/favicon-194x194.png +0 -0
  30. data/assets/images/favicon/favicon-32x32.png +0 -0
  31. data/assets/images/favicon/favicon-96x96.png +0 -0
  32. data/assets/images/favicon/favicon.ico +0 -0
  33. data/assets/images/favicon/safari-pinned-tab.svg +1 -0
  34. data/assets/images/icons/action-go-outline.svg +12 -0
  35. data/assets/images/icons/action-go.svg +12 -0
  36. data/assets/images/icons/services/employee.svg +11 -0
  37. data/assets/images/icons/services/movables.svg +12 -0
  38. data/assets/images/icons/services/phone.svg +12 -0
  39. data/assets/images/icons/services/placeholder.svg +12 -0
  40. data/assets/images/onboarding-process.svg +23 -0
  41. data/assets/{bootstrap.min.js → js/bootstrap.min.js} +0 -0
  42. data/assets/{bootstrap.min.js.map → js/bootstrap.min.js.map} +0 -0
  43. data/assets/openapi/eiendom.json +6817 -0
  44. metadata +48 -6
  45. data/_includes/services.html +0 -75
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 717b7d207f91d28db853e13264fd2f508c4c567a6badefec130896a8dcfa359d
4
- data.tar.gz: 986add89717e2844e8bec65487f2fd0ef0b49c3ed3cafd81ea6ba0a6e7836e32
3
+ metadata.gz: beacf6b83530be357ddd2b709f39decdf4cfe7ae193120f8af1d0466c64c6c6f
4
+ data.tar.gz: c6776da58bf1146ee0ef62752a8d4804787a80ebc6c2d77b7775ce427fc5fefd
5
5
  SHA512:
6
- metadata.gz: 7045b2aaab1355f5fe104c27c40c69296cc7890800a7436f72921bbde57bbe4128651060916c8a66c5ce885315be01c128f1ded4ccdbc28fa5c2952e025e5d1f
7
- data.tar.gz: f1ef1380cbb6994cba17835c19a39c132fb3790b8c6c3740973a5753cfb8888455dbf9f35ecf8b7514cbf049e0709ebd30142e216ff4ea0328d4053206760f93
6
+ metadata.gz: c3a80b1112a16c91b9991bab579b9be0017334686cbf1958dc82e33de30eb1ae65a19220cb424f90486226d3448713b8637ea2f3a18a5fe9131197b434ec3f3a
7
+ data.tar.gz: 70c0ee57288dea97a6139bbf58e94ffd18af7d9a27e89202a16e20ef6a11d29f6819aebea5bbe1faba4b3b6fb724eea24b17efe6a8f1533e962fa3f4674fc03e
data/LICENSE.md ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2020-2021 Volodymyr Chumak
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
data/README.md CHANGED
@@ -1,2 +1,528 @@
1
- # Jekyll theme for Infotorg APIs
1
+ # Jekyll Infotorg APIs theme
2
+
3
+ > Scaffold for a basic Jekyll theme for use as a reference or template
4
+
5
+ [![Ruby - >=2.3](https://img.shields.io/badge/Ruby->=2.3-green?logo=ruby&logoColor=white)](https://ruby-lang.org)
6
+ [![Jekyll - 3.9](https://img.shields.io/badge/Jekyll-3.9-green?logo=jekyll&logoColor=white)](https://jekyllrb.com)
7
+ [![Bootstrap - 5](https://img.shields.io/badge/Bootstrap-5-green?logo=bootstrap&logoColor=white)](https://getbootstrap.com/)
8
+ [![License: MIT](https://img.shields.io/badge/License-MIT-green)](#license)
9
+
10
+ Infotorg API Jekyll theme has been developed as a [Gem-based](http://jekyllrb.com/docs/themes/) theme for easier use,
11
+ and 100% compatible with GitHub Pages when used as a remote theme.
12
+
13
+ [Theme preview](https://coderua.github.io/infotorg-api-jekyll-theme/)
2
14
  ![Theme screenshot](screenshot.png)
15
+
16
+ ## How to use this project
17
+
18
+ ### Quickstart
19
+
20
+ Create a new project from this template. Or just use the code or docs here as a reference.
21
+
22
+ <div align="center">
23
+
24
+ [![Use this template](https://img.shields.io/badge/Use_this_template-2ea44f?style=for-the-badge&logo=github)](https://github.com/coderua/infotorg-api-jekyll-theme/generate)
25
+
26
+ </div>
27
+
28
+ ### Remove the Unnecessary
29
+ If you forked or downloaded the theme repo you can safely remove the following folders and files:
30
+
31
+ - `/docs`
32
+ - `infotorg-api-jekyll-theme.gemspec`
33
+ - `README.md`
34
+ - `screenshot.png`
35
+ - any not needed files from `/pages` folder
36
+ - update `_data/navigation.yml` file
37
+
38
+ ### Demo
39
+
40
+ View a live demo on GitHub Pages:
41
+
42
+ <div align="center">
43
+
44
+ [![GH Pages - View demo](https://img.shields.io/badge/GH_Pages-View_demo-green?style=for-the-badge)](https://coderua.github.io/infotorg-api-jekyll-theme/)
45
+
46
+ </div>
47
+
48
+ ## What is a Jekyll theme?
49
+
50
+ If you build a Jekyll site, you'll typically use a theme to style your site or at least give a base which you and customize on top of.
51
+
52
+ A theme is a way of packaging layout files, CSS styling and includes files to be installed in another Jekyll project. A theme might be made from scratch or based on a static HTML. A theme is a great way of making styling reusable across projects by you and other people.
53
+
54
+ A good example of a theme is Minima, which is the default theme used when running `jekyll new PATH`.
55
+
56
+ [![jekyll - minima](https://img.shields.io/static/v1?label=jekyll&message=minima&color=blue&logo=github)](https://github.com/jekyll/minima)
57
+
58
+ ## About
59
+
60
+ ### Package a theme
61
+
62
+ The part that allows this project gem to be packaged as an installable gem-based theme is this file:
63
+
64
+ - [infotorg-api-jekyll-theme.gemspec](/infotorg-api-jekyll-theme.gemspec)
65
+
66
+ The other parts like the config and Gemfile or the layout and includes directories are standard for a Jekyll project.
67
+
68
+ Resources:
69
+
70
+ - [Creating a gem-based theme](https://jekyllrb.com/docs/themes/#creating-a-gem-based-theme) in Jekyll docs.
71
+ - [Publishing your theme](https://jekyllrb.com/docs/themes/#publishing-your-theme) in Jekyll docs.
72
+ - [Adding a theme to your GitHub Pages site using Jekyll](https://help.github.com/en/github/working-with-github-pages/adding-a-theme-to-your-github-pages-site-using-jekyll) guide on Github's help.
73
+
74
+ ## Installation
75
+
76
+ > Install this theme in your project
77
+
78
+ There are three ways to install: as a [gem-based theme](https://jekyllrb.com/docs/themes/#understanding-gem-based-themes), as a [remote theme](https://github.blog/2017-11-29-use-any-theme-with-github-pages/) (GitHub Pages compatible), or [forking](https://github.com/coderua/infotorg-api-jekyll-theme/generate)/directly copying all of the theme files into your project.
79
+
80
+ ### Remote Theme method
81
+
82
+ Only a few [standard themes](https://pages.github.com/themes/) are available on the locked GH Pages environment.
83
+ So you must use this Remote Theme plugin to fetch your custom theme.
84
+
85
+ Use the [remote theme](https://github.com/benbalter/jekyll-remote-theme) approach to load a theme using GitHub details.
86
+
87
+ `_config.yml`
88
+
89
+ ```yaml
90
+ ####
91
+ # --- Required configuration ---
92
+ ####
93
+
94
+ # Set a branch name or version at the `remote_theme` value e.g. `@main` or `@v1.0.0`.
95
+ # Be careful if you omit the branch then automatically will be used `master`.
96
+ remote_theme: "infotorg/infotorg-api-jekyll-theme@main"
97
+ plugins:
98
+ - jekyll-remote-theme
99
+ - jekyll-seo-tag
100
+ ```
101
+ Other available options can be added later. See [[Configuration](#configuration)] section.
102
+
103
+ Continue to [Install project gems](#install-project-gems)
104
+
105
+ ### Gem-based method
106
+
107
+ While gems are locked on GH Pages, you can install custom gems like a theme if you use a CI flow. Such as with GH Actions or Netlifym.
108
+
109
+ With Gem-based themes, directories such as the assets, `_layouts`, `_includes`, and `_sass` are stored in the theme’s gem, hidden from your immediate view. Yet all of the necessary directories will be read and processed during Jekyll’s build process.
110
+
111
+ #### 1. Add to your config
112
+
113
+ Update your project's `_config.yaml`:
114
+
115
+ ```yaml
116
+ ####
117
+ # --- Required configuration ---
118
+ ####
119
+ theme: infotorg-api-jekyll-theme
120
+ ```
121
+
122
+ Other available options can be added later. See [[Configuration](#configuration)] section.
123
+
124
+ #### 2. Add to Gemfile
125
+
126
+ To install from **RubyGems**:
127
+
128
+ - `Gemfile`
129
+
130
+ ```ruby
131
+ source "https://rubygems.org"
132
+
133
+ gem "github-pages"
134
+ gem "infotorg-api-jekyll-theme"
135
+ ```
136
+
137
+ To install from **GitHub**:
138
+
139
+ - `Gemfile`
140
+
141
+ ```ruby
142
+ source "https://rubygems.org"
143
+
144
+ gem "github-pages"
145
+ gem "infotorg-api-jekyll-theme", git: "https://github.com/coderua/infotorg-api-jekyll-theme", branch: 'main'
146
+ ```
147
+
148
+ ### Install project gems
149
+
150
+ Now install your gems locally. This is also needed on GH Actions. Netlify takes care of gems for you though.
151
+
152
+ Configure Bundler locally - only needed once.
153
+
154
+ ```sh
155
+ $ bundle config set --local path vendor/bundle
156
+ ```
157
+
158
+ Install project gems.
159
+
160
+ ```sh
161
+ $ bundle install
162
+ ```
163
+
164
+ ### Development and testing
165
+ To set up your environment to develop this theme, run `bundle install`.
166
+
167
+ To test the theme, run `bundle exec jekyll serve --livereload --trace` and open your browser at [http://localhost:4000/](http://localhost:4000/). This starts a Jekyll server. As modifications are made to the theme and test site, it will regenerate and you should see the changes in the browser without a refresh.
168
+
169
+ ### Installed path
170
+
171
+ Useful info for understanding where your theme gets installed based on the approach.
172
+
173
+ #### GH Pages supported theme
174
+
175
+ Themes downloaded from RubyGems usually install here:
176
+
177
+ - `vendor/bundle/ruby/RUBY_VERSION/gems/THEME_NAME-THEME_VERSION`
178
+
179
+ #### Remote Theme method
180
+
181
+ The Remote Theme plugin stores the theme in memory and not on disk with gems.
182
+
183
+ #### Gem-based method
184
+
185
+ If you added your theme to your Gemfile directly and installed from GitHub URL, it will get installed here:
186
+
187
+ ```
188
+ vendor/bundle/ruby/RUBY_VERSION/bundler/gems/THEME_NAME-THEME_VERSION
189
+ ```
190
+
191
+ Where the version at the end is a hash (`123456789abc`) or a tag number (`1.0.0`).
192
+
193
+ ### Installed dependencies
194
+
195
+ See the [gemspec](/infotorg-api-jekyll-theme.gemspec) file to see what dependencies get installed. This came with the scaffold. Update minimum Jekyll version.
196
+
197
+ ## Contents At-A-Glance
198
+
199
+ ### Configuration
200
+
201
+ Settings that affect your entire site can be changed in [Jekyll’s configuration file](https://jekyllrb.com/docs/configuration/): `_config.yml`, found in the root of your project. If you don’t have this file you’ll need to copy or create one using the theme’s default [_config.yml](_config.yml) as a base.
202
+
203
+ >**Note:** for technical reasons, _config.yml is NOT reloaded automatically when used with jekyll serve. If you make any changes to this file, please restart the server process for them to be applied.
204
+
205
+ Take a moment to look over the configuration file included with the theme. Comments have been added to provide examples and default values for most settings.
206
+
207
+ ##### Front Matter Defaults
208
+ To save yourself time setting [Front Matter Defaults](https://jekyllrb.com/docs/configuration/front-matter-defaults/) for pages is the way to go. Sure you can assign `layout` and toggle settings like `show_navigation`in each file, but that’s not ideal.
209
+
210
+ Using the `default` key in [_config.yml](_config.yml) you could set the `layout` and enable/disable navigation for all pages — in one shot.
211
+
212
+ Instead of adding `layout: "default"` and `show_navigation: true` to each page, apply as defaults in like so:
213
+
214
+ `_config.yml`
215
+ ```yaml
216
+ defaults:
217
+ - scope:
218
+ path: ""
219
+ values:
220
+ layout: "default"
221
+ show_navigation: true
222
+ ```
223
+
224
+ To change `layout` add `layout: <LAYOUT_NAME>` to its YAML Front Matter, overriding what was set in _config.yml.
225
+ The same with the `show_navigation`.
226
+
227
+ Example:
228
+ ```yaml
229
+ ---
230
+ layout: layout_name
231
+ show_navigation: false
232
+ ---
233
+ ````
234
+
235
+ ##### Site language
236
+
237
+ [site.lang](_config.yml) is used to declare the primary language for each web page within the site.
238
+
239
+ Example: `lang: "en-US"` sets the lang attribute for the site to the United States flavor of English, while `en-GB` would be for the United Kingdom style of English. Country codes are optional and the shorter variation `lang: "en"` is also acceptable.
240
+ To find your language and country codes check this [reference table](https://msdn.microsoft.com/en-us/library/ee825488(v=cs.20).aspx).
241
+
242
+ `_config.yml`:
243
+ ```yaml
244
+ lang: "en-US"
245
+ ```
246
+
247
+
248
+ ##### Site Title or *Main Heading*
249
+
250
+ [site.title](_config.yml) is used to set a heading title for a page.
251
+
252
+ `_config.yml`:
253
+ ```yaml
254
+ title: infotorg API
255
+ ```
256
+
257
+ ![Site title screenshot](docs/screenshots/site.title.png)
258
+
259
+ It used as a part of title in a `<title>` tag as well.
260
+ Let's imagine we have a "Security" page that looks like:
261
+
262
+ `pages/security.md`
263
+ ```markdown
264
+ ---
265
+ title: Security
266
+ ---
267
+
268
+ # The Security Guideline
269
+
270
+ Some other content...
271
+ ```
272
+
273
+ And a configuration in the `_config.yml`:
274
+ ```yaml
275
+ #...
276
+
277
+ title: infotorg API
278
+
279
+ #...
280
+ ```
281
+
282
+ As a result, in the html output we'll have a `page.title` and `site.title` together, separated by ` | ` delimiter.
283
+ ```html
284
+ <title>Security | infotorg API</title>
285
+ ```
286
+
287
+ This is achieved by using [jekyll-seo-tag](https://github.com/jekyll/jekyll-seo-tag) plugin.
288
+
289
+
290
+ #### Site Subtitle
291
+
292
+ The `site.subtitle` sets a visible subtitle under the title on the page.
293
+
294
+ `_config.yml`:
295
+ ```yaml
296
+ subtitle: Onboarding guidelines and documentation
297
+ ```
298
+
299
+ ![Site subtitle screenshot](docs/screenshots/site.subtitle.png)
300
+
301
+ #### Url to a Product page
302
+
303
+ `product_url` used to set a direct **url** to a product on the Infotorg.no website. *Default:* https://www.infotorg.no/
304
+
305
+ `_config.yml`:
306
+ ```yaml
307
+ product_url: "https://www.infotorg.no/"
308
+ ```
309
+
310
+ `product_url_title` used to set Sets the product link **title**. *Default:* Infotorg.no
311
+
312
+ `_config.yml`:
313
+ ```yaml
314
+ product_url_title: "Infotorg.no"
315
+ ```
316
+
317
+ ![Site subtitle screenshot](docs/screenshots/site.product_url.png)
318
+
319
+ #### Url to main page
320
+
321
+ > Will be shown only on a concrete API documentation page.
322
+
323
+ `main_page_url` used to set **url** to the main APIs page (a list of services, also called a lending page). *Default:* https://infotorg.github.io/
324
+
325
+ `_config.yml`:
326
+ ```yaml
327
+ main_page_url: "https://infotorg.github.io/"
328
+ ```
329
+
330
+ `main_page_url_title` used to set a **title** to APIs page link. *Default:* Infotorg APIs
331
+
332
+ `_config.yml`:
333
+ ```yaml
334
+ main_page_url_title: "Infotorg APIs"
335
+ ```
336
+
337
+ ![Url to Infotorg APIs main page screenshot](docs/screenshots/site.main_page_url.png)
338
+
339
+
340
+ #### Enabling Google Analytics
341
+ To enable Google Analytics, add the following lines to your Jekyll site:
342
+ ```yaml
343
+ google_analytics_tag_manager: GTM-XXXX
344
+ ```
345
+
346
+
347
+ ### Navigation
348
+
349
+ ![Site navigation screenshot](docs/screenshots/navigation.png)
350
+
351
+ Customize a site navigational links through a Jekyll data file [_data/navigation.yml](_data/navigation.yml)
352
+
353
+ ```yaml
354
+ - name: Overview
355
+ link: /
356
+ show: true
357
+
358
+ - name: Security
359
+ link: /security
360
+ show: true
361
+
362
+ - name: Onboarding
363
+ link: /onboarding
364
+ show: false # won't be presented in a navigation
365
+
366
+ - name: FAQ
367
+ link: https://faq.socialboards.com/infotorg/
368
+ target: _blank # will opened in a new tab
369
+ show: true
370
+ ```
371
+
372
+ Optional keys:
373
+ - `target` - adds a `target` html attribute to a navigation link. Possible values are: `_self`, `_blank`, `_parent`, `_top`. [[More details](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a)]
374
+ - `show` - Boolean flag shows/hides the navigation item. Possible values: `true`, `false`.
375
+
376
+
377
+ ### External documentation links
378
+
379
+ The theme gives you an ability to easily show links to external documentation resources.
380
+
381
+ ![Documentation links screenshot](docs/screenshots/documentation-links.png)
382
+
383
+ #### How to use it
384
+ 1. Create a file with links to the documentation resources. By default, this is [_data/documentation_links.yml](_data/documentation_links.yml).
385
+
386
+ `_data/documentation_links.yml`
387
+ ```yaml
388
+ - name: WSDL
389
+ link: http://ws-test.infotorg.no/xml/EVRY/InfotorgKjoeretoey/2018-11-28/InfotorgKjoeretoey.wsdl
390
+ target: _blank
391
+ show: true
392
+
393
+ - name: XSD
394
+ link: http://ws-test.infotorg.no/xml/EVRY/InfotorgKjoeretoey/2018-11-28/InfotorgKjoeretoey.xsd
395
+ target: _blank
396
+ show: true
397
+
398
+ - name: Documentation
399
+ link: http://ws-test.infotorg.no/xml/EVRY/InfotorgKjoeretoey/2018-11-28/InfotorgKjoeretoey.xsd.xhtml
400
+ target: _blank
401
+ show: true
402
+ ```
403
+ Optional keys:
404
+ - `target` - adds a `target` html attribute to a navigation link. Possible values are: `_self`, `_blank`, `_parent`, `_top`. [[More details](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a)]
405
+ - `show` - Boolean flag shows/hides the item. Possible values: `true`, `false`.
406
+ 2. On a page you need the resources link use [documentation](_layouts/documentation.html) layout
407
+ ```yaml
408
+ ---
409
+ layout: documentation
410
+ title: Documentation
411
+ permalink: documentation
412
+ ---
413
+ ```
414
+
415
+ Or you can manually include documentations links instead of using layout.
416
+ ```html
417
+ ---
418
+ title: Documentation
419
+ permalink: documentation
420
+ ---
421
+ <h1>{{ page.title }}</h1>
422
+
423
+ {% include documentation_links.html links=site.data.documentation_links %}
424
+ ```
425
+ [documentation_links](_includes/documentation_links.html) requires only links [[see step 1 above](#how-to-use-it)].
426
+
427
+ > NOTE: a page where you're including the `documentation_links` should have the `.html` extension, not `.md`.
428
+
429
+
430
+ ### Layouts
431
+
432
+ The bread and butter of any theme. Below you’ll find the layouts included with the theme, what they look like and the type of content they’ve been built for.
433
+
434
+ > **NOTE:** The theme is based on [Bootstrap](https://getbootstrap.com/docs/5.0/getting-started/download/) **v5.0.0-beta1**.
435
+ >
436
+ > Feel free to use any Bootstrap features in your sites.
437
+
438
+ Refers to files within the [_layouts](_layouts) directory, that define the markup for your theme.
439
+
440
+ - [default.html](_layouts/default.html) &mdash; The base layout that lays the foundation for subsequent layouts. The derived layouts inject their contents into this file at the line that says ` {{ content }} ` and are linked to this file via [FrontMatter](https://jekyllrb.com/docs/frontmatter/) declaration `layout: default`.
441
+ - [documentation.html](_layouts/documentation.html) &mdash; The layout for automatic output external documentation links. [[More Info.](#documentation-layout)]
442
+ - [services.html](_layouts/services.html) &mdash; The layout for your Services list. [[More Info.](#services-layout)]
443
+ - [swagger-ui.html](_layouts/swagger-ui.html) &mdash; The layout for your [Swagger UI](https://swagger.io/tools/swagger-ui/) documentation that contain FrontMatter: `layout: swagger-ui`. [[More Info.](#swagger-ui-layout)]
444
+
445
+ Each of the layouts injects all needed CSS and JavaScript to render your page correctly.
446
+
447
+ #### Default Layout
448
+
449
+ [`default.html`](_layouts/default.html) is a flexible HTML layout for the site's landing-page / home-page / index-page. <br/>
450
+
451
+ ![Default layout screenshot](docs/screenshots/default-layout-with-dummy-content.png)
452
+
453
+ #### Documentation Layout
454
+
455
+ [documentation.html](_layouts/documentation.html) based on the default layout to show a list of links to external documentation defined in the [_data/documentation_links.yml](_data/documentation_links.yml) file.
456
+
457
+ ![Documentation layout screenshot](docs/screenshots/documentation-layout.png)
458
+
459
+ #### Services Layout
460
+
461
+ [services.html](_layouts/services.html) based on the default layout to show a list of services defined in the [_data/services.yml](_data/services.yml) file.
462
+
463
+ ![Services layout screenshot](docs/screenshots/services-layout.png)
464
+
465
+ #### Swagger UI Layout
466
+
467
+ [services.html](_layouts/services.html) is a flexible HTML layout for the to show Swagger UI.
468
+
469
+ ![Swagger-UI layout screenshot](docs/screenshots/swagger-ui-layout.png)
470
+
471
+ Path to Open API file can be set in the `openapi` option in the [_config.yml](_config.yml) or via FrontMatter: `openapi: /assets/openapi/YOUR_OPEN_API_FILE`
472
+
473
+ `pages/swagger-ui.html`
474
+ ```yaml
475
+ ---
476
+ layout: swagger-ui
477
+ title: Swagger UI
478
+ permalink: swagger-ui
479
+ openapi: /assets/openapi/YOUR_OPEN_API_FILE
480
+ ---
481
+ ```
482
+
483
+ > **NOTE:** As a convention, all Open API files should be stored in the `/assets/openapi` folder.
484
+
485
+
486
+ ### Includes
487
+
488
+ Refers to snippets of code within the [_includes](_includes) directory that can be inserted in multiple layouts (and another include-file as well) within the same theme-gem.
489
+
490
+ - [footer.html](_includes/footer.html) &mdash; Defines the site's footer section.
491
+ - [head-app-css.html](_includes/head-app-css.html) &mdash; Inserts CSS links.
492
+ - [head-favicon.html](_includes/head-favicon.html) &mdash; Inserts favicons for different sizes. Icons are located in the [/assets/images/favicon](/assets/images/favicon) directory
493
+ - [head-fonts.html](_includes/head-fonts.html) &mdash; Inserts fonts.
494
+ - [head-google-analytics.html](_includes/head-google-analytics.html) &mdash; Inserts Google Analytics module.
495
+ - [navigation.html](_includes/navigation.html) &mdash; Inserts navigation block (for desktop and mobile devices). Managing by [show_navigation](_config.yml) option in a global [_config.yml](_config.yml) or via FrontMatter: `show_navigation: true/false`
496
+ - [title.html](_includes/title.html) &mdash; Defines the site's main header section.
497
+ - [documentation_links.html](_includes/documentation_links.html) &mdash; Output [external documentation links](#external-documentation-links).
498
+
499
+ ### Sass
500
+
501
+ Refers to `.scss` files within the [_sass](_sass) directory that define the theme's styles.
502
+
503
+ - [_variables.scss](_sass/_variables.scss) &mdash; SCSS variables which can be used anywhere in SCSS files.
504
+ - [_bootstrap.scss](_sass/_bootstrap.scss) &mdash; Bootstrap main file.
505
+ - [_bootstrap_variables.scss](_sass/_bootstrap.scss) &mdash; Used to configure bootstrap defaults.
506
+ - [_typography.scss](_sass/_typography.scss) &mdash; Basic typography styles.
507
+
508
+ ### Assets
509
+
510
+ Refers to various asset files within the [assets](assets) directory.
511
+
512
+ - [assets/css/main.scss](assets/css/main.scss) &mdash; Imports sass files from within the `_sass` directory and gets processed into the theme's
513
+ stylesheet: `assets/css/main.css`.
514
+ - [assets/css/print.scss](assets/css/print.scss) &mdash; Print related styles and gets processed into the theme's
515
+ stylesheet: `assets/css/print.css`
516
+ - [assets/images](assets/images) &mdash; A folder with image assets.
517
+ - [assets/images/favicon](assets/images/favicon) &mdash; A folder contains image assets for favicon.
518
+ - [assets/images/icons](assets/images/icons) &mdash; A folder contains icon image assets.
519
+ - [assets/images/icons/services](assets/images/icons/services) &mdash; A folder contains Infotorg API Services icons. *By default used in the [services layout](#services-layout).
520
+
521
+ ### Plugins
522
+
523
+ The theme comes with [jekyll-seo-tag](https://github.com/jekyll/jekyll-seo-tag) plugin preinstalled to make sure your website gets the most useful meta tags. See [usage](https://github.com/jekyll/jekyll-seo-tag#usage) to know how to set it up.
524
+
525
+
526
+ ## License
527
+
528
+ Distributed under the [MIT License](LICENSE.md).