CHANGELOG

All notable user-facing changes to this project are documented in this file.

The project underwent a major maintenance shift in March 2022.

This website is built from the HEAD of the main branch of the theme repository.

Code changes to main that are not in the latest release:

  • Added: nav_enabled site, layout, and page-level variable to selectively show or hide the side/mobile menu by @kevinlin1 in [#1441]. The minimal layout was reimplemented using this feature, and now has support for the site-wide search bar and auxiliary links.
  • Fixed: protect search-data.json file from front matter default for layout by @mattxwang in #1468

Docs changes made since the latest release:

  • Docs: Explained the nav_enabled variables as an alternative to using the minimal layout @kevinlin1 in [#1441].

Release v0.8.2

Hi everyone! This patch release fixes a bug where a default layout with unrestricted scope (path: "") breaks JavaScript functionality. Users who do not use a default layout with unrestricted scope should not be affected. This should be a straightforward upgrade for all users. Thank you to @pdmosses for triaging and fixing the bug!

Bugfixes

  • Fixed: Protect theme JS file from front matter default for layout by @pdmosses in #1447

Release v0.8.1

Hi folks! This patch release fixes a bug introduced in 0.8.0 that affects users who build their sites in strict mode. It is a straightforward upgrade that should require no manual migration changes. Thank you to @Zarthus for quickly catching and fixing this bug!

Bugfixes

  • Fixed: Liquid filter typo in breadcrumb component (strip instead of trim) by @Zarthus in #1434

Documentation

  • Build docs site using strict mode and strict_filters by @Zarthus in #1435

New Contributors

Release v0.8.0

Hi folks! This first minor release of 2024 has a short number of changes: a large improvement of build times for large sites, a new keyboard shortcut to focus the search bar, and sidebar navigation bugfixes for “pretty” URLs (with .html omitted) and the clickable area on Safari. This release has no explicit breaking changes and should be a straightforward upgrade for most (if not all) users.

Using Release v0.8.0

Users who have not pinned the theme version will be automatically upgraded to v0.8.0 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.8.0

To use this version explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.8.0"

To use and pin a previous version of the theme, replace the 0.8.0 with the desired release tag.

New Features

Bugfixes

  • Fixed: quicker build by @pdmosses in #1397
  • Fixed: incorrect navigation when .html omitted from URL by @pdmosses in #1374
  • Fixed: incorrect positioning of clickable area for navigation links on Safari by @mattxwang in #1403

Documentation

  • Add documentation to “Navigation Structure” on grouping pages with collections by @mitchnemirov in #1390

New Contributors

Release v0.7.0

Hi folks! This is a minor release that adds a new configuration option for opening external links in a new tab and provides many bugfixes (in both correctness and performance) for Just the Docs users with large sites. We anticipate that for most users, this is a straightforward upgrade. However, it introduces some potentially-breaking internal changes to undocumented features of the theme.

Migrating to v0.7.0

Migration: users will need to migrate if:

  • they overrode _includes/nav.html, which has moved to _includes/components/nav.html
  • they have an element with the IDs jtd-nav-activation or jtd-head-nav-stylesheet

For more, refer to the migration guide.

Using Release v0.7.0

Users who have not pinned the theme version will be automatically upgraded to v0.7.0 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.7.0

To use this version explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.7.0"

To use and pin a previous version of the theme, replace the 0.7.0 with the desired release tag.

New Features

  • Added: configuration options for opening external links in new tab by @CarbonNeuron in #1360

Bugfixes

#1358 moved _includes/nav.html to the _includes/components directory, Users who were overriding that file will need to adjust their sites accordingly.

Documentation:

New Contributors

Release v0.6.2

Hi all, this is a small patch release that includes two changes: adding a missing Windows emoji font fallback, and removing some (now-unused) code introduced in 0.6.

Bugfixes

New Contributors

Release v0.6.1

Hi all, this is a small patch release that only includes one change: resolving a bug introduced in 0.6.0 that causes a JS error for pages excluded from navigation.

Bugfixes

  • Fixed: JS error for pages excluded from navigation by @pdmosses in #1332

Release v0.6.0

Hi all, this is a minor release that introduces performance improvements for build times on large sites, correctly sets the color-scheme property, and fixes invalid HTML. However, it introduces some potentially-breaking internal changes to undocumented features of the theme.

Migrating to v0.6.0

Migration: users will need to migrate if:

  • they have an existing _includes file named favicon.html, head_nav.html, or css/activation.scss.liquid
  • they have code that refers to #main-content-wrap
  • they override the default light theme’s code, or the theme-loading logic
  • they have different favicons for different pages

For more, refer to the migration guide.

Using Release v0.6.0

Users who have not pinned the theme version will be automatically upgraded to v0.6.0 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.6.0

To use this version explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.6.0"

To use and pin a previous version of the theme, replace the 0.6.0 with the desired release tag.

New Features and Bugfixes

  • Added: $color-scheme theme variable to specify color-scheme for :root by @sigv in #1280
  • Fixed: build times for large sites by @pdmosses in #1244
  • Fixed: missing closing </button> tag in sidebar.html by @mattxwang in #1304
  • Fixed: removed duplicate #main-content-wrap minimal and default layouts by @mattxwang in #1305

Documentation

The theme docs are unversioned, and already reflect the above changes.

Docs changes:

  • A footnote in the configuration docs explains how disabling JavaScript affects the display of navigation links when browsing folded collections.
  • Invalid HTML has been removed from most documentation examples.

New Contributors

Release v0.5.4

Hi all, this is a small patch release that only includes one change: fixing a style clash between Mermaid’s labels and Just the Docs’ labels.

Note: for subsequent patch releases, we will omit migration instructions (for brevity). In all cases, immediate migration should be backwards-compatible. Refer to previous major or minor update instructions for more information.

Bugfixes

  • Fixed: Mermaid labels inheriting theme .label styling by @mattxwang in #1278

Release v0.5.3

Hi all, this is a minor patch release that only includes one change: changing all text-based CSS properties to use rem instead of hard-coded px values. This has two effects:

  1. All deprecation warnings are now fixed on build; you should now get a clean build with jekyll build.
  2. We have deprecated the $root-font-size SCSS variable. We will remove it in an upcoming release of the theme.

If you use the stock Just the Docs theme, this release should have no impact on your final built site. If you change the $root-font-size SCSS variable, you might experience light layout shifts.

Using Release v0.5.3

Users who have not pinned the theme version will be automatically upgraded to v0.5.3 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.5.3

To use this version explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.5.3"

To use and pin a previous version of the theme, replace the 0.5.3 with the desired release tag.

Bugfixes

  • Fixed: font-size scaling for text-related CSS properties by using rem instead of fixed px values; deprecate $root-font-size by @mattxwang in #1169

Release v0.5.2

Hi all, this is a minor patch release that mostly focuses on accessibility. Since we follow semantic versioning, this should be a smooth upgrade with no breaking changes.

In addition, the theme docs website has a new canonical URL: https://just-the-docs.com. We’ve also retroactively published the theme docs website for version v0.3.3 at https://v0-3-3-docs.just-the-docs.com/. Thank you to our GitHub sponsors for funding our domain name!

Using Release v0.5.2

Users who have not pinned the theme version will be automatically upgraded to v0.5.2 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.5.2

To use this version explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.5.2"

To use and pin a previous version of the theme, replace the 0.5.2 with the desired release tag.

Bugfixes

  • Fixed: liquid variable leakage in navigation components by @pdmosses in #1243
  • Fixed: ARIA roles and labels for search, header, logo, mobile menu button, and main content by @joelhawksley in #1259
  • Fixed: ARIA labels for all anchors with href="#"; adds aria-pressed information for toggles by @mattxwang in #1262

New Contributors

Release v0.5.1

Hi all, this is a very small minor patch release that has two small behavioral bugfixes: fixing a regression introduced in v0.5.0 on Safari versions <16.4 (broken media query), and the copy code button providing incorrect feedback in insecure browser contexts. This should be a smooth upgrade with no breaking changes.

As always, we’d love your feedback. Open an issue or start a discussion for bug reports, feature requests, and any other feedback. Thanks for continuing to use Just the Docs!

Using Release v0.5.1

Users who have not pinned the theme version will be automatically upgraded to v0.5.1 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.5.1

To use this version explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.5.1"

To use and pin a previous version of the theme, replace the 0.5.1 with the desired release tag.

Bugfixes

  • Fixed: disable copy code button in insecure contexts @rmoff in #1226
  • Fixed: context-based media feature not supported by Safari <16.4 by @mattxwang in #1240

Documentation

  • Added: document copy code button requiring secure context by @rmoff in #1225
  • Fixed: typo (“them” → “theme”) in MIGRATION.md by @waldyrious in #1219
  • Fixed: font-weight typo (Utilities > Typography) by @mattxwang in #1229
  • Fixed: just the docs typo in migration guide by @mattxwang in #1230

New Contributors

Release v0.5.0

Hope your April is going well! This new release of Just the Docs is relatively minor. It has one breaking change: we’ve reverted the import order of setup.scss to be before color schemes. In addition, we include two requested fixes: color contrast issues with ::selection and using Just the Docs with mermaid versions >=10.

We’ve marked this as a minor version bump due to the breaking change. In the next section, we briefly outline what migration steps should be. Users who did not migrate to v0.4.2 or who do not have a custom setup.scss are guaranteed no breaking changes.

As always, we’d love your feedback. Open an issue or start a discussion for bug reports, feature requests, and any other feedback. Thanks for continuing to use Just the Docs!

Migrating to v0.5.0

Migration: users with a custom setup.scss cannot rely on variables or functions defined in color_scheme. This reverts to the behaviour in v0.4.1. Users should instead move those variables or functions to the color_scheme files themselves.

For more, refer to the migration guide.

Using Release v0.5.0

Users who have not pinned the theme version will be automatically upgraded to v0.5.0 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.5.0

To use this version explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.5.0"

To use and pin a previous version of the theme, replace the 0.5.0 with the desired release tag.

Bugfixes

  • Reverted (breaking): “Fix import order for setup.scss (#1184)” by @mattxwang in #1209
  • Fixed: color contrast issues with ::selection (reverting to browser defaults) @mattxwang in #1208
  • Fixed: mermaid v10, bundle all mermaid code in component by @mattxwang in #1190
  • Removed: unused images (just-the-docs.png, search.svg) by @mattxwang in #1107
  • Removed: CODE_OF_CONDUCT, docker-compose, and Dockerfile files from site by @mattxwang in #1187

Full Changelog: https://github.com/just-the-docs/just-the-docs/compare/v0.4.2…v0.5.0

Release v0.4.2

Hello! We’re back again with another small release. Like v0.4.1, this release is a semver patch: it only includes bugfixes, and is fully backwards-compatible.

The big highlight of this theme is fixing our light scheme code highlighting contrast issues; this was one of our most-requested features! This change is fully backwards-compatible; users can opt-in to our old highlighting theme by using legacy_light instead of light.

As always, we’d love your feedback. Open an issue or start a discussion for bug reports, feature requests, and any other feedback. Thanks for continuing to use Just the Docs!

Using Release v0.4.2

Users who have not pinned the theme version will be automatically upgraded to v0.4.2 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.4.2

To use this RC explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.4.2"

To use and pin a previous version of the theme, replace the 0.4.2 with the desired release tag.

Bugfixes

  • Fixed: light scheme code highlighting contrast issues; updated to use Atom’s One Light colors, consolidate theme variables by @mattxwang in #1166
  • Fixed: duplicate import of color_schemes by @mattxwang in #1173
  • Fixed: import order for setup.scss by @mattxwang in #1184
  • Removed: unused dark syntax themes by @mattxwang in #1192

Documentation

  • Added: docs for using mermaid with AsciiDoc by @flyx in #1182

Full Changelog: https://github.com/just-the-docs/just-the-docs/compare/v0.4.1…v0.4.2

Release v0.4.1

Hello! We hope you’ve been enjoying the new v0.4.0; we appreciate all the feedback we’ve gotten already! As promised, future releases will be small with simple steps to upgrade. This is one of them! v0.4.1 is a semver patch: it only includes bugfixes, and is fully backwards-compatible.

As always, we’d love your feedback. Open an issue or start a discussion for bug reports, feature requests, and any other feedback. Thanks for continuing to use Just the Docs!

Using Release v0.4.1

Users who have not pinned the theme version will be automatically upgraded to v0.4.1 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.4.1

To use this RC explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.4.1"

To use and pin a previous version of the theme, replace the 0.4.1 with the desired release tag.

Bugfixes

  • Fixed: allow later versions of bundler by @mattxwang in #1165
  • Fixed: AsciiDoc code block styling by @flyx in #1168
  • Fixed: main content negative margin for viewports in [$md, $nav-width + $content-width] by @Dima-369 in #1177
  • Removed: unused OneDarkJekyll files by @mattxwang in #1167

Documentation

New Contributors

Full Changelog: https://github.com/just-the-docs/just-the-docs/compare/v0.4.0…v0.4.1

Release v0.4.0

We’re so excited to release Just the Docs v0.4.0. This release has been almost a year in the making - after our new maintenance team has taken over the project, we’ve added two years of backlogged features and bugfixes to modernize the theme. This CHANGELOG will summarize some of the key changes, discuss migrations strategies, and outline broad future plans for this theme.

Brief Overview - Highlighted Changes

v0.4.0 contains many new features and bugfixes. We enumerate all of them in further sections in this changelog; however, we’d like to call out some of the most-requested changes:

  • better support for dark theme: dark highlighting, search input color
  • callouts, a new design component to highlight content
  • configuring mermaid.js, a markdown-native diagram visualization library
  • copy code button for code snippets
  • external navigation links
  • major improvements to nav generation efficiency and robustness
  • minor improvements to built-in accessibility (SVG icons, nav titles, skip to main content)
  • modularized site components (advanced feature)
  • new custom includes: table of contents heading, navigation panel footer, search placeholder, lunr search indices
  • bugfixes involving WEBrick and Ruby 3, Liquid processing in CSS comments, nested task lists, relative URLs, scroll navigation, corrupted search data from rake, breadcrumbs, and more!
  • more documentation for custom includes, this changelog, and the migration guide

After usage instructions and the roadmap, we enumerate all changes from v0.3.3.

Using Release v0.4.0

Unlike pre-releases, v0.4.0 is a new semver minor release for the theme. That means that users who have not pinned the theme version will be automatically upgraded to v0.4.0 the next time they build their site.

To use this release explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.4.0

To use this RC explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.4.0"

If you would prefer to not upgrade, you can enforce that explicitly:

  1. pin your gem version in your Gemfile, like so
    gem "just-the-docs", "0.3.3"
    
  2. freeze the remote_theme, like so
    remote_theme: just-the-docs/just-the-docs@v0.3.3
    

Migration Guide and Strategies

We’ve developed a new migration guide for users to migrate from version v0.3.3 to v0.4.0. It outlines major changes in project maintenance (e.g. new repository link, team) as well as breaking changes that may break your site (and potential solutions). We suggest that all users refer to the guide before manually upgrading their site.

For the vast majority of users, we do not anticipate that this will be a breaking change. The major touch points are surrounding new includes, navigation (ordering, pages, and collections), the favicon, and a shift to relative URLs. However, users who heavily customize the theme (primarily by overriding includes) will likely have to make minor changes.

Given the length of features added in this release, users may want to incrementally upgrade through the pre-releases. To follow this approach, read this changelog from v0.4.0.rc1 to v0.4.0.rc5; this breaks down the release into small chunks, each of which should be easier to upgrade. v0.4.0.rc5 is identical to this release.

For support with migrating to v0.4.0, open an issue or start a discussion and let us know!

Roadmap (What’s Next?)

Moving forward, we plan to release more frequently with smaller, bite-sized changes. This should make it easier for users to upgrade in the future!

Broadly, many features are still on the radar. We anticipate the rest of v0.4.x to be bugfixes surrounding this new release.

For version v0.5, our roadmap includes:

  • a theme toggle (light/dark mode), with automatic theme switching based on browser preferences
  • better GDPR compliance for analytics
  • multi-level/recursive navigation (unlimited hierarchy of child pages)

In future versions, we also plan on:

  • adding better dark theme defaults
  • adding better internationalization support
  • exploring offline PDF generation
  • improving accessibility within the theme
  • improving search functionality
  • refactoring and improving the robustness of our codebase

Have ideas for what’s next, or want to get involved? Open an issue or start a discussion and let us know! We’re looking for more contributors and maintainers to help us develop the theme.

New Features

  • Added: Combination by @pdmosses in #578
    • Added: dark highlighting in #463
    • Added: pages and collections in #448
    • Added: callouts in #466
    • Fixed: breadcrumb behaviour … by @AdityaTiwari2102 in #477
    • Fixed: prevent rake command corrupting search data in #495 (also listed below)
    • Fixed: nested lists in #496
    • Fixed: set color for search input in #498 (also listed below)
    • Fixed: sites with no child pages (no PR)
    • Fixed: TOC/breadcrumbs for multiple collections in #494
    • Added: collection configuration option nav_fold (no PR)
    • Fixed: indentation and color for folded collection navigation (no PR)
    • Fixed: scroll navigation to show the link to the current page in #639
    • Fixed: Replace all uses of absolute_url by relative_url, by @svrooij in #544
  • Added: custom favicon _includes by @burner1024 in #364
  • Added: set color for search input by @pdmosses in #498
  • Added: search placeholder configuration by @mattxwang in #613
  • Added: ‘child_nav_order’ front matter to be able to sort navigation pages in reverse by @jmertic in #726
  • Added: nav_footer_custom include by @nathanjessen in #474
  • Added: style fixes for jekyll-asciidoc by @alyssais in #829
  • Added: mermaid.js support by @nascosto in #857
  • Added: support for external navigation links by @SPGoding in #876
  • Added: refactor mermaid config to use mermaid_config.js include, only require mermaid.version in _config.yml by @mattxwang in #909
  • Added: accessible titles to nested page nav toggle by @JPrevost in #950
  • Added: better title styling for AsciiDoc examples by @alyssais in #944
  • Added: docs for custom search placeholder by @mattxwang in #939
  • Added: provide ability to skip to main content by @JPrevost in #949
  • Added: styling for <blockquote> by @mattxwang in #965
  • Added: custom include for TOC heading by @pdmosses in #980
  • Added: experimental nav optimization for simple cases by @pdmosses in #992
  • Added: support multiple Google Analytics tracking IDs, document UA -> GA4 switch by @MichelleBlanchette in #1029
  • Added: copy code button to code snippets by @simonebortolin in #945
  • Added: restore simple configuration of favicon.ico via site.static_files by @pdmosses in #1095
  • Added: modularize site components by @mattxwang in #1058
  • Added: includes for custom lunr Liquid and JS code by @diablodale in #1068
  • Added: new _sass/custom/setup.scss for variable definition by @mattxwang in #1135
  • Added: configuration key to load a local version of mermaid by @fabrik42 in #1153

Bugfixes

Maintenance

Documentation

New Contributors

Pre-release v0.4.0.rc5

Hi everyone, we’re so excited to finally release v0.4.0! For posterity’s sake, we’re going to release v0.4.0.rc5 and then immediately re-release it as v0.4.0; this should make it more clear what changes were introduced in the lead up to the minor release.

This RC does not introduce any major user-facing features. It adds more customizability for custom SCSS variables (fixing a bug with callout introduction order), lunr indexing, and loading mermaid locally. In addition, it fixes bugs introduced in .rc4: incorrect CSS, inconsistencies with code block backgrounds in dark theme, and the copy code button. It also adds a migration guide for users coming from v0.3.3.

Trying out pre-release v0.4.0.rc5

Similar to the prior release, v0.4.0.rc5 is a release candidate for the theme (i.e., a pre-release) with release v0.4.0 following immediately after. While we don’t anticipate many users using this RC, it is still possible to opt-in.

To use this RC explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.4.0.rc5

To use this RC explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.4.0.rc5"

By default, users will not be upgraded to 0.4.0.rc5. To enforce that explicitly, either:

  1. pin your gem version in your Gemfile, like so
    gem "just-the-docs", "0.3.3"
    
  2. freeze the remote_theme, like so
    remote_theme: just-the-docs/just-the-docs@v0.3.3
    

New Features

  • Added: includes for custom lunr Liquid and JS code by @diablodale in #1068
  • Added: new _sass/custom/setup.scss for variable definition by @mattxwang in #1135
  • Added: configuration key to load a local version of mermaid by @fabrik42 in #1153

Bugfixes and Maintenance

Docs

New Contributors

Pre-release v0.4.0.rc4

Happy new year! We’re celebrating with another pre-release, with features that should help theme users better adapt to changes moving forward. We aim to re-release this as v0.4.0, with only few changes.

Notable new additions include:

  • modular site components, which split up the site into smaller reusable components; advanced theme users can then remix layouts quickly without duplication
  • a “copy code” button to code blocks
  • fixing bugs in generated TOCs and navigation from previous prereleases
  • various cleanups of CSS and HTML markup

The roadmap to v0.4.0 is small. We are only looking to:

  • finish a migration guide, so users can easily upgrade from v0.3.3 to v0.4.0
  • fix one last bug relating to callouts and custom colors
  • fix any new bugs introduced by this pre-release

Have any questions, thoughts, or concerns? We’d love to hear from you! Please open an issue or start a discussion and let us know!

Trying out pre-release v0.4.0.rc4

Similar to the prior release, v0.4.0.rc4 is a release candidate for the theme (i.e., a pre-release) with release v0.4.0 coming soon. We want your help in testing the changes! As of now, the gem on RubyGems and the repository are updated to v0.4.0.rc4.

To use this RC explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.4.0.rc4

To use this RC explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.4.0.rc4"

By default, users will not be upgraded to 0.4.0.rc4. To enforce that explicitly, either:

  1. pin your gem version in your Gemfile, like so
    gem "just-the-docs", "0.3.3"
    
  2. freeze the remote_theme, like so
    remote_theme: just-the-docs/just-the-docs@v0.3.3
    

New Features

Bugfixes and Maintenance

  • Fixed: incorrect disambiguation in generated TOCs by @pdmosses in #999
  • Fixed: duplicated external links in collections by @pdmosses in #1001
  • Fixed: import order of custom.scss; puts at end by @deseo in #1010
  • Fixed: top-level active link styling by @pdmosses in #1015
  • Fixed: external links for sites with no pages by @pdmosses in #1021
  • Fixed: duplicate title if jekyll-seo-tag not in users’s plugins by @Tom-Brouwer in #1040
  • Fixed: removes (duplicate) favicon.html, shifts content to head_custom.html by @mattxwang in #1027
  • Fixed: add reversed, deprecate desc for nav child_nav_order by @jmertic in #1061
  • Fixed: child.child_nav_order to node.child_nav_order by @mattxwang in #1065
  • Fixed: remove all uses of / as SASS division by @mattxwang in #1074
    • note: this was originally merged as #1074 with a bug; it was reverted in #1076, and then reimplemented in #1077
  • Fixed: skip nav collection generation when site has no pages by @pdmosses in #1092
  • Fixed: standardize SCSS with declaration-block-no-redundant-longhand-properties by @simonebortolin in #1102
  • Fixed: incorrect padding property value pair in labels.scss by @SConaway in #1104
  • Fixed: various bugs with copy code button by @simonebortolin in #1096
  • Fixed: replace inline styling for <svg> icons by @captn3m0 in #1110
  • Vendor: update jekyll-anchor-headings, lunr.js by @mattxwang in #1071

Docs

  • Docs: fix typo in changelog links @koppor in #1000
  • Docs: update homepage (focus: new features, conciseness, deduplication) by @pdmosses in #1018
  • Docs: update README (focus: new features, conciseness, deduplication) by @pdmosses in #1019
  • Docs: fix two bugs in “Customization” (custom favicon, new annotation) by @mattxwang in #1090
  • Docs: Add warning about mandatory _-prefix for collections by @max06 in #1091
  • Docs: remove Google Analytics on main site by @mattxwang in #1113

New Contributors

Full Changelog: https://github.com/just-the-docs/just-the-docs/compare/v0.4.0.rc3…v0.4.0.rc4

Pre-release v0.4.0.rc3

Hi there! This is (actually) hopefully the last prerelease before v0.4.0; in particular, if we find that this prerelease is stable, we’ll re-release it as v0.4.0.

In general, this is a more mature pre-release; there are few new features. However, we’ll highlight @pdmosses’s work in #992 to better optimize nav generation for large sites (ex 100+ pages). We don’t expect this to affect most users; however, it is technically a breaking change, and we suggest testing your site before upgrading to this prerelease.

We want your feedback! Please open an issue or start a discussion and let us know!

As soon as we get stable test results from major downstream users, we’ll push out a v0.4.0 ASAP - closing out almost 2 years of backlogged work!

Trying out pre-release v0.4.0.rc3

Similar to the prior release, v0.4.0.rc3 is a release candidate for the theme (i.e., a pre-release) with release v0.4.0 coming soon. We want your help in testing the changes! As of now, the gem on RubyGems and the repository are updated to v0.4.0.rc3.

To use this RC explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.4.0.rc3

To use this RC explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.4.0.rc3"

By default, users will not be upgraded to 0.4.0.rc3. To enforce that explicitly, either:

  1. pin your gem version in your Gemfile, like so
    gem "just-the-docs", "0.3.3"
    
  2. freeze the remote_theme, like so
    remote_theme: just-the-docs/just-the-docs@v0.3.3
    

Features

Broadly, this prerelease is feature-light!

Bugfixes and Experimental Features

Note: experimental nav optimization may be unstable. Please give us feedback!

  • Added: experimental nav optimization for simple cases by @pdmosses in #992
  • Fixed: spacing issue when search is disabled by @henryiii in #960
  • Fixed: active grandchild link class by @pdmosses in #962
  • Fixed: HTML validation issues (W3C validator) by @mattxwang in #964
  • Fixed: link styling now uses text-decoration values by @mattxwang in #967
  • Fixed: cleaning up Jekyll excludes by @pdmosses in #985
  • Fixed: docs, narrow styling for code highlighting with line numbers by @pdmosses in #974
  • Fixed: default syntax highlighting in custom color schemes @pdmosses in #986

Full Changelog: https://github.com/just-the-docs/just-the-docs/compare/v0.4.0.rc2…v0.4.0.rc3

Pre-release v0.4.0.rc2

This website includes docs for some new features that are not available in v0.4.0.rc1 and v0.3.3!

Hey there! This is likely the last pre-release before releasing v0.4.0, which we plan on doing soon (i.e. before the end of the month) - very exciting! Some new additions to highlight:

  • significant improvement on build time of navigation panel by @pdmosses
    • this is big: for a community member with over 300 pages, we shortened the build time from 3 minutes to 30 seconds!
  • improved accessibility features led by @JPrevost
  • more docs!

The intention of this release candidate is to gather even more feedback on a potential v0.4.0. As it stands, we have not encountered any breaking changes with early adopters of v0.4.0.rc1. If you encounter any - for either of our pre-releases - please let us know!

Trying out pre-release v0.4.0.rc2

Similar to the prior release, v0.4.0.rc2 is a release candidate for the theme (i.e., a pre-release) with release v0.4.0 coming soon. We want your help in testing the changes! As of now, the gem on RubyGems and the repository are updated to v0.4.0.rc2.

To use this RC explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.4.0.rc2

To use this RC explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.4.0.rc2"

By default, users will not be upgraded to 0.4.0.rc2. To enforce that explicitly, either:

  1. pin your gem version in your Gemfile, like so
    gem "just-the-docs", "0.3.3"
    
  2. freeze the remote_theme, like so
    remote_theme: just-the-docs/just-the-docs@v0.3.3
    

Features

Documentation and Maintenance

New Contributors

Pre-release v0.4.0.rc1

We’re back!

Hi all! The Just the Docs team is excited to have our first pre-release in over two years! It is jam-packed with features and bugfixes that have been requested by the community since 2020. They include:

  • The new callouts component
  • Allowing pages and collections to coexist on the navigation pane
  • New styling: dark syntax highlighting, support for jekyll-asciidoc, word-wrapping instead of overflow for various elements
  • More customization: external nav links, custom nav footers, favicon includes, search color and placeholder configuration, mermaid.js support, and nav sorting
  • Over 20 bugfixes! Big ones include fixing the rake command, using relative_url, and search input color
  • More documentation, especially on using custom includes
  • Updating core dependencies to stable Ruby versions
  • A WIP template repository that allows you to setup your own repository using Just the Docs and GitHub Pages with one click - give it a shot! More documentation, etc. is on the way!

We want your feedback! Are these changes helpful? Are our docs easy to understand? Should new features like mermaid be opt-in or opt-out? Please open an issue or start a discussion and let us know!

Trying out pre-release v0.4.0.rc1

Due to the massive scope of these changes, we’re making v0.4.0.rc1 available as a release candidate for the theme (i.e., a pre-release) with release v0.4.0 coming soon. We want your help in testing the changes! As of now, the gem on RubyGems and the repository are updated to v0.4.0.rc1.

To use this RC explicitly as a remote theme:

remote_theme: just-the-docs/just-the-docs@v0.4.0.rc1

To use this RC explicitly as a gem-based theme, pin the version in your Gemfile and re-run bundle install or bundle update just-the-docs:

gem "just-the-docs", "0.4.0.rc1"

Staying on v0.3.3

If you’re not ready to make the switch, that’s alright! If your version of just-the-docs is pinned to v0.3.3 (i.e. by a Gemfile.lock or in remote_theme, then there’s nothing you need to do.

If you have not pinned your theme version, you should either:

  1. pin your gem version in your Gemfile, like so
    gem "just-the-docs", "0.3.3"
    
  2. freeze the remote_theme, like so
    remote_theme: just-the-docs/just-the-docs@v0.3.3
    

Use of branches for closed PRs (e.g., #466, #578) is now deprecated, as those branches have been (directly or indirectly) merged, and they may be deleted after the pre-release of v0.4.0.rc1.

Maintenance

Internally, our maintainer team has expanded: Patrick Marsceill, the original maintainer, has stepped down from an active role after almost 4 years! We’re very thankful for the work that he’s done to create and maintain one of the most popular Jekyll themes. Please join us in giving him thanks!

The new core team currently consists of @mattxwang, @pdmosses, @skullface, @dougaitken, and @max06. Over the past six months, we’ve been triaging and merging in PRs, as well as contributing our own fixes. We’ll continue to address open issues, merge in PRs from the community, and plan out the future of Just the Docs. If you’d like to contribute, now is a great time!

Roadmap

In the short-term, we’re committed to tidying up everything for a v0.4.0 release. This involves fixing bugs reported from the community in this pre-release, as well as continually merging in minor PRs.

We’re also scoping out medium and long-term projects, and want to keep you in the loop. These include:

  • upgrading to Jekyll 4, and stopping support for Jekyll 3
  • versioned docs - issue #728
  • improved accessibility - issues #566, #870
  • internationalization (i18n) - issue #59
  • recursive/multi-level navigation - PR #462
  • toggleable dark mode - issue #234

as well as DX improvements like better regression tests, CI, and tooling. If you’re interested in any of these, please join us on GitHub - any contribution (raising an issue, writing docs, or submitting a PR) is welcome!

Features

  • Added: Combination by @pdmosses in #578
    • Added: dark highlighting in #463
    • Added: pages and collections in #448
    • Added: callouts in #466
    • Fixed: breadcrumb behaviour … by @AdityaTiwari2102 in #477
    • Fixed: prevent rake command corrupting search data in #495 (also listed below)
    • Fixed: nested lists in #496
    • Fixed: set color for search input in #498 (also listed below)
    • Fixed: sites with no child pages (no PR)
    • Fixed: TOC/breadcrumbs for multiple collections in #494
    • Added: collection configuration option nav_fold (no PR)
    • Fixed: indentation and color for folded collection navigation (no PR)
    • Fixed: scroll navigation to show the link to the current page in #639
    • Fixed: Replace all uses of absolute_url by relative_url, by @svrooij in #544
  • Added: custom favicon _includes by @burner1024 in #364
  • Added: set color for search input by @pdmosses in #498
  • Added: search placeholder configuration by @mattxwang in #613
  • Added: ‘child_nav_order’ front matter to be able to sort navigation pages in reverse by @jmertic in #726
  • Added: nav_footer_custom include by @nathanjessen in #474
  • Added: style fixes for jekyll-asciidoc by @alyssais in #829
  • Added: mermaid.js support by @nascosto in #857
  • Added: support for external navigation links by @SPGoding in #876
  • Added: refactor mermaid config to use mermaid_config.js include, only require mermaid.version in _config.yml by @mattxwang in #909
  • Fixed: prepend site.collections_dir if exists by @alexsegura in #519
  • Fixed: nested task lists (#517) by @pdmosses in #855
  • Fixed: suppress Liquid processing in CSS comments by @pdmosses in #686
  • Fixed: prevent rake command from corrupting search data by @pdmosses in #495
  • Fixed: anchor heading links should be visible on focus by @jacobhq in #846
  • Fixed: add overflow-x: auto to figure.highlight by @iridazzle in #727
  • Fixed: add overflow-wrap: word-break to body by @iridazzle in #889
  • Fixed: vertical alignment for consecutive labels by @Eisverygoodletter in #893
  • Fixed: allow links to wrap by @pdmosses in #905
  • Fixed: nav scroll feature and absolute/relative URLs by @pdmosses in #898

Documentation

Maintenance

Dependencies

  • Upgrade to GitHub-native Dependabot by @dependabot-preview in #627
  • [Security] Bump y18n from 3.2.1 to 3.2.2 by @dependabot-preview in #606
  • [Security] Bump hosted-git-info from 2.7.1 to 2.8.9 by @dependabot-preview in #641
  • [Security] Bump lodash from 4.17.19 to 4.17.21 by @dependabot-preview in #640
  • [Security] Bump ini from 1.3.5 to 1.3.8 by @dependabot-preview in #511
  • Bump path-parse from 1.0.6 to 1.0.7 by @dependabot in #699
  • Bump ajv from 6.10.0 to 6.12.6 by @dependabot in #766
  • Bump prettier from 2.1.2 to 2.5.1 by @dependabot in #787
  • Bump prettier from 2.5.1 to 2.6.2 by @dependabot in #809
  • Bump prettier from 2.6.2 to 2.7.1 by @dependabot in #864

New Contributors

Full Changelog: https://github.com/just-the-docs/just-the-docs/compare/v0.3.3…v0.4.0.rc1

v0.3.3

🚀 Features

  • Add custom header and footer include files @CodeSandwich (#334)

🐛 Bug Fixes

  • Limit the effect of nav_exclude to the main navigation @pdmosses (#443)
  • Update normalize.scss @pdmosses (#444)
  • Update code.scss @pdmosses (#445)
  • Fix list alignment @pdmosses (#446)

🧰 Maintenance

  • Bump stylelint-config-primer from 9.0.0 to 9.2.1 @dependabot-preview (#451)
  • Bump stylelint from 13.6.1 to 13.7.2 @dependabot-preview (#440)
  • Bump @primer/css from 15.1.0 to 15.2.0 @dependabot-preview (#436)
  • Bump prettier from 2.1.1 to 2.1.2 @dependabot-preview (#429)

v0.3.2

Changes

  • Safe page sorting @pdmosses (#411)
  • v0.3.2 @pmarsceill (#388)

🚀 Features

  • make font-sizes sass variables so they can be changed @pdebruic (#361)
  • run the site locally inside docker container @fogfish (#398)
  • Feature/doc collections @SgtSilvio (#379)
  • Adjust dl layout @pdmosses (#401)

🐛 Bug Fixes

  • Add site.gh_edit_source to “Edit this page on GitHub” link @mrfleap (#418)
  • Inhibit text-transform for code in h4 @pdmosses (#404)
  • Fix native font stack precedence issue on Windows systems. @hvianna (#331)
  • Support for the linenos option on highlighted code @pdmosses (#375)
  • Update anchor_headings.html @pdmosses (#399)
  • Fix https @marksie1988 (#359)

🧰 Maintenance

  • Bump prettier from 2.0.5 to 2.1.1 @dependabot-preview (#427)
  • Bump prettier from 2.0.5 to 2.1.1 @dependabot-preview (#419)
  • [Security] Bump lodash from 4.17.15 to 4.17.19 @dependabot-preview (#389)
  • Bump @primer/css from 14.4.0 to 15.1.0 @dependabot-preview (#402)
  • Bump lodash from 4.17.15 to 4.17.19 @dependabot (#384)
  • Bump @primer/css from 14.4.0 to 15.0.0 @dependabot-preview (#371)

v0.3.1

Changes

🐛 Bug Fixes

  • Improve accessibility by adding label to Anchor links. @mscoutermarsh (#376)

🧰 Maintenance

  • Remove collapsible TOC on nav doc @pmarsceill (#368)
  • Pdmosses collapsible toc @pmarsceill (#367)

v0.3.0

Changes

  • v0.2.9 @pmarsceill (#306)

🚀 Features

  • Add print styles @pmarsceill (#362)
  • Navigation improvements and search sections @SgtSilvio (#352)

🐛 Bug Fixes

  • Remove constraint with jekyll 4.1.0 @PierrickMartos (#348)

🧰 Maintenance

  • Bump version numbers @pmarsceill (#360)
  • Bump stylelint from 13.3.3 to 13.6.1 @dependabot-preview (#343)
  • Bump stylelint-config-prettier from 8.0.1 to 8.0.2 @dependabot-preview (#349)

v0.2.9

Bug fixes

  • Horizontal Alignment #103 @pmarsceill
  • Code snippet in headers do not inherit font size #140 @pmarsceill
  • Fix duplicated title and description tags #294 @iefserge
  • Update nav.html for handling nav_exclude #282 @blawqchain
  • Fix duplicate entries in nav.html and default.html #239 @KasparEtter
  • Don’t show pages with no title (e.g. redirects in nav) https://github.com/pmarsceill/just-the-docs/pull/295/commits/672de29f2e332a9350af7237e4fb6693c848989e @SgtSilvio
  • [SEARCH RAKE] Fix search generator #319 @RoiArthurB

Enhancements

  • Improvement/custom themes #186 @SgtSilvio
  • feat: adds “edit this page” and “page last modified” to footer #217 @malsf21
  • feat: adds option to open aux links in new tab #229 @malsf21
  • Default nav order #236 @pdmosses
  • Enable IP anonymization in Google Analytics (GDPR) #250 @r-brown

closes #240 #308 #266 #140 #103

v0.2.8

Bugfixes

  • bugfix in search.rake #218 @tiaitsch85

Dependency and security updates:

  • Update jekyll requirement from ~> 3.8.5 to >= 3.8.5, < 4.1.0 #197 @dependabot-preview
  • Update rake requirement from ~> 12.3.1 to >= 12.3.1, < 13.1.0 #227 @dependabot-preview
  • Bump stylelint-config-primer from 8.0.0 to 9.0.0 #247 @dependabot-preview
  • Update bundler requirement from ~> 2.0.1 to ~> 2.1.4 #268 @dependabot-preview
  • Bump @primer/css from 12.7.0 to 14.3.0 #296 @dependabot-preview

Operations

  • Update CI to test multiple versions of Jekyll
  • Update CI to check the rake command that builds the search file

fixes #291 #256 #293 #177

v0.2.7

Bugs fixed

  • Anchor headings are now displayed on hover, not only on heading hover
  • Deduplicated anchor heading svg
  • If last page of site.html_pages was excluded from search, search json breaks
  • Config variable should be blanklines not blank_lines for html compression
  • list-style-none does not hide bullets on ul

Enhancements

  • Summary for child pages appears in generated TOC
  • Site logo configuration supported replacing title text with image
  • Allow custom CSS overrides (new scss partial at the end of the cascade) separate from variable overrides.
  • Configuration around search strings added to allow search for hyphenated words

Maintenance

  • Update docs to suggest using index.md as section page filename
  • Bump @primer/css from 12.6.0 to 12.7.0
  • Bump mixin-deep from 1.3.1 to 1.3.2
  • Bump stylelint-config-primer from 7.0.1 to 8.0.0

PR included

  • #98 by @stefanoborini Introduces the possibility for a summary in the table of contents
  • #141 by @ghabs Fix trailing comma bug in search-data.json
  • #153 by @jacobherrington Change button copy on theme preview
  • #181 by @m3nu Recommend using index.md as parent page for sections
  • #183 by @SgtSilvio Improve heading anchors
  • #187 by @SgtSilvio Improvement/site logo
  • #200 Bump mixin-deep from 1.3.1 to 1.3.2
  • #203 by @pdmosses Search config
  • #205 by @pdmosses Fix blank_lines var to blanklines in config.yml
  • #206 by @iamcarrico Allow for custom overrides by the user
  • #208 Bump @primer/css from 12.6.0 to 12.7.0
  • #213 Bump mixin-deep from 1.3.1 to 1.3.2
  • #214 Bump stylelint-config-primer from 7.0.1 to 8.0.0
  • #215 Bump @primer/css from 12.6.0 to 12.7.0

v0.2.6

Bugs fixed

  • Google Analytics tag has been updated #162
  • ~BaseURL has been modified #109~ Reverted – seems the existing implementation worked
  • Titles can now wrap fixes #106

Enhancements

  • Search now displays content preview #135
  • Custom footer content added #179
  • Now using GitHub Actions for CI #170

Maintenance

  • lunrjs upgraded #135
  • Nav generation is optimized #159
  • Stylelint upgrade #143
  • Stylelint config primer upgrade #149
  • Lodash upgrade #160

PR included

~#109 by @daviddarnes - Fix baseurl link~ Reverted #135 by @SgtSilvio - Upgrades lunr.js, improves search UI, adds heading anchors #152 by @yavorg - Improves syntax highlighting for js readablity #159 by @julienduchesne - Optimizes nav generation #162 by @nergmada - Modifies the google analytics code to match the new tags used by GA

v0.2.5

Bugs fixed

  • Duplicate title tag when Jekyll SEO Plugin gem is used #125 #126

Enhancements

  • Favicon support added #118

Maintenance

  • Bump stylelint-config-primer from 6.0.0 to 7.0.0 #123
  • Bump @primer/css from 12.2.3 to 12.3.1 #129
  • Add workflow to publish to GPR
  • Fix workflow to publish to Ruby Gems

v0.2.4

Bugs

  • #102 Remove unnecessary console.log() @JoeNyland
  • #97 Import custom Sass variable overrides before default variables are defined @montchr and @ptvandi

Additions

  • #117 Add links to docs for setting up GH pages locally @gnarea
  • #95 Add SEO and ‘lang’ param for _config @gebeto

v0.2.3

Enhancements

  • Adds ability to use Google Analytics tracking by @pmarsceill

Bug fixes

  • Fixes 404 error for “/assets/js//search-data.json” by @stephenedmondson
  • Fixes #80 Single quotes in the string were unescaped and ruby attempted variable substitution of amp within it (which failed) by @novelistparty
  • Fixes bug that would only show 2 or more search results (not one) by @ilivewithian
  • Fixes a typo on the layout example by @woernfl
  • Fixes #78 Page scroll position too far down on load by @pmarsceill
  • Fixds ability to nest ul in ol without breaking style or counters

Dependency updates

  • Bumps stylelint dependency from 9.9.0 to 9.10.1

v0.2.2

  • Bumps stylelint-config-primer to 3.0.1 #44
  • Bumps bundler req to 2.0.1 #61
  • Adds custom 404 page
  • Excludes package-lock.json from jekyll build #47
  • Fixes keyboard scrolling / focus #48
  • Adds ARIA roles to navigation elements
  • Adds support for optional page description metadata (if present in yaml front matter)
  • Addresses some issues with search in #46
  • Option to hide TOC on parent pages if turned off in page’s YAML front matter #30
  • Option to suppress an item from being indexed by search if present in page’s YAML front matter #32

v0.2.1

This update fixes security vulnerabilities in the lodash sub-dependency and bumps other dev dependencies to their latest version.

v0.2.0

Adds:

  • Dark mode via color_scheme parameter
  • Ability to exclude a page from the main nav with nav_exclude parameter closes #21
  • Ability for create children of children pages (3 nav levels) closes #25

Changes:

  • Permalink structure for tiered navigation has been updated
  • Some colors have been updated for consistency / accessibility

v0.1.6

Added

  • Support for task list styles #19
  • Configuration docs
  • Configuration option to enable / disable search
  • Normalize.scss dependency pulled into project #16 #

Fixed

  • Layout bug in navigation #17

v0.1.5

Major changes:

  • Fixed bug where the rake task would fail when the assets/js directory didn’t exist

v0.1.4

Major changes:

  • Adds Rake as a runtime dependency
  • Definition list styled
  • Sidebar and support cleaned up for smaller screen support
  • Updated some stale docs

v0.1.3

Major changes:

  • Fix path problems, typos, and general clean-up for OSS.

v0.1.2

Fix paths when deployed to gh-pages

v0.1.1

Major updates:

  • Adds search to mobile nav
  • Pulls footer to bottom of the page on mobile (not hidden in nav)

Minor updates:

  • Cleans up h1 typography spacing