Skip to content

Releases: krwg/cultiva

[2.3.4] Rowan: glyph-s 2.7.2 & plugin install integrity

Choose a tag to compare

@github-actions github-actions released this 19 Jul 01:24

Download · Changelog · Landing

2.3.4 Rowan vendors glyph-s 2.7.2 — the shared offline search engine from the Glyph family — and hardens official plugin installs against stale CDN hashes. Still zero accounts, zero telemetry.


Numbers That Matter

glyph-s 2.7.2 vendored under src/core/glyph-s/
Full-text fix Body text included in the fast-path bag (paragraph-only hits work)
Registry Companion catalog 3.6.3
0 Required accounts, cloud sync, or telemetry

Engine stack

Engine Role
CoreV6 App shell, settings, i18n, release pipeline
GrowthKit3 Habit growth stages, schedules, analytics
IDB3 IndexedDB persistence
PLE1 / PE2 Plugin sandbox + tray contributions
glyph-s 2.7.2 Local search ranking (habits, plugins, beds, events, settings)

Search · glyph-s 2.7.2

Cultiva ships a vendored copy of FlokeStudio/glyph-s — the same core used by glyph-sO for Obsidian full-text search.

What’s new in 2.7.2 for Cultiva:

  • Body in the fast-path — candidate gating previously used title + keys only; words that appear only in descriptions / notes now reach scoring
  • Index bag reusecreateSearchEngine passes precomputed bags into ranking
  • Profiles modulelegacy / balanced / max-quality live in profiles.js
Resource URL
glyph-s (engine) https://github.com/FlokeStudio/glyph-s
glyph-sO (Obsidian) https://github.com/FlokeStudio/glyph-sO
Glyph family landing https://flokestudio.github.io/Floke/

Settings → Search shows the engine version (glyph-s 2.7.2) and rebuild controls.


Plugin install integrity

Fixes Integrity check failed for manifest.json after a fast registry push:

  • Always refetch the official registry on install (no stale in-memory sha256 map)
  • Prefer jsDelivr for registry + plugin files (avoids laggy raw.githubusercontent.com edges)
  • LF-normalize text plugin files before sha256 compare
  • Store catalog prefers jsDelivr, with raw GitHub fallback

Companion registry 3.6.3 — aligned first-time store descriptions; Radio 2.6.x line.


Installation

Platform File
Windows Cultiva-Setup-2.3.4.exe, Cultiva-Portable-2.3.4.exe
macOS Intel Cultiva-2.3.4-mac-x64.dmg (+ .zip)
macOS Apple Silicon Cultiva-2.3.4-mac-arm64.dmg (+ .zip)
Linux Cultiva-2.3.4-linux-x86_64.AppImage, Cultiva-2.3.4-linux-amd64.deb

Data lives in IndexedDB locally. No account required.

Upgrading: garden data is preserved. Export a backup under Settings → Storage before updating, just in case.


Links

Resource URL
Repository https://github.com/krwg/cultiva
Landing https://krwg.github.io/cultiva/
Plugins https://krwg.github.io/cultiva-plugins/
Wiki https://github.com/krwg/cultiva/wiki
glyph-s https://github.com/FlokeStudio/glyph-s
Glyph / Floke https://flokestudio.github.io/Floke/

Previous releases


Thank you for growing your habits with Cultiva.

[2.3.3] Rowan: PE2 tray merge & Radio 2.5 companion

Choose a tag to compare

@github-actions github-actions released this 18 Jul 23:40

Download · Changelog

Highlights

PE2 tray

  • Tray tooltips and menu rows are merged per plugin — Weather °C and Radio now-playing can show together
  • data-url payloads for sheet actions (Radio stream history chips)

Companion Radio 2.5.0

  • Custom stream: .m3u / .pls resolve, multi-URL paste, stream history
  • +10 SomaFM stations, station filter, tray now-playing

Notes

  • Companion registry 3.5.8
Tag 2.3.3
Codename Rowan

[2.3.2] Rowan: Dev Mode & Weather tray °

Choose a tag to compare

@github-actions github-actions released this 18 Jul 20:05

Download · Changelog

Fixes

Developer Mode

  • Sidebar item stayed visible after Hide / Turn off because .settings-sidebar-item { display: flex } overrode the HTML hidden attribute
  • Gated by body.developer-mode + CSS display: none !important; hide/off leave the Developer section and re-assert after saveSettings

Weather tray °

  • PE2 tray wiring hardened; Weather 2.7.2 writes temperature to the tray tooltip and a menu row (City · °C)

Notes

  • Companion registry 3.5.7 · Weather 2.7.2
