summaryrefslogtreecommitdiff
path: root/about/showcase.html
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2025-11-01 16:11:30 +0200
committerPaul Buetow <paul@buetow.org>2025-11-01 16:11:30 +0200
commit0d7413660d71a2aa4a6998eaeb1c654b93e1e2c3 (patch)
treedc1041387e323b9b78f11031ed4f51574a69886c /about/showcase.html
parentfe0a3a0aea02d80786477bb4e7c505966898000d (diff)
Update content for html
Diffstat (limited to 'about/showcase.html')
-rw-r--r--about/showcase.html6
1 files changed, 3 insertions, 3 deletions
diff --git a/about/showcase.html b/about/showcase.html
index af271202..ded87158 100644
--- a/about/showcase.html
+++ b/about/showcase.html
@@ -107,14 +107,14 @@
<li>🔥 Recent Activity: 24.2 days (avg. age of last 42 commits)</li>
<li>⚖️ License: No license found</li>
<li>🏷️ Latest Release: v0.3.0 (2025-10-24)</li>
-<li>🤖 AI-Assisted: This project was partially created with the help of generative AI</li>
+<li>🤖 AI-Assisted: This project was vibe-coded.</li>
</ul><br />
<br />
<a href='showcase/yoga/image-1.png'><img alt='yoga screenshot' title='yoga screenshot' src='showcase/yoga/image-1.png' /></a><br />
<br />
-<span>Yoga is a terminal-based video browser designed for managing and playing local yoga video collections. It scans a directory (defaulting to <span class='inlinecode'>~/Yoga</span>) for common video formats, probes and caches their durations, and provides a keyboard-driven interface for quickly filtering videos by name, duration range, or tags. Users can sort by name, length, or age, and launch videos directly in VLC with optional crop settings—all without leaving the terminal. The tool is optimized for quick navigation and playback, making it easy to find and start a specific practice session in seconds.</span><br />
+<span>Yoga is a Terminal User Interface (TUI) application written in Go that helps users browse and play local yoga video collections. It scans a designated directory for video files (MP4, MKV, MOV, AVI, WMV, M4V), extracts and caches duration metadata, and presents them in an interactive table. Users can quickly filter videos by name, duration range, or tags, sort by various criteria (name, length, age), and launch playback in VLC with a single keypress. The tool is particularly useful for managing personal yoga practice libraries where you want to quickly find videos matching specific time constraints or styles without opening a file browser.</span><br />
<br />
-<span>The project is implemented in Go with a TUI interface, organized around a clean <span class='inlinecode'>cmd/yoga</span> entry point that wires together internal packages for filesystem operations (<span class='inlinecode'>internal/fsutil</span>), metadata caching (<span class='inlinecode'>internal/meta</span>), and UI flow (<span class='inlinecode'>internal/app</span>). Video metadata is persisted in <span class='inlinecode'>.video_duration_cache.json</span> files to avoid re-probing on every launch. Development uses Mage for build tasks, enforces ≥85% test coverage, and follows standard Go idioms with <span class='inlinecode'>gofumpt</span> formatting.</span><br />
+<span>The implementation follows clean Go architecture with domain logic organized under <span class='inlinecode'>internal/</span> (including <span class='inlinecode'>app</span> for TUI flow, <span class='inlinecode'>fsutil</span> for filesystem operations, and <span class='inlinecode'>meta</span> for metadata caching). It uses a keyboard-driven interface with vim-like navigation and maintains a <span class='inlinecode'>.video_duration_cache.json</span> file per directory to avoid re-probing video durations on subsequent scans. The project emphasizes maintainability with ≥85% test coverage requirements, table-driven tests, and strict formatting via <span class='inlinecode'>gofumpt</span>, while keeping the entry point minimal in <span class='inlinecode'>cmd/yoga/main.go</span>.</span><br />
<br />
<a class='textlink' href='https://codeberg.org/snonux/yoga'>View on Codeberg</a><br />
<a class='textlink' href='https://github.com/snonux/yoga'>View on GitHub</a><br />