Skip to content

Latest commit

 

History

History
27 lines (17 loc) · 1.57 KB

File metadata and controls

27 lines (17 loc) · 1.57 KB

Claude Code Guidelines

About

A modern, framework-agnostic video player supporting HTML5, YouTube, Vimeo, HLS, and DASH providers with adaptive streaming and automatic quality switching. It features rich UI components, full keyboard navigation and accessibility, 7 built-in themes (Netflix, YouTube, Vimeo, etc.), captions/subtitles, chapter markers, and plugins for analytics, VAST/VPAID ads, skip segments, end screens, and watermarks. It includes native stx integration via the @video directive and provides a createPlayer() API with comprehensive event handling.

Linting

  • Use pickier for linting — never use eslint directly
  • Run bunx --bun pickier . to lint, bunx --bun pickier . --fix to auto-fix
  • When fixing unused variable warnings, prefer // eslint-disable-next-line comments over prefixing with _

Frontend

  • Use stx for templating — never write vanilla JS (var, document.*, window.*) in stx templates
  • Use crosswind as the default CSS framework which enables standard Tailwind-like utility classes
  • stx <script> tags should only contain stx-compatible code (signals, composables, directives)

Dependencies

  • buddy-bot handles dependency updates — not renovatebot
  • better-dx provides shared dev tooling as peer dependencies — do not install its peers (e.g., typescript, pickier, bun-plugin-dtsx) separately if better-dx is already in package.json
  • If better-dx is in package.json, ensure bunfig.toml includes linker = "hoisted"

Commits

  • Use conventional commit messages (e.g., fix:, feat:, chore:)