Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
74 commits
Select commit Hold shift + click to select a range
7c8f2b3
feat(website): migrate landing page and demos
Richardpwe Sep 2, 2026
b64ae2a
build(website): add deterministic development tooling
Richardpwe Sep 2, 2026
f064a53
test(website): add validation and browser coverage
Richardpwe Sep 2, 2026
ed2f92e
ci(website): validate GitHub Pages output
Richardpwe Sep 2, 2026
3bb1915
docs(website): add pre-release engineering tasks
Richardpwe Sep 2, 2026
da99b9b
fix(website): align Server API release status
Richardpwe Sep 2, 2026
ae40402
test(website): stabilize carousel interactions
Richardpwe Sep 2, 2026
6e2883a
fix(website): name Server API specification consistently
Richardpwe Sep 2, 2026
6f75a50
build(website): generate downloadable demo packages
Richardpwe Sep 2, 2026
1cab5b8
feat(website): redesign responsive demo carousel
Richardpwe Sep 2, 2026
28b8e9e
build(website): add responsive lower-third package
Richardpwe Sep 2, 2026
d188ee9
feat(website): expand demo carousel
Richardpwe Sep 2, 2026
777ede3
feat(website): improve responsive demo formats
Richardpwe Sep 2, 2026
795c9ac
fix(website): stabilize demo readiness
Richardpwe Sep 2, 2026
77703d7
docs(website): record marketing copy review
Richardpwe Sep 2, 2026
070a5dc
docs(website): record ecosystem approvals
Richardpwe Sep 2, 2026
85c0c60
test(website): add Firefox and WebKit coverage
Richardpwe Sep 2, 2026
c11fa3a
docs(website): complete browser coverage task
Richardpwe Sep 2, 2026
939af0a
fix(website): improve keyboard accessibility
Richardpwe Sep 2, 2026
abb44d2
fix(website): respect reduced motion preferences
Richardpwe Sep 2, 2026
68df44a
test(website): add accessibility coverage
Richardpwe Sep 2, 2026
2c2f3fa
docs(website): move content checks to release review
Richardpwe Sep 2, 2026
5f74b3a
feat(website): prepare social metadata
Richardpwe Sep 2, 2026
7768421
feat(website): add social preview image
Richardpwe Sep 2, 2026
e84f369
refactor(website): reuse canonical OGraf logo
Richardpwe Sep 2, 2026
c2aa781
refactor(examples): consolidate website graphics
Richardpwe Sep 2, 2026
091b99b
refactor(website): use shared demo player
Richardpwe Sep 2, 2026
e1f8017
feat(website): generate example downloads in browser
Richardpwe Sep 2, 2026
1b9ac13
perf(website): optimize media loading
Richardpwe Sep 3, 2026
0e87ff0
fix(website): fit multi-device stage on laptops
Richardpwe Sep 3, 2026
d65fd53
test(website): streamline browser matrix
Richardpwe Sep 3, 2026
f749326
fix(website): prevent stage label overlap
Richardpwe Sep 3, 2026
77fd4f1
fix(website): separate stage devices from controls
Richardpwe Sep 3, 2026
8703e70
fix(website): improve stage heading contrast
Richardpwe Sep 3, 2026
a01bbd3
fix(website): refine stage and code presentation
Richardpwe Sep 3, 2026
7485768
fix(website): keep carousel players at a consistent height
Richardpwe Sep 3, 2026
a1fdd6a
perf(website): use images for carousel backgrounds
Richardpwe Sep 3, 2026
5464839
test(website): update reduced motion media expectations
Richardpwe Sep 3, 2026
ebf05b0
fix(website): center code window traffic light icons
Richardpwe Sep 3, 2026
4bb5ae1
fix(website): optically center traffic light symbols
Richardpwe Sep 3, 2026
193dd98
feat(website): add CBC organisation logo
Richardpwe Sep 3, 2026
c3f948e
chore(website): remove duplicate ITN logo
Richardpwe Sep 3, 2026
3dde1ec
chore(website): normalize logo filenames
Richardpwe Sep 3, 2026
34baec5
feat(examples): add thumbnails to website demos
Richardpwe Sep 3, 2026
6f76085
feat(website): link hero thumbnails to demos
Richardpwe Sep 3, 2026
da1f17d
test(website): cover hero demo navigation
Richardpwe Sep 3, 2026
b8e9ddd
fix(website): cover ultrawide hero viewports
Richardpwe Sep 3, 2026
54c1369
fix(website): align demo carousel cards
Richardpwe Sep 3, 2026
8c141b7
fix(examples): align demos with OGraf lifecycle
Richardpwe Sep 3, 2026
ff5b99c
test(examples): add OGraf contract validation
Richardpwe Sep 3, 2026
8c05aef
feat(examples): add exported OGraf packages
Richardpwe Sep 4, 2026
bfa05c2
perf(examples): reduce weather package size
Richardpwe Sep 4, 2026
1113145
fix(examples): load weather image in sandboxed renderers
Richardpwe Sep 4, 2026
dc52869
fix(examples): preserve embedded weather image
Richardpwe Sep 4, 2026
3ca625c
feat(website): showcase additional OGraf examples
Richardpwe Sep 4, 2026
9474c04
fix(website): place demo actions before fields
Richardpwe Sep 4, 2026
93dbbb9
feat(examples): update headline thumbnail
Richardpwe Sep 4, 2026
22e824b
feat(website): distinguish l3rd demo artwork
Richardpwe Sep 4, 2026
cedc18b
feat(examples): update bar chart package
Richardpwe Sep 4, 2026
680b329
fix(examples): return current step from play actions
Richardpwe Sep 4, 2026
8435d34
fix(website): normalize demo catalog hashes
Richardpwe Sep 4, 2026
17de7db
fix(website): improve mobile demo carousel
Richardpwe Sep 4, 2026
240b39e
fix(website): reset demo graphics after stop
Richardpwe Sep 4, 2026
fad1fea
docs(examples): refine exported package notes
Richardpwe Sep 4, 2026
64fded9
feat(website): prepare production indexing and SEO
Richardpwe Sep 4, 2026
5d02a74
docs(website): simplify maintenance documentation
Richardpwe Sep 4, 2026
7f9242d
docs(website): clarify website introduction
Richardpwe Sep 4, 2026
ca53236
fix(website): contain mobile format selector
Richardpwe Sep 4, 2026
b0010d5
chore(website): hide placeholder testimonials
Richardpwe Sep 4, 2026
298f46d
style(website): normalize tracked whitespace
Richardpwe Sep 4, 2026
713a741
docs(website): remove preview-specific guidance
Richardpwe Sep 4, 2026
0b3e610
ci(website): target production website changes
Richardpwe Sep 4, 2026
6cca2b8
docs(website): correct animation dependencies
Richardpwe Sep 4, 2026
1a7e5bd
test(website): wait for carousel transition
Richardpwe Sep 4, 2026
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
97 changes: 97 additions & 0 deletions .github/workflows/website-checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
name: Website checks

