minor README edits
This commit is contained in:
22
README.md
22
README.md
@@ -112,7 +112,7 @@ Press **?** at any time to open a help dialog listing all available shortcuts.
|
||||
|
||||
**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.
|
||||
|
||||
**Progress reset.** If you want to go through a course again from scratch, a reset button clears all watch progress while preserving your notes, subtitles, volume, and speed settings. Uses a two-click confirmation to prevent accidental resets -- the first click arms the button (it turns red with a warning icon), and the second click within 3 seconds actually resets. If you change your mind, just wait or click elsewhere.
|
||||
**Progress reset.** If you want to go through a course again from scratch, a reset button clears all watch progress while preserving your notes, subtitles, volume, and speed settings. Uses a two-click confirmation to prevent accidental resets - the first click arms the button (it turns red with a warning icon), and the second click within 3 seconds actually resets. If you change your mind, just wait or click elsewhere.
|
||||
|
||||
**Mini progress bars.** Each item in the playlist shows a thin progress bar at the bottom of its row, visualizing how far you've watched. Completed videos get a green bar; in-progress videos show the accent color proportional to watched time.
|
||||
|
||||
@@ -204,7 +204,7 @@ All of this requires ffprobe, which TutorialVault will automatically download if
|
||||
|
||||
TutorialVault targets WCAG 2.2 AAA compliance throughout the interface.
|
||||
|
||||
**Semantic HTML.** The interface uses proper semantic elements -- `<nav>`, `<main>`, `<header>`, `<section>`, `<h2>`, `<h3>` -- so screen readers can navigate the structure meaningfully.
|
||||
**Semantic HTML.** The interface uses proper semantic elements - `<nav>`, `<main>`, `<header>`, `<section>`, `<h2>`, `<h3>` - so screen readers can navigate the structure meaningfully.
|
||||
|
||||
**ARIA attributes.** All interactive elements have appropriate ARIA labels, roles, and state attributes. Menus use `role="menu"` with `aria-haspopup` and `aria-expanded`. The progress bar uses `role="progressbar"` with live value updates. The seek feedback overlay uses `aria-live="assertive"` for screen reader announcements.
|
||||
|
||||
@@ -273,16 +273,16 @@ TutorialVault is a [Tauri v2](https://v2.tauri.app/) application with a Rust bac
|
||||
|
||||
**Frontend (TypeScript + Vite):** A modular architecture with dedicated modules for each concern:
|
||||
|
||||
- `main.ts` -- Boot sequence, tick loop, keyboard shortcuts, cross-module wiring
|
||||
- `player.ts` -- Video element, seek/volume/speed controls, mute, fullscreen, PiP, error states
|
||||
- `playlist.ts` -- Playlist rendering, tree view, drag-and-drop, search/filter, scroll-to-current
|
||||
- `subtitles.ts` -- Subtitle discovery, menu, embedded track extraction
|
||||
- `ui.ts` -- Zoom, split ratios, notes, info panel, recent menu, toast, collapsible panes
|
||||
- `tooltips.ts` -- Hover tooltips with zoom awareness and viewport clamping
|
||||
- `store.ts` -- Shared state, pure utilities, cross-module callback registry
|
||||
- `api.ts` -- Typed wrapper around Tauri's invoke API
|
||||
- `main.ts` - Boot sequence, tick loop, keyboard shortcuts, cross-module wiring
|
||||
- `player.ts` - Video element, seek/volume/speed controls, mute, fullscreen, PiP, error states
|
||||
- `playlist.ts` - Playlist rendering, tree view, drag-and-drop, search/filter, scroll-to-current
|
||||
- `subtitles.ts` - Subtitle discovery, menu, embedded track extraction
|
||||
- `ui.ts` - Zoom, split ratios, notes, info panel, recent menu, toast, collapsible panes
|
||||
- `tooltips.ts` - Hover tooltips with zoom awareness and viewport clamping
|
||||
- `store.ts` - Shared state, pure utilities, cross-module callback registry
|
||||
- `api.ts` - Typed wrapper around Tauri's invoke API
|
||||
|
||||
**Design theme.** The interface uses a "Cold Open" dark theme built on cool slate backgrounds (`#0f1117` base) with a steel blue accent (`#88A4C4`). Typography uses [Bricolage Grotesque](https://fonts.google.com/specimen/Bricolage+Grotesque) for headings, [Inter](https://fonts.google.com/specimen/Inter) for body text, and [Space Mono](https://fonts.google.com/specimen/Space+Mono) for monospace elements. All fonts are bundled -- no external requests at runtime.
|
||||
**Design theme.** The interface uses a "Cold Open" dark theme built on cool slate backgrounds (`#0f1117` base) with a steel blue accent (`#88A4C4`). Typography uses [Bricolage Grotesque](https://fonts.google.com/specimen/Bricolage+Grotesque) for headings, [Inter](https://fonts.google.com/specimen/Inter) for body text, and [Space Mono](https://fonts.google.com/specimen/Space+Mono) for monospace elements. All fonts are bundled - no external requests at runtime.
|
||||
|
||||
**State is local.** All data is stored in JSON files with atomic writes and backup rotation. No database, no server, no network requests beyond the one-time ffmpeg download.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user