Skip to content

v3.0.0

Choose a tag to compare

@github-actions github-actions released this 08 Mar 05:20
· 7 commits to main since this release

ChroniNotes v3.0.0

Spotify integration, Habits module, Task archiving, Unified calendar, Sidebar redesign

The biggest release yet — 5 major phases, 44 files changed, 9,186 lines added. ChroniNotes goes from 5 modules to 7, from 5 themes to 8, and gets a fully collapsible sidebar with live stat badges.


What's New

Phase 1: Spotify Integration

  • Full Spotify playback in the sidebar — play/pause, skip, shuffle, repeat mode controls
  • PKCE OAuth flow with local loopback server on 127.0.0.1:43821
  • Web Playback SDK for in-app audio playback
  • Playlist picker — browse and play Spotify playlists with thumbnails and track counts
  • Album art, track info, progress bar in the sidebar widget
  • Shuffle toggle with visual active state
  • Repeat/loop control cycling through off → context → track → off
  • Environment-based config via .env + build.rs (CI uses GitHub Secrets)

Phase 2: Habits Module (Production-Ready)

  • Daily habit tracker with full CRUD, streaks, and heatmaps
  • Build/Break goal types — "at least" targets vs. "stay under" limits
  • Section-based grouping — organize habits into collapsible sections (Health, Learning, etc.)
  • Backend streak computation — current streak, best streak, total completions, completion rate
  • Monthly calendar heatmap — toggle between week grid and intensity-based month heatmap
  • Archive management — archive, restore, or permanently delete habits (cascades logs)
  • Edit modal — all fields: name, icon, color, target, frequency, goal type, section, reminder, notes
  • Stats modal — click any habit for detailed stats and notes
  • Week navigation with arrow controls and "Today" snap-back
  • Input validation: date, time, goal type, frequency — validated in Rust before DB write
  • 5 new Rust tests

Phase 3: Task Archive System

  • Archive completed tasks — done tasks show 📦 button on hover
  • Bulk "Archive All Done" — one-click button in Done column header
  • Archive panel — slide-down panel listing all archived tasks with Restore and Delete actions
  • Restore flow — returns task to "todo" status, clears completed_at
  • New archived column with CHECK constraint and safe ALTER TABLE migration
  • 4 new Rust tests (114 total)

Phase 4: Unified Calendar Integration

  • Habit completion on calendar — month cells show ⟡ 3/5 indicators, green when all done
  • Countdown events on calendar — target dates appear as colored markers on month grid
  • Day view shows full habit breakdown with per-habit colored pills + countdown cards
  • Agenda view includes habit summaries and countdown items
  • Calendar sidebar shows per-day habit summary and countdown details
  • Data source badges — header shows live counts for events, reminders, habits, countdowns
  • No new backend commands — leverages existing stores

Phase 5: Sidebar Layout Redesign

  • Collapsible sidebar — toggle between 200px (full) and 60px (icon-only) modes
  • Ctrl+B keyboard shortcut or click the logo icon to toggle
  • Grouped navigation — "Workspace" (Dashboard, Tasks, Notes) + "Tracking" (Timer, Calendar, Habits, Countdown)
  • Live stat badges — Tasks shows active count, Habits shows active count
  • Collapsed mode — icon-only with accent dot indicators, divider lines between sections
  • Responsive UserProfileCard — avatar-only in collapsed mode
  • Spotify hidden when collapsed — prevents layout overflow
  • State persisted in localStorage

New Themes

Theme Description
Black & Red High-contrast dark with vivid red (#E31C25) accents
Smooth Blues Deep ocean base with bright cyan-blue (#1187D7) highlights
Warm Red & Blue Twin duality — red (#E53030) accents + blue (#3168B9) glass surfaces

Total: 8 themes (Midnight Indigo, Steel Blue, Warm Linen, Ember, Carbon, Black & Red, Smooth Blues, Warm Red & Blue)


Other Additions

  • Task subtasks via parent_id column
  • Task priority (Eisenhower matrix): urgent-important, important, urgent, neither
  • Task description field for notes/details
  • Task custom ordering with sort_order column and batch reorder API
  • Updated About page — 8 themes, 7 modules, 12 features, new keyboard shortcuts (Ctrl+6/7, Ctrl+B)

Fixes

  • Sidebar Spotify/profile overlap — playlist panel no longer pushes profile card off-screen
  • "Open Notes Folder" not working — auto-recreates directory if externally deleted
  • Updater install/replace flow — detects installation directory and passes /D=<dir> to NSIS
  • Windows URL parsing in Spotify auth — uses webbrowser crate instead of cmd /C start

Removed

  • macOS support — removed macOS CI jobs, bundle config, and platform-specific code. ChroniNotes is now Windows-only.
  • Bundle targets restricted to ["nsis", "msi"]

Full Changelog: v2.5.0...v3.0.0