mirror of
https://github.com/nicetry247/offlineacademy.git
synced 2026-07-28 04:49:39 +00:00
1.7 KiB
1.7 KiB
OfflineAcademy v2
The dev/offlineacademy-v2 branch focuses on making the existing product feel faster and more deliberate without changing its local-first mission.
Performance work
- The course API now runs independent database reads in parallel.
- Lesson totals are collected through module relation counts instead of a separate lesson grouping plus module lookup.
- Partial course progress is calculated from completed lesson records, fixing the previous 0-or-100 dashboard behavior.
- Course thumbnails prefer the database value and only fall back to filesystem discovery when needed.
- API responses expose
Server-Timingmetrics for database, enrichment, and total request time. - The course hook cancels obsolete requests, rejects stale responses, caches recent pages briefly, and prefetches the next page.
- The splash screen renders over already-loaded content, appears once per browser session, and has a much shorter minimum duration.
- Course cards use CSS content visibility to reduce rendering work below the viewport.
Premium dark interface
The v2 visual layer is intentionally scoped to dark mode. Light mode keeps the established appearance.
- Deep ink background with restrained emerald and warm amber accents.
- Higher-contrast text and quieter secondary labels.
- More substantial cards with subtle elevation instead of heavy neon glow.
- Cleaner controls, inputs, popovers, progress bars, and navigation surfaces.
- Touch-friendly course actions and reduced-motion support.
- Theme bootstrapping before hydration to prevent the light-to-dark flash.
Product boundary
OfflineAcademy remains a single-user, self-hosted, LAN-first course library. This branch does not add accounts, cloud dependencies, subscriptions, or unrelated workflows.