@@ -7,6 +7,33 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77
88## [ Unreleased]
99
10+ ### Added
11+ - ** v0.3 — Persistence:** JSON store at ` $OS_CONFIG_DIR/hypr/store.json ` ; data survives restart.
12+ - ** Collections:** create named collections, save requests to them (name + target collection dialog),
13+ load saved requests into any tab with one click, delete collections and individual requests.
14+ - ** History:** every sent request is recorded (method, URL, status, duration); shows in sidebar;
15+ click an entry to restore the URL into the active tab; auto-capped at 200 entries; clear-all action.
16+ - ** Session restore:** open tabs (URL, method, headers, params, body, auth, settings) are persisted
17+ on every meaningful action and restored on the next launch.
18+ - ** Sidebar:** collapsible left panel (toggle via ` PanelLeftClose ` /` PanelLeftOpen ` icon) with
19+ Collections and History sections; each section independently collapsible.
20+ - Per-tab method and URL are now properly isolated — switching tabs restores each tab's method+URL
21+ (previously method and URL were shared across all tabs).
22+ - 5 new Go tests in ` store_test.go ` covering collection CRUD, request save/delete,
23+ history append/clear/cap, and session save/restore (total: 34 tests).
24+
25+ ### Changed
26+ - Backend: added ` Store ` type backed by JSON, 10 new bound methods
27+ (` ListCollections ` , ` SaveCollection ` , ` DeleteCollection ` , ` SaveRequest ` , ` DeleteRequest ` ,
28+ ` AppendHistory ` , ` ListHistory ` , ` ClearHistory ` , ` LoadSession ` , ` SaveSession ` ).
29+ - ` App ` struct gains a ` store *Store ` field initialized in ` startup ` ; failure is non-fatal
30+ (app runs without persistence rather than crashing).
31+ - ` KVPair ` , ` StoredAuth ` , ` TabState ` , ` SavedRequest ` , ` Collection ` , ` HistoryEntry ` , ` Session `
32+ Go types added to ` store.go ` .
33+ - Frontend layout changed from single-column scroll to sidebar + scrollable main area.
34+ - ESLint: ` @typescript-eslint/no-empty-function ` turned off (fire-and-forget ` .catch(() => {}) `
35+ is intentional for non-critical persistence calls).
36+
1037### Added
1138- Complete UI redesign on Tailwind CSS + shadcn/ui (Radix), with IBM Plex typography
1239 and a reusable component kit under ` frontend/src/components/ui/ ` .
0 commit comments