Tag 2.3.2
Codename Rowan
Progress https://github.com/krwg/cultiva/blob/main/CultivaProgress.md

[2.3.1] Rowan: Discord prefs, Dev Mode polish, PE2 tray & Weather tray °

Choose a tag to compare

@github-actions github-actions released this 18 Jul 19:44

Download · Changelog

Highlights

Discord Rich Presence

  • Display mode: Activity / Quiet / Custom
  • Toggles for habit count, streak, trophies, elapsed timer, profile buttons, Focus override
  • Large-image style: auto / garden / legacy / theme
  • Custom details & state lines when mode is Custom

Developer Mode

  • Hidden by default — unlock with 7 taps on the footer version
  • Hide (re-lock UI) and Turn off (full reset) buttons
  • Animated developer background
  • More flags & tools; disable/enable habits from the panel
  • Context menu: Disable / Enable habit

PE2 + Weather

  • Plugin Engine PE2: ui.setTrayTooltip, ui.registerTrayItems, ui.clearTrayItems
  • Weather 2.7.1: temperature in the tray tooltip; Neo night/blue-hour forecast contrast

Notes

  • Companion registry 3.5.6
Tag 2.3.1
Codename Rowan
Progress https://github.com/krwg/cultiva/blob/main/CultivaProgress.md

[2.3.0] Rowan: Developer Mode, green lint & Weather Neo solar skies

Choose a tag to compare

@github-actions github-actions released this 18 Jul 18:47

Numbers That Matter

0 ESLint errors on npm run lint (glyph-s vendored + ignored; eqeqeq allows == null)
89 Vitest tests green
7 Taps on the footer version to unlock Developer Mode
6 Solar sky phases in Weather Neo (dawn → night)

