Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,25 @@ updates:
patterns:
- "*"

- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
cooldown:
default-days: 14
labels:
- "dependencies"
- "frontend"
commit-message:
prefix: "deps"
prefix-development: "deps-dev"
include: "scope"
groups:
security:
applies-to: security-updates
patterns:
- "*"

- package-ecosystem: "github-actions"
directory: "/"
schedule:
Expand Down
12 changes: 12 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,9 @@ jobs:
- 'uv.lock'
docs:
- 'docs/**'
- 'package.json'
- 'package-lock.json'
- 'scripts/vendor-docs-assets.mjs'
frontend:
- 'src/spellbot/web/templates/**'
- 'tests-js/**'
Expand Down Expand Up @@ -205,6 +208,15 @@ jobs:
- name: Checkout Source
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6

- name: Setup Node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: "24"
cache: "npm"

- name: Vendor docs assets
run: npm ci && npm run docs:vendor

- name: Setup Ruby
uses: ruby/setup-ruby@89f90524b88a01fe6e0b732220432cc6142926af # v1
with:
Expand Down
12 changes: 12 additions & 0 deletions .github/workflows/pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ on:
paths:
- "docs/**"
- ".github/workflows/pages.yml"
- "package.json"
- "package-lock.json"
- "scripts/vendor-docs-assets.mjs"
workflow_dispatch:

env:
Expand All @@ -28,6 +31,15 @@ jobs:
- name: Checkout Source
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6

- name: Setup Node
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: "24"
cache: "npm"

- name: Vendor docs assets
run: npm ci && npm run docs:vendor

