Skip to content

Releases: bhaskarjha-com/sbobs

v6.0.0 — One-Click Stream Setup

06 Apr 18:34

Choose a tag to compare

SessionPulse v6.0.0 — One-Click Stream Setup

A major release that turns SessionPulse into a true one-click stream setup. Quick Setup now auto-configures backgrounds, alert sounds, and overlays — all in a single button press. This release also resolves critical bugs in dock data connectivity and background scaling.

⚠️ Breaking Changes

  • Overlay-first Quick Setup — Quick Setup no longer auto-creates 5 text sources (SP Timer, SP Session, SP Count, SP Progress, SP Status). Overlays handle all visual display. Power users can still manually create text sources.
  • Asset directory reorganized — Screenshots moved to assets/screenshots/, backgrounds in assets/backgrounds/, sounds in assets/sounds/.

✨ What's New

One-Click Stream Setup

  • 3 AI-generated background images bundled in assets/backgrounds/ — color-matched to each session type (Focus: green, Short Break: blue, Long Break: purple)
  • 3 royalty-free alert sounds bundled in assets/sounds/ — play at session start for immediate audio feedback
  • Auto-assignment — Quick Setup auto-configures backgrounds + sounds when no custom paths are set

Overlay Improvements

  • Bar overlay (SP Overlay Bar) auto-created by Quick Setup
  • Progress bar fills all available space (removed max-width cap)
  • Improved typography and divider visibility

Compact Dock Redesign

  • Dock height reduced from ~730px to ~280px — fits any OBS sidebar without scrolling
  • Stats use readable inline text instead of large cards
  • SP Status editor is collapsible (collapsed by default)
  • Chat row and Stream stat auto-hide when not relevant

🐛 Critical Bug Fixes

Dock Data Connection (CRITICAL)

  • Root cause: process_overlay_control_command() cleared the SP Control text source every script_tick, wiping the state data the dock reads. Meanwhile, the dock's fetch(session_state.json) was blocked by Chromium's file:// security policy, and the text source fallback (SP Timer etc.) no longer existed.
  • Fix: Dock now reads state via SP Control over WebSocket (primary path). The Lua script no longer clears state data from SP Control — only actual commands get cleared.

Background Canvas Fitting (CRITICAL)

  • Root cause: A type guard type(obs.obs_video_info) ~= "function" silently disabled all canvas fitting. In OBS Lua, obs.obs_video_info is a userdata constructor, not a function.
  • Fix: Changed guard to if not obs.obs_video_info, and rewrote fitting to use direct scale math instead of OBS bounds API.

📊 Test Coverage

Suite Tests Status
Lua (runtime queue) 75 ✅ All passing
JS (frontend) 104 ✅ All passing
Total 179

📦 Installation

  1. Download the Source code (zip) from the Assets section below and extract it
  2. In OBS: Tools → Scripts → Add session_pulse.lua from the extracted folder
  3. Click Quick Setup — backgrounds, sounds, overlays, and dock are all configured automatically
  4. Set a Start/Pause hotkey in Settings → Hotkeys → "SessionPulse"
  5. (Optional) Add the dock: View → Docks → Custom Browser Docks → set URL to file:///path/to/timer_dock.html

Full Changelog: https://github.com/bhaskarjha-com/sbobs/blob/main/CHANGELOG.md

Full Changelog: v5.4.0...v6.0.0

SessionPulse v5.4.0

31 Mar 15:09

Choose a tag to compare

What's New

🚀 Quick Setup Wizard

One-click button that auto-creates text sources, ring overlay, Focus/Break scenes, and wires everything to the script settings. Setup goes from 11 manual steps to 1 click.

📚 Documentation Suite

6 comprehensive guides in docs/ — getting started, overlay customization, automation, integrations, mobile remote, and FAQ.

🧪 Testing & CI

122 automated tests (67 Lua + 55 JS) with GitHub Actions CI.

Previous (v5.3.1)

  • Fixed CSV label injection (commas in labels)
  • Fixed daily goal progress bar color reset
  • Added label column to stats dashboard

Installation

  1. Download the Source code ZIP below
  2. OBS → Tools → Scripts → + → select session_pulse.lua
  3. Click 🚀 Quick Setup
  4. Set hotkeys → Start!