{
  "edition": {
    "edition": "2026-09-06-draft-01",
    "language": "en",
    "publicationState": "published",
    "sourceRevision": "a7e788eb4b151fd92c1f58153e015773e3a829af",
    "projectCount": 67,
    "documentCount": 94,
    "skillCount": 10,
    "archivePath": "library.zip",
    "archiveBytes": 181812,
    "releasedAt": "2026-09-08T05:03:11.129+00:00"
  },
  "access": {
    "released": true,
    "rehearsal": false
  },
  "project": "browser-extensions/video-practice-controls.md",
  "markdown": "https://legion.tw/api/projects/packet.md/browser-extensions/video-practice-controls.md?edition=2026-09-06-draft-01",
  "documents": [
    {
      "path": "browser-extensions/README.md",
      "text": "# Browser extensions\n\n[All project types](../README.md) · [Shared launch](../shared/launch.md)\n\nImprove the websites the person already uses through an extension in their own browser.\n\n## Projects to build\n\n- [Make this website comfortable](comfortable-websites.md)\n- [Internet scrapbook](internet-scrapbook.md)\n- [Comparison board across websites](comparison-board.md)\n- [Reading companion for another language](language-reading-companion.md)\n- [Video practice controls](video-practice-controls.md)\n- [Send this to my app](send-to-my-app.md)\n\nThese are instructions for projects you can build with your coding agent.\n"
    },
    {
      "path": "browser-extensions/video-practice-controls.md",
      "text": "# Turn a video player into a practice tool\n\nBuild a browser extension for practicing a selected passage from an online video. The person can loop it, change the playback speed, bookmark it, and keep notes that bring them back to the right moment. Build it extremely well on the video sites they actually use. Follow the [shared launch](../shared/launch.md).\n\nFind out what they practice. Someone learning a guitar phrase has different needs from someone repeating spoken sentences or following a dance. Begin with a real video and the part they want to work on.\n\n## Make repetition comfortable\n\nLet the person mark the beginning and end of a passage, adjust those points, and play it repeatedly. Show the selected range clearly and give them a convenient way to return to ordinary playback.\n\nMake playback speed easy to change while preserving a useful listening experience. Let the person see the current speed and restore the original. Where their practice benefits from it, provide a pause between repetitions or a short lead-in so they can get ready to play, speak, or move.\n\nGive the controls a place that works during actual practice. A musician may want a single shortcut to restart a phrase; a reader of subtitles needs the text and picture to remain visible. Support the person's normal display mode and keep the controls understandable when the video is enlarged.\n\n## Save a passage with a purpose\n\nLet the person name a saved passage, attach notes, and retain its start, end, speed, and source video. A label such as “The transition I keep missing” helps them remember why they saved it. They should be able to return later and resume that passage with the chosen settings.\n\nMake saved passages easy to find by video, title, or their own note. One video may contain several things they want to practice. Keep those passages distinct and let them revise a selection as they learn more of the material.\n\nGive notes enough room to record what they are trying to improve. The person can mark a passage as one to revisit or record progress in a way suited to their activity. Keep practice records separate from the source video itself.\n\n## Fit the actual websites\n\nImplement and identify the supported sites using their available playback controls. Learn how those players behave during ordinary navigation and make the extension work with them. Explain clearly when a page or player is outside the current support.\n\nKeep normal website controls and access working. Explain the extension's browser permissions and what it stores. Install it through the browser's supported path and leave the person able to update, disable, or remove it.\n\nPreserve passages and notes across browser restarts, with an export and recovery path under the shared launch's ownership guidance. The saved passage should retain a usable route back to its original video.\n\n## Practice something\n\nDeliver the working extension and use it for a short practice session. Select a passage, slow it down, adjust its boundaries, add a note, and return to it after closing the page. Judge whether the controls let the person concentrate on what they are learning.\n\nExplain how an extension can adapt an existing service to a different activity. The learner is turning watching into practicing through controls that reflect their own needs.\n\nLater projects can assemble saved passages into practice sessions or connect them to a notebook containing the person's own recordings. Preserve the selected material and notes so their practice history carries into those additions.\n"
    }
  ]
}