diff --git a/README.md b/README.md index feeb5f9..c99e356 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ A desktop application for organizing, watching, and tracking progress through vi TutorialVault turns any folder of video files into a structured course with automatic progress tracking, subtitle support, per-video notes, and detailed media information. Point it at a folder, and it handles the rest. -It was built for people who collect tutorial courses and want a better way to work through them than a file explorer and a media player. Your progress, your notes, your preferences — all saved automatically, all portable, all yours. +It was built for people who collect tutorial courses and want a better way to work through them than a file explorer and a media player. Your progress, your notes, your preferences - all saved automatically, all portable, all yours. --- @@ -71,9 +71,9 @@ It was built for people who collect tutorial courses and want a better way to wo **📈 High-water mark tracking.** TutorialVault remembers the furthest point you've reached in each video, independent of where you happen to be scrubbing to. -**✅ Automatic completion detection.** When you watch to within 2 seconds of the end, a video is marked as done. Once done, it stays done — no accidental un-finishing. +**✅ Automatic completion detection.** When you watch to within 2 seconds of the end, a video is marked as done. Once done, it stays done - no accidental un-finishing. -**📉 Overall progress.** A progress bar shows your completion percentage for the entire folder, calculated from actual watched time relative to total duration. Not just "videos finished out of total" — actual time-weighted progress. +**📉 Overall progress.** A progress bar shows your completion percentage for the entire folder, calculated from actual watched time relative to total duration. Not just "videos finished out of total" - actual time-weighted progress. **⏪ Resume from where you left off.** Clicking any video in the playlist, or navigating with previous/next, resumes from your last position. Finished videos start from the beginning. @@ -89,7 +89,7 @@ It was built for people who collect tutorial courses and want a better way to wo **🔀 Drag and drop reorder.** Rearrange the playlist by dragging items. A blue indicator line shows exactly where an item will land. Your custom order is saved and persists between sessions. -**🔢 Smart ordering.** Natural sort by default — "Lesson 2" comes before "Lesson 10." When you reopen a folder that has new files, existing items keep their saved order and new files appear at the end. +**🔢 Smart ordering.** Natural sort by default - "Lesson 2" comes before "Lesson 10." When you reopen a folder that has new files, existing items keep their saved order and new files appear at the end. --- @@ -97,11 +97,11 @@ It was built for people who collect tutorial courses and want a better way to wo **🔍 Automatic subtitle discovery.** TutorialVault finds subtitles in three ways, in this priority order: -1. **Previously loaded subtitle** — if you've loaded a subtitle for a video before, it's remembered and reloaded automatically. -2. **Sidecar files** — `.srt` or `.vtt` files sitting next to the video with a matching filename (including language variants like `video.en.srt` or `video.french.srt`). -3. **Embedded tracks** — subtitle tracks inside the video container itself (common in MKV files), extracted on demand using ffmpeg. +1. **Previously loaded subtitle** - if you've loaded a subtitle for a video before, it's remembered and reloaded automatically. +2. **Sidecar files** - `.srt` or `.vtt` files sitting next to the video with a matching filename (including language variants like `video.en.srt` or `video.french.srt`). +3. **Embedded tracks** - subtitle tracks inside the video container itself (common in MKV files), extracted on demand using ffmpeg. -**📋 Subtitle menu.** A CC button opens a menu listing all available subtitles — external files, embedded tracks, a "load from file" option for picking any subtitle file on your system, and a disable option. +**📋 Subtitle menu.** A CC button opens a menu listing all available subtitles - external files, embedded tracks, a "load from file" option for picking any subtitle file on your system, and a disable option. **🌍 Language detection.** Sidecar subtitles with language suffixes are automatically labeled (English, French, German, Spanish, Italian, Portuguese, Russian, Japanese, Korean, Chinese, Arabic, Hindi, Dutch, Swedish, Polish). English subtitles are sorted first. @@ -111,7 +111,7 @@ It was built for people who collect tutorial courses and want a better way to wo ### 📝 Notes -**Per-video notes.** A text area in the dock panel lets you write notes for each video. Timestamps, reminders, key takeaways, questions — whatever you need. Notes auto-save as you type. +**Per-video notes.** A text area in the dock panel lets you write notes for each video. Timestamps, reminders, key takeaways, questions - whatever you need. Notes auto-save as you type. **👁️ Visible in the playlist.** Videos with notes show a small indicator in the playlist, so you can quickly spot which videos you've annotated. @@ -123,13 +123,13 @@ It was built for people who collect tutorial courses and want a better way to wo **Detailed metadata panel.** The info panel shows everything about the current video and folder: -- 📁 **Folder info** — path, structure (flat or subfolder), next unfinished video. -- 🎬 **Video info** — codec, resolution, frame rate, pixel format, bitrate. -- 🔈 **Audio info** — codec, channels, sample rate, bitrate. -- 💬 **Subtitle info** — count and details of embedded tracks, or external file status. -- 📄 **File info** — extension, file size, modification date, containing folder. -- ⏳ **Progress stats** — finished count, remaining count, estimated time remaining. -- 📊 **Per-subfolder breakdown** — completion counts for each top-level subdirectory. +- 📁 **Folder info** - path, structure (flat or subfolder), next unfinished video. +- 🎬 **Video info** - codec, resolution, frame rate, pixel format, bitrate. +- 🔈 **Audio info** - codec, channels, sample rate, bitrate. +- 💬 **Subtitle info** - count and details of embedded tracks, or external file status. +- 📄 **File info** - extension, file size, modification date, containing folder. +- ⏳ **Progress stats** - finished count, remaining count, estimated time remaining. +- 📊 **Per-subfolder breakdown** - completion counts for each top-level subdirectory. All of this requires ffprobe, which TutorialVault will automatically download if it's not already available on your system. @@ -155,7 +155,7 @@ All of this requires ffprobe, which TutorialVault will automatically download if ### 🧳 Portability -**Fully portable.** Everything — preferences, library state, subtitles, ffmpeg binaries, even the WebView2 profile — lives in a `state/` directory next to the executable. Copy the folder to a USB drive and it works anywhere. No registry entries, no AppData folders, no hidden configuration in your home directory. +**Fully portable.** Everything - preferences, library state, subtitles, ffmpeg binaries, even the WebView2 profile - lives in a `state/` directory next to the executable. Copy the folder to a USB drive and it works anywhere. No registry entries, no AppData folders, no hidden configuration in your home directory. **🛟 Crash-safe storage.** All state files are written atomically with backup rotation. If something goes wrong mid-write, the app falls back to the most recent valid backup. Nobody should lose their progress to a power outage.