Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
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
83 changes: 83 additions & 0 deletions .github/dictionary.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
export default [
'THEOplayer',
"THEOplayer's",
'theoplayer',
'Dolby',
"Dolby's",
'OptiView',
'THEOlive',
'theolive',
'Millicast',
'millicast',
'THEOportal',
/SDK[s]?/,
'HLS',
'MPEG',
'DASH',
'DRM',
'CDN', // content delivery network
'Android',
'iOS',
'iPhone',
'iPad',
'iPadOS',
'tvOS',
'Tizen',
'webOS',
'Chromecast',
'AirPlay',
/[bB]undler[s]?/,
/[wW]ebpack/,
/[vV]ite/,
/[rR]ollup/,
'WebAssembly',
'transmux',
'transmuxing',
'AES-128',
'AAC',
'MP4',
'fMP4',
'MSE',
'URI',
/[bB]itrate/,
'CSAI', // Client-Side Ad Insertion
'SSAI', // Server-Side Ad Insertion
'SGAI', // Server-Guided Ad Insertion
'IMA', // Google Interactive Media Ads
'DAI', // Google Dynamic Ad Insertion
'CAF', // Google Cast Application Framework
'AGWG', // https://www.w3.org/WAI/about/groups/agwg/
'UAAG', // https://www.w3.org/WAI/standards-guidelines/uaag/
/[fF]ullscreen/,
/iframe[s]?/,
/[aA]utoplay/,
'CMS', // Content Management System
/IE\d*/, // Internet Explorer 11
/[uU]nmuted/,
/[tT]ooltip[s]?/,
/[pP]rogrammatical(ly)?/,
'VoiceOver', // VoiceOver on Mac
'playhead',
/[cC]hromeless/,
/[pP]reload/,
'LCEVC',
'LCEVCdecJS',
'async',
/[sS]kippable/,
'onwards',
'Uplynk', // https://www.uplynk.com/
'lifecycle',
'TabItem',
'AGP', // Android Gradle Plugin
'AndroidX',
'Cronet', // Chromium network stack
'Gradle',
/[iI]ntegration[s]?/,
/[jJ]etpack/, // Android Jetpack
'Media3',
'MediaTailor',
/[mM]odularized/,
'Xcode',
/[iI]nitializer/,
'CocoaPods',
];
49 changes: 49 additions & 0 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ on:
- synchronize
jobs:
pr-lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout
Expand All @@ -24,3 +25,51 @@ jobs:
- run: npm run check-format
- run: npm run lint
- run: npm run typecheck

pr-spellcheck:
# https://github.com/austenstone/spellchecker-cli-action-summary/blob/v1.0/.github/workflows/spellcheck.yml
name: Spellcheck
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
with:
fetch-depth: 1
submodules: true
- name: Use Node.js 22
uses: actions/setup-node@v6
with:
node-version: 22
cache: 'npm'
- run: npm ci
- name: Get changed files
id: changed-files
if: ${{ github.event_name == 'push' || github.event_name == 'pull_request' }}
uses: tj-actions/changed-files@v47.0.4
with:
base_sha: ${{ github.event.pull_request.base.sha }}
exclude_submodules: true
files: |
**/*.md
**/*.mdx
- name: Run spellchecker
id: spellchecker
if: ${{ steps.changed-files.outputs.any_changed }}
continue-on-error: true
# language=bash
run: |
npm run spellcheck -- \
--files $CHANGED_FILES \
--reports "spell-check.json"
env:
CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_files }}
- name: Upload spellchecker results
uses: actions/upload-artifact@v6
if: ${{ steps.spellchecker.conclusion == 'success' }}
with:
path: spell-check.json
- name: Create summary
uses: austenstone/spellchecker-cli-action-summary@v1.0
with:
file-json: spell-check.json
files-changed: ${{ steps.changed-files.outputs.all_changed_files }}
10 changes: 9 additions & 1 deletion .prettierrc
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,13 @@
"trailingComma": "es5",
"tabWidth": 2,
"singleQuote": true,
"printWidth": 150
"printWidth": 150,
"overrides": [
{
"files": ["*.json", "*.jsonc"],
"options": {
"trailingComma": "none"
}
}
]
}
15 changes: 15 additions & 0 deletions .spellcheckerrc.jsonc
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"language": "en-US",
"dictionaries": [
"node_modules/spellchecker-cli/dictionaries/base.txt",
"node_modules/spellchecker-cli/dictionaries/react.txt",
".github/dictionary.mjs"
],
"plugins": ["spell", "indefinite-article", "repeated-words", "syntax-mentions", "syntax-urls"],
"ignore": [
// file sizes
"[.0-9]+([Kk][Bb]|[Mm][Bb]|[Gg][Bb])",
// version numbers
"\\b[Vv]?(\\d+\\.)?(\\d+\\.)?(\\d+)\\b"
]
}
Loading
Loading