Files
bsky-social-app/bskyembed/package.json
Claude 38d8c03f17 Add video player support to bskyembed with HLS.js
Adds real video playback to the bskyembed iframe embed system:

- Lazy-load the video player using preact/compat lazy/Suspense so hls.js
  and all player code are in a separate chunk, keeping the default bundle small
- Full video controls: play/pause, scrubber, volume, fullscreen, time display
- HLS.js integration with bandwidth estimation and error handling
- GIF presentation support with simplified controls
- Thumbnail + play button shown until user clicks to activate the player
- Ported patterns from the main app's web video player, adapted for
  Preact + Tailwind (no React Native, no ALF, no Lingui)

https://claude.ai/code/session_01Mva57VZnFgdaQ7LPPoVNsP
2026-02-15 22:07:37 +00:00

39 lines
1006 B
JSON

{
"name": "bskyembed",
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"dev-snippet": "tsc --project tsconfig.snippet.json && serve -s dist -p 3000 -n",
"build": "tsc && vite build",
"build-snippet": "tsc --project tsconfig.snippet.json",
"lint": "eslint --cache src",
"typecheck": "tsc --noEmit"
},
"dependencies": {
"@atproto/api": "^0.15.25",
"hls.js": "^1.6.2",
"preact": "^10.4.8"
},
"devDependencies": {
"@preact/preset-vite": "^2.10.2",
"@vitejs/plugin-legacy": "^7.0.0",
"@eslint/js": "^9.18.0",
"autoprefixer": "^10.4.19",
"eslint": "^9.18.0",
"eslint-plugin-simple-import-sort": "^12.1.1",
"globals": "^15.14.0",
"postcss": "^8.4.38",
"typescript-eslint": "^8.20.0",
"serve": "^14.2.5",
"tailwindcss": "^3.4.3",
"terser": "^5.43.1",
"typescript": "^5.8.3",
"vite": "^7.0.4",
"vite-tsconfig-paths": "^5.1.4"
},
"resolutions": {
"@types/estree": "1.0.6"
}
}