Lint & quality

  • Ignore vendored src/core/glyph-s/** (glyph-s 2.7 is third-party style)
  • eqeqeq with { null: 'ignore' } for intentional nullish checks
  • Remaining app eqeqeq / assignment issues fixed — green lint

Developer Mode

Unlock: tap the footer version line 7 times → toast You are now a developer → Settings → Developer.

Tool What it does
Feature flags One panel for trophies, next-Legacy, heatmap, focus chrome, low-power, force reduced motion, auto-backup, update toggles
Session overrides Temporary LEGACY_THRESHOLD, MAX_HABITS_PER_BED, MAX_ACTIVE_HABITS (not persisted)
window.cultivaDev seedFakeHabits, simulateDate, exportDebugState, completeAllToday, setOverrides, startChaos, getRpcLog, …
Plugin RPC log Live allow/deny + timing for sandbox calls
Fun Complete-all-today, chaos themes, ASCII console banner, secret ASCII background
Focus safety With chrome hidden, a floating Exit Focus chip stays visible (Escape still works)

Weather Neo 2.7.0 (companion)

  • Open-Meteo sunrise / sunset; phases: dawn, day, evening, sunset, bluehour, night
  • Dark skies use light text without requiring theme bypass
  • Sunrise/sunset row in the plugin sheet
  • Soft background transitions + light FX breathing
  • Registry 3.5.5

Installation

Platform File
Windows Cultiva-Setup-2.3.0.exe, Cultiva-Portable-2.3.0.exe
macOS Intel Cultiva-2.3.0-mac-x64.dmg (+ .zip)
macOS Apple Silicon Cultiva-2.3.0-mac-arm64.dmg (+ .zip)
Linux Cultiva-2.3.0-linux-x86_64.AppImage, Cultiva-2.3.0-linux-amd64.deb

Upgrading: export under Settings → Storage first if you like backups. Garden data is preserved.


Links

Resource URL
Repository https://github.com/krwg/cultiva
Plugins https://github.com/krwg/cultiva-plugins
Progress https://github.com/krwg/cultiva/blob/main/CultivaProgress.md

Thank you for growing your habits with Cultiva. — krwg

[2.2.0] Rowan: Horizontal beds, settings IA, glyph-s & Discord presence

Choose a tag to compare

@github-actions github-actions released this 18 Jul 18:13

Full Changelog: 2.1.3...2.2.0

2.2.0 Rowan is the layout and presence release of the Rowan line. The garden finally sits in horizontal beds under plugin widgets, the footer pins to the window, Settings get a clearer information architecture, glyph-s 2.7 powers local search, and Discord Rich Presence reflects what you are actually growing — still zero accounts, zero telemetry.

This release is 5 commits since 2.1.3 (feat + polish + garden/CSS durability + store toolbar + docs), plus companion Quote 1.6.0 on registry 3.5.4.


Numbers That Matter

3 Habits per garden bed (hard cap with BED_FULL toast)
2.7.0 Vendored glyph-s search engine in-tree
500 + 500 Curated Quote banks — English and authentic Russian
1 Pinned footer — position: fixed on every theme and ambient
0 Cache-clear cloud leaking into the garden
0 Required accounts, cloud sync, or telemetry

Engines (unchanged major)

Engine Role
CoreV6 App shell, settings IA, i18n, release pipeline
GrowthKit3 Habit growth, beds, schedules, analytics
IDB3 IndexedDB persistence
PLE1 Plugin sandbox + store UI

Garden. Horizontal beds.

Beds are no longer flat headers floating in a broken grid. Each bed is a full-width row under the plugins strip:

  • Plugin widgets sit in .garden-plugins-row above the beds
  • Each .garden-bed-row lays out up to 3 habit cards in equal columns
  • Rename / delete beds from the context menu
  • Drag-and-drop into a full bed shows a clear bed full toast
  • Trophy Garden remains the master switch for next-Legacy progress
  • Calendar heatmap stays hidden until settings sync when disabled (no FOUC)

Shell. Footer that stays put.

Short gardens used to leave a floating chrome strip above empty space — especially on pink/ambient themes. The footer is now fixed to the bottom of the window, and .app-main keeps enough bottom padding so cards never hide underneath.

CSS durability: src/styles/main.css is the source of truth; shell.css is generated by prebuild (split-main-css). Editing only shell.css will be wiped on the next build.


Settings. Clearer rooms.

Section What changed
Focus Dedicated Focus settings (hide chrome, auto-start)
Statistics Garden heatmap toggle lives here
Storage Former Data — cache size + clear in its own subsection
Updates Check / auto-update toggles; Check uses the Search magnifier icon
Notifications Per-plugin mute toggles + OS footnote
Search Show/hide header search; rebuild index with progress bar
Sidebar Material-style icons throughout

Settings sheets use a flex column layout and generous bottom padding so the last lines (cache clear, OS notification hint, plugin cards) are no longer clipped by the window edge.


Search · glyph-s 2.7

  • Vendored engine at src/core/glyph-s/ (engine, layout, polygon)
  • Header search can be hidden without removing the index
  • Rebuild Index shows a determinate progress bar
  • Index stays fully local — habits, plugins, beds, events, settings labels

Plugin store

  • Compact one-line toolbar: search + category + sort
  • Filters styled as Cultiva chips (label + select in one control)
  • Search input is a fixed-height field (no native search balloon stretch)
  • Install permissions as dash lists with clearer copy
  • README / changelog rendered in release-note markdown style

Discord Rich Presence

Activity is driven by the garden, not static page strings:

  • Habit counts / streaks in the presence text
  • Stable startTimestamp for the session (no reset every 15s or when opening Discord settings)
  • discord:set-focus-session IPC for Focus / Pomodoro-style presence
  • Buttons: Get Cultiva (landing) · GitHub
  • Unused partySize / partyMax removed

Cache clear

Clearing the search cache no longer hijacks the loading-screen cloud. Dedicated orbs, force-hidden overlay when idle — no eternal blue pulses over the garden.


Companion plugins

Plugin Version Notes
Quote 1.6.0 500 curated EN + 500 authentic RU quotes
Registry 3.5.4 Ships with Quote 1.6.0

Radio / Weather / Time remain on the 2.1.3 companion line unless noted in cultiva-plugins.


Installation

Platform File
Windows Cultiva-Setup-2.2.0.exe, Cultiva-Portable-2.2.0.exe
macOS Intel Cultiva-2.2.0-mac-x64.dmg (+ .zip)
macOS Apple Silicon Cultiva-2.2.0-mac-arm64.dmg (+ .zip)
Linux Cultiva-2.2.0-linux-x86_64.AppImage, Cultiva-2.2.0-linux-amd64.deb

Data lives in IndexedDB locally. No account required.

Upgrading from 2.1.x: garden data, beds, and plugins are preserved. Export a backup under Settings → Storage before updating, just in case.


For Developers

npm ci && npm test && npm run electron:build
Path Note
src/styles/main.css Edit layout here
scripts/split-main-css.mjs Regenerates shell.css + public themes/ambient
scripts/rebuild-main-from-shell.mjs Recovery if shell drifts ahead of main

See CHANGELOG.md and CultivaProgress.md.


Commit log (since 2.1.3)

5 commits — click to expand
release(2.2.0): store toolbar, docs, Cultiva Progress, GitHub release notes
fix(garden): keep plugins row when clearing habit nodes
fix(ui): stop cache-cloud leak and straighten garden grid
fix(2.2.0): glyph-s 2.7, Discord activity presence, UI polish
feat(2.2.0): horizontal beds, settings IA, pinned footer

Author of every commit: krwg <shevotsukov@icloud.com> — no co-authors.


Links

Resource URL
Repository https://github.com/krwg/cultiva
Landing https://krwg.github.io/cultiva/
Plugins https://krwg.github.io/cultiva-plugins/
Progress story https://github.com/krwg/cultiva/blob/main/CultivaProgress.md
Wiki https://github.com/krwg/cultiva/wiki

Previous releases


Thank you for growing your habits with Cultiva.

[2.1.3] Rowan: Glyph-s, store UI & Radio player

Choose a tag to compare

@github-actions github-actions released this 18 Jul 16:35

Summary

  • Settings → Search with a local glyph index (habits, plugins, beds, events, settings)
  • Plugin store restyled for Cultiva; Featured is a category filter; better EN/RU search
  • Footer: compact bar with a readable centered version line
  • README in plugin Details: tables, lists, italics, blockquotes
  • Plugin toasts can also reach the OS notification center

Companion plugins (registry 3.5.3)

  • Radio [2.4.0] — player sheet, dual-stream guard, opt-in Neo FX
  • Quote [1.5.0] — habit-card height, next-quote chevron
  • Weather [2.6.0] — RU polish + notifications

Notes

  • No telemetry in search indexing — all local
  • Author: krwg

[2.1.2] Rowan: Garden beds & weather Neo

Choose a tag to compare

@github-actions github-actions released this 18 Jul 12:56

Summary

  • Drag-and-drop + custom garden beds (грядки)
  • Footer fixed to a single version line (20px; audit #167)
  • Flat garden grid — habit cards as grid siblings; weather card no longer stretches the row
  • Plugin store: category & sort dropdowns, Featured (Weather / Radio / Quote), [version], permissions before install, Details with README + changelog + screenshots
  • Deleting a bed reindexes habit sortOrder into ungrouped

Companion plugins

  • Weather [2.5.1] — Cyrillic city search, Neo polish, prefers-reduced-motion
  • Radio [2.3.0] — Media Session, autoplay messaging, custom stream URL
  • Quote [1.4.0] — shuffle another quote
  • Insights [1.0.0] — local habit correlations (Связи)

Notes

  • Weather Neo stays opt-in; minAppVersion for Weather remains 1.7.0
  • No telemetry in the plugin store (Featured is editorial; lastUpdated from public git dates)

[2.1.1] Rowan: Windows patch & Fix critical bugs

Choose a tag to compare

@github-actions github-actions released this 17 Jul 23:54

Critical fixes after 2.1.0. Your garden stays on this device — no accounts, no telemetry.

Fixed

  • Reload garden — Ctrl+R / «Обновить сад» no longer wipes the habit list (soft refresh + storage recovery; hard BrowserWindow reload blocked)
  • Footer — compact height; version centered horizontally and vertically (garden + calendar)
  • Habit data safety — pending saves no longer race with account/guest reloads; empty flushes cannot clobber a non-empty local backup mirror

Added

  • Garden activity toggle in Settings → Calendar — show or hide the year heatmap on the Calendar page

Upgrade notes

  • Export a backup under Settings → Data before updating if you want a safety copy
  • macOS / Linux users: stay on 2.0.2 for now; this tag ships Windows installers only

Full changelog: CHANGELOG.md

[2.1.0] Rowan: Windows patch

Choose a tag to compare

@github-actions github-actions released this 17 Jul 23:38

Windows-focused patch after 2.0.2. Your garden stays on this device — no accounts, no telemetry.

Added

  • Garden activity heatmap on the Calendar page — all habits in one GitHub-style year view (darker = more completions that day)
  • Paused section — paused and archived habits no longer vanish; resume or restore from a dedicated card grid
  • Next Legacy tree — when Trophy Garden is empty, a habit-style card shows progress toward 365 days (toggle in Settings → Garden, on by default)

Fixed

  • Installer branding — NSIS footer shows Rowan (no more stale Linden), synced from cultiva.release.json
  • Windows icons — app / tray / shortcut icons embed reliably (signAndEditExecutable, tray PNG + nativeImage)
  • Footer — compact version line only

Upgrade notes

  • Export a backup under Settings → Data before updating if you want a safety copy
  • macOS / Linux users: stay on 2.0.2 for now; this tag ships Windows installers only

Full changelog: CHANGELOG.md

Closes #161, #162, #163, #164, #165