- name: Setup Ruby
uses: ruby/setup-ruby@89f90524b88a01fe6e0b732220432cc6142926af # v1
with:
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,10 @@ demo_analytics.html
docs/_site
docs/.bundle/config
docs/.DS_Store
docs/.jekyll-cache
docs/.sass-cache
docs/.vagrant
docs/assets/vendor
docs/beautiful-jekyll-theme-*.gem
docs/ehthumbs.db
docs/Gemfile.lock
Expand Down
4 changes: 2 additions & 2 deletions .oxfmtrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"printWidth": 100,
"ignorePatterns": [
"docs/assets/js/beautifuljekyll.js",
"docs/assets/js/jquery-*.js",
"docs/assets/js/staticman.js"
"docs/assets/js/staticman.js",
"docs/assets/vendor/**"
]
}
4 changes: 2 additions & 2 deletions .oxlintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
"$schema": "./node_modules/oxlint/configuration_schema.json",
"ignorePatterns": [
"docs/assets/js/beautifuljekyll.js",
"docs/assets/js/jquery-*.js",
"docs/assets/js/staticman.js"
"docs/assets/js/staticman.js",
"docs/assets/vendor/**"
],
"categories": {
"correctness": "error"
Expand Down
6 changes: 3 additions & 3 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Vendored / third-party CSS assets — do not format
docs/assets/css/bootstrap-social.css
docs/assets/css/beautifuljekyll.css
docs/assets/css/beautifuljekyll-minimal.css
docs/assets/css/pygment_highlights.css
docs/assets/css/staticman.css

# Vendored from npm at build time (scripts/vendor-docs-assets.mjs)
docs/assets/vendor/
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
### Added

- More formatting tools.
- npm Dependabot coverage; vendor the docs site's frontend libraries (jQuery, Bootstrap, popper, Font Awesome) from npm instead of pinned CDN URLs.
- Trim unused beautiful-jekyll theme features from the docs site: blog posts (post/home layouts, tags, RSS feed, pagination), all comment providers and Staticman, navbar search, MathJax, the minimal layout, and disabled analytics providers (kept gtag). Removed the third-party CDN scripts these pulled in along the way.

## [v21.3.2](https://github.com/lexicalunit/spellbot/releases/tag/v21.3.2) - 2026-06-19

Expand Down
13 changes: 12 additions & 1 deletion docs/Makefile
Original file line number Diff line number Diff line change
@@ -1,12 +1,23 @@
.PHONY: all run
.PHONY: all run build

all: run

run:
cd .. && npm ci && npm run docs:vendor
@command -v rbenv >/dev/null 2>&1 || brew install rbenv
rbenv install --skip-existing
eval "$$(rbenv init - zsh)" && \
rbenv rehash && \
(bundle update --bundler 2>/dev/null || true) && \
bundle install && \
bundle exec jekyll serve

build:
cd .. && npm ci && npm run docs:vendor
@command -v rbenv >/dev/null 2>&1 || brew install rbenv
rbenv install --skip-existing
eval "$$(rbenv init - zsh)" && \
rbenv rehash && \
(bundle update --bundler 2>/dev/null || true) && \
bundle install && \
bundle exec jekyll build --strict_front_matter
2 changes: 0 additions & 2 deletions docs/_config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,6 @@ timezone: "America/Toronto"
markdown: kramdown
highlighter: rouge
permalink: /:year-:month-:day-:title/
paginate: 5

kramdown:
input: GFM
Expand Down Expand Up @@ -281,7 +280,6 @@ exclude:
- docs/

plugins:
- jekyll-paginate
- jekyll-redirect-from
- jekyll-sitemap

Expand Down
8 changes: 0 additions & 8 deletions docs/_includes/cloudflare_analytics.html

This file was deleted.

7 changes: 0 additions & 7 deletions docs/_includes/commentbox.html

This file was deleted.

8 changes: 0 additions & 8 deletions docs/_includes/comments.html

This file was deleted.

19 changes: 0 additions & 19 deletions docs/_includes/disqus.html

This file was deleted.

16 changes: 0 additions & 16 deletions docs/_includes/fb-comment.html

This file was deleted.

18 changes: 0 additions & 18 deletions docs/_includes/footer-minimal.html

This file was deleted.

16 changes: 0 additions & 16 deletions docs/_includes/giscus-comment.html

This file was deleted.

26 changes: 0 additions & 26 deletions docs/_includes/google_analytics.html

This file was deleted.

5 changes: 0 additions & 5 deletions docs/_includes/gtm_body.html

This file was deleted.

11 changes: 0 additions & 11 deletions docs/_includes/gtm_head.html

This file was deleted.

14 changes: 0 additions & 14 deletions docs/_includes/head.html
Original file line number Diff line number Diff line change
Expand Up @@ -54,15 +54,7 @@
<meta name="keywords" content="{{ site.keywords }}">
{% endif %}

{% if site.rss-description %}
<link rel="alternate" type="application/rss+xml" title="{{ site.title }}" href="{{ '/feed.xml' | absolute_url }}">
{% endif %}

{% include gtag.html %}
{% include gtm_head.html %}
{% include google_analytics.html %}
{% include cloudflare_analytics.html %}
{% include mathjax.html %}

{% if layout.common-ext-css %}
{% for css in layout.common-ext-css %}
Expand Down Expand Up @@ -155,12 +147,6 @@
<meta name="twitter:image" content="{{ img | absolute_url }}">
{% endif %}

{% include matomo.html %}

{% if page.comments and site.staticman.repository and site.staticman.branch %}
<link rel="stylesheet" href="{{ "/assets/css/staticman.css" | relative_url }}">
{% endif %}

{% assign favicon_exists = site.static_files | where: "path", "/favicon.ico" | size %}
{% if favicon_exists == 1 %}
<link rel="icon" href="{{ '/favicon.ico' | relative_url }}" />
Expand Down
3 changes: 0 additions & 3 deletions docs/_includes/header.html
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,6 @@ <h2 class="{{ include.type }}-subheading">{{ page.subtitle | strip_html }}</h2>
Last updated {{ page.last-updated | date: date_format }}
</span>
{% endif %}
{% if page.readtime %}
{% include readtime.html %}
{% endif %}
{% endif %}
</div>
</div>
Expand Down
12 changes: 0 additions & 12 deletions docs/_includes/mathjax.html

This file was deleted.

17 changes: 0 additions & 17 deletions docs/_includes/matomo.html

This file was deleted.

Loading