Skip to content

Releases: abahvictor360-sketch/vifug-lyrics

v1.10.0

Choose a tag to compare

@github-actions github-actions released this 15 Aug 17:33
docs: screenshot of the reorganised Settings menu

Taken from the installed 1.10.0 build, showing the seven side-menu
entries rather than the old single General tab.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

v1.9.0

Choose a tag to compare

@github-actions github-actions released this 15 Aug 16:21
chore: v1.9.0

Test build so the features that need real hardware can be confirmed
before they are documented: the auto-follow mic level meter, screen and
window capture, and the new capture-card overlay/side-by-side layouts.
All three are verified only in a browser sandbox, which blocks camera and
microphone access.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

v1.8.0

Choose a tag to compare

@github-actions github-actions released this 02 Aug 01:02
Import the PPTX deck's design, not just its words

A .pptx import brought over text and one image per slide, so every deck
landed on the app's own dark theme and lost the look it was designed
with. The importer now also reads each slide's background color and text
color, following PowerPoint's own slide -> layout -> master inheritance
and resolving theme references (<a:schemeClr val="bg1"/>) against the
deck's color scheme, so a design defined on the master still comes
across. Slides carry these on new presentation_slides.bg_color /
text_color columns (self-healed onto existing databases) and the stage
layers them over the app theme per slide, leaving font/size/alignment
inherited.

Most decks never set an explicit run color — they rely on PowerPoint's
theme defaults — so an imported light background would otherwise have
kept the app's white text and rendered invisible. When a slide brings a
background but no text color, one is derived from the background's
Rec.601 luma instead.

Verified on a real 13-slide deck: 13/13 slides imported with their own
background (#F5CDCE title slide, #FDFAF6 body slides), each paired with
readable dark text.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

v1.7.0

Choose a tag to compare

@github-actions github-actions released this 02 Aug 00:40
chore: v1.7.0

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

v1.6.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 22:37
fix: drop top-level await in database/index.ts, breaks desktop build …

v1.5.0

Choose a tag to compare

@github-actions github-actions released this 31 Jul 22:18
Teleport: one-click send the live output into OBS or vMix

New Settings -> General -> 'Teleport to OBS / vMix' panel. No plugin
install needed on either side — both integrations talk to protocols
those apps already expose:

- OBS: a minimal OBS WebSocket v5 client (packages/web/src/web/lib/obs.ts)
  authenticates (SHA256 challenge/salt per the official spec) and either
  creates a Browser Source input pointing at the /stream overlay in the
  current scene, or updates the existing one if 'Vifug Lyrics' is already
  there. Requires OBS 28+ with its WebSocket server enabled.
- vMix: fires Function=AddInput&Value=WebBrowser|<url> at vMix's Web
  Controller HTTP API (packages/web/src/web/lib/vmix.ts) to add the
  overlay as a Web Browser input. vMix sends no CORS headers, so the
  request goes out with mode:no-cors — a thrown fetch error is the only
  signal back (unreachable host), so success is reported as 'sent', not
  confirmed delivered.

Once added on either side, content stays live-synced automatically
through the same /stream overlay the manual OBS bridge already used —
teleporting only removes the one-time manual setup step.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

v1.3.2

Choose a tag to compare

@github-actions github-actions released this 12 Jul 09:39
Notify the operator when a newer release is available

Once per launch the app compares its version (new app:version IPC)
against the newest GitHub release tag and, if newer, shows an
'Update vX.Y.Z available' pill in the top bar linking to the landing
page's download section. The × mutes that version; a still-newer
release surfaces again. Fails silently offline / rate-limited —
offline-first stays sacred. Desktop-only (browser builds have no
installed version); localStorage 'vifug-fake-version' exercises it in dev.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

v1.3.1

Choose a tag to compare

@github-actions github-actions released this 11 Jul 09:56
Keep lyrics/scripture inside the safe margin at any font size

The slide already had a safeMargin padding, but a large user-set font
could overflow it vertically and clip off screen. After layout the text
block is measured against the space inside the margins and the font is
scaled down just enough to fit, re-fitting on content, theme, and
surface-size changes (ResizeObserver). The margin is also floored at 4%
so all four edges always keep breathing room.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 09 Jul 15:11
Bundle 26 more English Bible versions (33 total) with a grouped switcher

Imported from the Beblia Holy-Bible-XML-Format collection via the new
tools/fetch-beblia.ts: NIV, NKJV, ESV, NLT, NASB, CSB, Amplified (AMP +
Classic), Berean, Darby, EasyEnglish, ERV, GNT, GW, HCSB, LSB, MEV,
NASB 1995, NET, NIrV, NRSV, Passion (TPT), RSV, Living Bible (TLB),
Tyndale 1537 and YLT — all 66 books each, converted to the app's offline
JSON format. The Bible tab's version dropdown now groups English vs other
languages, ordered most-used first.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

v1.2.1

Choose a tag to compare

@github-actions github-actions released this 09 Jul 14:57
Local background storage for offline installs; scripture fills the sc…