Skip to content

Commit ce2d122

Browse files
authored
chore: upgrade just-the-docs v0.5→v0.10.1, fix SEO, widen content (#61)
* chore: upgrade just-the-docs v0.5.0 to v0.10.1, fix SEO, widen content area - Upgrade just-the-docs theme from v0.5.0 to v0.10.1 (Jekyll 4.3→4.4.1) - Migrate GA tracking from deprecated ga_tracking config to custom head include - Fix repository config and baseurl for correct local/production builds - Fix 3 short meta descriptions (integrations, gRPC, Metrics) to 120+ chars - Eliminate duplicate nav_order (architecture + config-reference both had 5) - Renumber all top-level page nav_order values for contiguous sidebar ordering - Add nav_order to all 16 howto child pages for deterministic sidebar order - Create explicit robots.txt with production sitemap URL - Widen main content area from 50rem (800px) to 66rem (1056px) - Fix Playwright strict mode violations in content tests * docs: add protovalidate and content-type to homepage DRY table * fix: address PR review — robots.txt layout, GA guard, Ruby 3.2 in CI - robots.txt: add layout: null and sitemap: false to prevent HTML wrapping - head_custom.html: guard GA snippet with jekyll.environment == production - CI workflows: upgrade Ruby 3.1 → 3.2 (public_suffix 7.x requires >= 3.2)
1 parent cb32d61 commit ce2d122

32 files changed

Lines changed: 102 additions & 50 deletions

.github/workflows/jekyll.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
- name: Setup Ruby
3737
uses: ruby/setup-ruby@c515ec17f69368147deb311832da000dd229d338 # v1.297.0
3838
with:
39-
ruby-version: '3.1' # Not needed with a .ruby-version file
39+
ruby-version: '3.2' # public_suffix 7.x requires Ruby >= 3.2
4040
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
4141
cache-version: 0 # Increment this number if you need to re-download cached gems
4242
- name: Setup Pages

.github/workflows/playwright.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
- name: Setup Ruby
2121
uses: ruby/setup-ruby@c515ec17f69368147deb311832da000dd229d338 # v1.297.0
2222
with:
23-
ruby-version: "3.1"
23+
ruby-version: "3.2"
2424
bundler-cache: true
2525

2626
- name: Build Jekyll site

FAQ.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
layout: default
33
title: "FAQ"
4-
nav_order: 8
4+
nav_order: 7
55
description: "Frequently asked questions about ColdBrew: gRPC framework configuration, interceptors, tracing, and troubleshooting"
66
permalink: /faq
77
---

Gemfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
source 'https://rubygems.org'
22

33
gem "jekyll", "~> 4.3"
4-
gem "just-the-docs", "0.5.0"
4+
gem "just-the-docs", "0.10.1"
55
gem "jekyll-default-layout"
66
gem "jekyll-github-metadata", ">= 2.15"
77
gem "webrick", "~> 1.7"

Gemfile.lock

Lines changed: 47 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
GEM
22
remote: https://rubygems.org/
33
specs:
4-
addressable (2.8.4)
5-
public_suffix (>= 2.0.2, < 6.0)
4+
addressable (2.9.0)
5+
public_suffix (>= 2.0.2, < 8.0)
66
base64 (0.3.0)
77
bigdecimal (4.0.1)
88
colorator (1.1.0)
9-
concurrent-ruby (1.2.2)
9+
concurrent-ruby (1.3.6)
1010
csv (3.3.5)
1111
em-websocket (0.5.3)
1212
eventmachine (>= 0.12.9)
@@ -16,23 +16,36 @@ GEM
1616
faraday-net_http (>= 2.0, < 3.1)
1717
ruby2_keywords (>= 0.0.4)
1818
faraday-net_http (3.0.2)
19-
ffi (1.15.5)
19+
ffi (1.17.4-arm64-darwin)
20+
ffi (1.17.4-x86_64-darwin)
21+
ffi (1.17.4-x86_64-linux-gnu)
2022
forwardable-extended (2.6.0)
21-
google-protobuf (3.22.3)
22-
http_parser.rb (0.8.0)
23-
i18n (1.12.0)
23+
google-protobuf (4.34.1-arm64-darwin)
24+
bigdecimal
25+
rake (~> 13.3)
26+
google-protobuf (4.34.1-x86_64-darwin)
27+
bigdecimal
28+
rake (~> 13.3)
29+
google-protobuf (4.34.1-x86_64-linux-gnu)
30+
bigdecimal
31+
rake (~> 13.3)
32+
http_parser.rb (0.8.1)
33+
i18n (1.14.8)
2434
concurrent-ruby (~> 1.0)
25-
jekyll (4.3.2)
35+
jekyll (4.4.1)
2636
addressable (~> 2.4)
37+
base64 (~> 0.2)
2738
colorator (~> 1.0)
39+
csv (~> 3.0)
2840
em-websocket (~> 0.5)
2941
i18n (~> 1.0)
3042
jekyll-sass-converter (>= 2.0, < 4.0)
3143
jekyll-watch (~> 2.0)
44+
json (~> 2.6)
3245
kramdown (~> 2.3, >= 2.3.1)
3346
kramdown-parser-gfm (~> 1.0)
3447
liquid (~> 4.0)
35-
mercenary (>= 0.3.6, < 0.5)
48+
mercenary (~> 0.3, >= 0.3.6)
3649
pathutil (~> 0.9)
3750
rouge (>= 3.0, < 5.0)
3851
safe_yaml (~> 1.0)
@@ -43,8 +56,10 @@ GEM
4356
jekyll-github-metadata (2.16.0)
4457
jekyll (>= 3.4, < 5.0)
4558
octokit (>= 4, < 7, != 4.4.0)
46-
jekyll-sass-converter (3.0.0)
47-
sass-embedded (~> 1.54)
59+
jekyll-include-cache (0.2.1)
60+
jekyll (>= 3.7, < 5.0)
61+
jekyll-sass-converter (3.1.0)
62+
sass-embedded (~> 1.75)
4863
jekyll-seo-tag (2.8.0)
4964
jekyll (>= 3.8, < 5.0)
5065
jekyll-sitemap (1.4.0)
@@ -54,16 +69,19 @@ GEM
5469
nokogiri (~> 1.10)
5570
jekyll-watch (2.2.1)
5671
listen (~> 3.0)
57-
just-the-docs (0.5.0)
72+
json (2.19.3)
73+
just-the-docs (0.10.1)
5874
jekyll (>= 3.8.5)
75+
jekyll-include-cache
5976
jekyll-seo-tag (>= 2.0)
6077
rake (>= 12.3.1)
61-
kramdown (2.4.0)
62-
rexml
78+
kramdown (2.5.2)
79+
rexml (>= 3.4.4)
6380
kramdown-parser-gfm (1.1.0)
6481
kramdown (~> 2.0)
6582
liquid (4.0.4)
66-
listen (3.8.0)
83+
listen (3.10.0)
84+
logger
6785
rb-fsevent (~> 0.10, >= 0.10.3)
6886
rb-inotify (~> 0.9, >= 0.9.10)
6987
logger (1.7.0)
@@ -78,29 +96,29 @@ GEM
7896
ostruct (0.6.3)
7997
pathutil (0.16.2)
8098
forwardable-extended (~> 2.6)
81-
public_suffix (5.0.1)
99+
public_suffix (7.0.5)
82100
racc (1.6.2)
83-
rake (13.0.6)
101+
rake (13.3.1)
84102
rb-fsevent (0.11.2)
85-
rb-inotify (0.10.1)
103+
rb-inotify (0.11.1)
86104
ffi (~> 1.0)
87-
rexml (3.2.5)
88-
rouge (3.30.0)
105+
rexml (3.4.4)
106+
rouge (4.7.0)
89107
ruby2_keywords (0.0.5)
90108
safe_yaml (1.0.5)
91-
sass-embedded (1.58.3-arm64-darwin)
92-
google-protobuf (~> 3.21)
93-
sass-embedded (1.58.3-x86_64-darwin)
94-
google-protobuf (~> 3.21)
95-
sass-embedded (1.58.3-x86_64-linux-gnu)
96-
google-protobuf (~> 3.21)
109+
sass-embedded (1.99.0-arm64-darwin)
110+
google-protobuf (~> 4.31)
111+
sass-embedded (1.99.0-x86_64-darwin)
112+
google-protobuf (~> 4.31)
113+
sass-embedded (1.99.0-x86_64-linux-gnu)
114+
google-protobuf (~> 4.31)
97115
sawyer (0.9.2)
98116
addressable (>= 2.3.5)
99117
faraday (>= 0.17.3, < 3)
100118
terminal-table (3.0.2)
101119
unicode-display_width (>= 1.1.1, < 3)
102-
unicode-display_width (2.4.2)
103-
webrick (1.8.1)
120+
unicode-display_width (2.6.0)
121+
webrick (1.9.2)
104122

105123
PLATFORMS
106124
arm64-darwin-22
@@ -117,7 +135,7 @@ DEPENDENCIES
117135
jekyll-github-metadata (>= 2.15)
118136
jekyll-sitemap
119137
jekyll-target-blank
120-
just-the-docs (= 0.5.0)
138+
just-the-docs (= 0.10.1)
121139
logger
122140
ostruct
123141
webrick (~> 1.7)

Index.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,9 @@ ColdBrew handles all of it. You write business logic, ColdBrew handles everythin
146146
| Nothing | Prometheus metrics at `/metrics` — per-method latency, error rate, QPS |
147147
| Nothing | Health/ready probes, graceful shutdown, [pprof] profiling |
148148
| Nothing | Interceptor chain: logging, tracing, metrics, panic recovery |
149+
| Proto validation annotations | Request validation via [Protovalidate]`InvalidArgument` on failure, covers gRPC and HTTP |
149150
| Nothing | [vtprotobuf] codec — up to ~4x faster proto marshal |
151+
| Nothing | HTTP content negotiation — JSON, `application/proto`, `application/protobuf` out of the box |
150152
| Nothing | HTTP [gzip/zstd][zstd] compression, container-aware [GOMAXPROCS][automaxprocs] |
151153

152154
New services inherit all of this automatically via the [cookiecutter template](/getting-started) — zero boilerplate to write, zero infrastructure to maintain.
@@ -157,7 +159,7 @@ ColdBrew composes proven Go libraries — not replacements:
157159

158160
| Category | Libraries |
159161
|----------|----------|
160-
| **API** | [grpc] + [grpc-gateway] — gRPC server with automatic REST gateway and Swagger UI |
162+
| **API** | [grpc] + [grpc-gateway] — gRPC server with automatic REST gateway and Swagger UI; [Protovalidate] — request validation |
161163
| **Observability** | [OpenTelemetry] + [Jaeger] — distributed tracing; [Prometheus] + [go-grpc-middleware] — metrics |
162164
| **Monitoring** | [New Relic] — APM; [Sentry] — error tracking and alerting |
163165
| **Performance** | [vtprotobuf] — fast serialization; [klauspost/compress][zstd] — gzip/zstd HTTP compression |

Packages.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ layout: default
33
title: Packages
44
description: "ColdBrew Go packages: core, interceptors, errors, log, tracing, options, grpcpool, and data-builder API reference"
55
permalink: /packages
6-
nav_order: 9
6+
nav_order: 8
77
---
88
# Packages
99
{: .no_toc }

_config.yml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
title: ColdBrew
22
description: "ColdBrew is a Go microservice framework for building production-grade gRPC services with built-in observability, resilience, and HTTP gateway support."
3-
baseurl: "/" # the subpath of your site, e.g. /blog
3+
baseurl: "" # the subpath of your site, e.g. /blog
44
url: "https://docs.coldbrew.cloud"
5-
repository: go-coldbrew/
5+
repository: go-coldbrew/docs.coldbrew.cloud
66
logo: "/assets/images/coldbrew.png"
77
favicon_ico: "/assets/images/coldbrew.ico"
88

@@ -50,9 +50,6 @@ gh_edit_branch: "main" # the branch that your docs is served from
5050
# gh_edit_source: docs # the source that your files originate from
5151
gh_edit_view_mode: "tree" # "tree" or "edit" if you want the user to jump into the editor immediately
5252

53-
ga_tracking: "G-ZRR08Y74FZ"
54-
55-
#color_scheme: dark
5653
plugins:
5754
- jekyll-default-layout
5855
- jekyll-seo-tag

_includes/head_custom.html

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{% if jekyll.environment == 'production' %}
2+
<!-- Google tag (gtag.js) -->
3+
<script async src="https://www.googletagmanager.com/gtag/js?id=G-ZRR08Y74FZ"></script>
4+
<script>
5+
window.dataLayer = window.dataLayer || [];
6+
function gtag(){dataLayer.push(arguments);}
7+
gtag('js', new Date());
8+
gtag('config', 'G-ZRR08Y74FZ');
9+
</script>
10+
{% endif %}

_sass/custom/setup.scss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
$content-width: 66rem;

0 commit comments

Comments
 (0)