Refactored useSearchWithPopular hook to use React Query for search and popular rune flows with debounced input.
Updated tests to wrap hook consumers with QueryClientProvider.
Fixed
useSearchWithPopular: prefer fetched popular results over initialItems when available; correct isLoading/error derivation; sync cache only when initialItems change.
[0.2.5] - 2025-08-28
Added
Reusable useRuneBalances hook for fetching rune balances and refactored Borrow and Swap tabs to use it.
Centralized helper for retrieving and validating Liquidium JWTs used by borrow routes.
Centralized SatsTerminal error handler and wrapped PSBT endpoints with withApiHandler.
Helper to generate rune icon URLs and refactor existing hard-coded links.
Generic useSearchWithPopular hook for debounced search with optional popular-item caching.
Centralized usePopularRunes hook and refactored hooks/components to consume it.
Helper fetchRuneEndpoint for Ordiscan rune endpoints with accompanying tests.
Changed
Centralized rune route validation with shared helper.
Refactored FormattedRuneName to use the useRuneInfo hook.
useAssetSearch and useRunesSearch now leverage useSearchWithPopular.
Replace console statements with logger utilities.
Made useFeeRates accept optional React Query config and reused it in swap execution.
Refactored popular rune mapping into a generic utility.
Consolidated rune data fetching hooks with new useRuneDataQuery wrapper.
Updated changelog workflow to automatically trigger @claude when changelog validation fails, enabling automated changelog generation.
Enhanced Claude workflow permissions to allow contents and pull-requests write access for committing changelog updates.
[0.2.3] - 2025-08-24
Added
Changelog page at /changelog that renders CHANGELOG content without the preamble and link reference block (shows only versions, dates, and changes).
Footer "Changelog" button next to "Docs" for quick access.
[0.2.2] - 2025-08-23
Added
CI: Auto-create/update GitHub Releases from the top CHANGELOG section on merges to main.
CI: PR validation to ensure CHANGELOG top version matches package.json and is not [Unreleased].
[0.2.1] - 2025-08-23
Added
Enforce changelog updates via GitHub Actions workflow.
Claude PR assistant and automated code review workflows.
Popular runes normalizer (id/name/icon) with centralized mapping and de-duplication.
Fee selector with mempool.space rates and improved fee/UX handling.
Comprehensive test coverage for core hooks and APIs (e.g., useSwapExecution, useRunesSearch, useBorrowQuotes).
Changed
Major performance and infrastructure optimizations; organized codebase and consolidated API infrastructure.
Extracted repeated logic into shared hooks/utilities; switched to absolute @/ imports.
Centralized Liquidium API handling and aligned server routes with generated SDK types.
Adopted Big.js for precise financial calculations across swap/borrow flows.
Improved error handling and validation across API routes and UI.
Enabled Next Image optimizations and refined image remote patterns.
Tightened TypeScript strictness and stabilized Jest/jsdom test environment.
Fixed
Resolved borrow quotes infinite loop and memory issues in tests.
Handled Ordiscan 404 responses; corrected Liquidium API domain.
Improved collateral amount precision handling and validation.
Prevented stale selections in popular runes; preserved swap error states.
Addressed SSR and import issues (Suspense wrap, case-sensitive paths, Loading component imports).
Reduced local rate-limit hits to SatsTerminal; standardized quote response format.
Removed
Removed legacy TBA_API_URL usage and 98.css remnants.
Removed obsolete scripts and miscellaneous unused configuration.
Security
Restricted error log details in production API responses.
[0.2.0] - 2025-05-20
Added
Borrow functionality and Liquidium OpenAPI context; portfolio and repay flow.