on:
push:
branches:
- main
paths:
- ".github/workflows/website-checks.yml"
- "_config.yml"
- "CHANGELOG.md"
- "CNAME"
- "docs/logo/**"
- "index.html"
- "robots.txt"
- "site.webmanifest"
- "sitemap.xml"
- "v1/examples/**"
- "v1/specification/**"
- "website/**"
pull_request:
paths:
- ".github/workflows/website-checks.yml"
- "_config.yml"
- "CHANGELOG.md"
- "CNAME"
- "docs/logo/**"
- "index.html"
- "robots.txt"
- "site.webmanifest"
- "sitemap.xml"
- "v1/examples/**"
- "v1/specification/**"
- "website/**"
workflow_dispatch:
inputs:
full_matrix:
description: Run all tests in all five browser and viewport projects
required: false
default: false
type: boolean

permissions:
contents: read

jobs:
validate:
name: Validate Jekyll output
runs-on: ubuntu-latest
timeout-minutes: 20

steps:
- name: Check out repository
uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09

- name: Set up Node.js
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444
with:
node-version: 24
cache: npm
cache-dependency-path: website/_tooling/package-lock.json

- name: Install website tooling
run: npm --prefix website/_tooling ci --ignore-scripts

- name: Verify vendored assets
run: |
npm --prefix website/_tooling run vendor-assets
git diff --exit-code -- website/assets website/_tooling/package-lock.json

- name: Validate source and manifests
run: npm --prefix website/_tooling run validate

- name: Build the GitHub Pages site
uses: actions/jekyll-build-pages@44a6e6beabd48582f863aeeb6cb2151cc1716697
with:
source: ./
destination: ./_site
token: ${{ secrets.GITHUB_TOKEN }}

- name: Install Playwright browsers
run: npx --prefix website/_tooling playwright install --with-deps chromium firefox webkit

- name: Test generated site with the lean browser matrix
if: ${{ github.event_name != 'workflow_dispatch' || inputs.full_matrix != true }}
run: npm --prefix website/_tooling run test:browsers
env:
CI: true
REQUIRE_JEKYLL_OUTPUT: "1"
SITE_ROOT: ../../_site

- name: Test generated site with the full browser matrix
if: ${{ github.event_name == 'workflow_dispatch' && inputs.full_matrix == true }}
run: npm --prefix website/_tooling run test:browsers:full
env:
CI: true
REQUIRE_JEKYLL_OUTPUT: "1"
SITE_ROOT: ../../_site
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,9 @@ __old_from_tmp_repo/

# scripts used in local testing
local-scripts/

# Website tooling output
website/_tooling/node_modules/
website/_tooling/playwright-report/
website/_tooling/test-results/
_site/
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,3 +41,9 @@ Useful resources:

* The **[OGraf Devtool](https://github.com/SuperFlyTV/ograf-devtool)** is a tool for developing OGraf graphics.
* The **[OGraf Simple Rendering System](https://github.com/SuperFlyTV/ograf-server)** can be used to play OGraf Graphics in a browser (for use in any existing system capable of rendering HTML graphics).

### Website

The landing page is served from the repository root by GitHub Pages. See
[website/README.md](./website/README.md) for local development and instructions for
maintaining website examples and logos.
5 changes: 5 additions & 0 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
exclude:
- website/README.md
- website/_tooling

keep_files: []
Loading
Loading