Commit Graph

116 Commits

Author SHA1 Message Date
Jake Turner
00bd864831 fix(AI): improved perf via rewrite and streaming logic 2026-03-03 20:51:38 -08:00
Jake Turner
6874a2824f feat(Models): paginate available models endpoint 2026-03-03 20:51:38 -08:00
Jake Turner
485d34e0c8 fix(UI): move content updates section 2026-02-18 21:22:53 -08:00
Jake Turner
98b65c421c feat(AI): thinking and response streaming 2026-02-18 21:22:53 -08:00
Jake Turner
e75d54bd69 fix(UI): gracefully handle legacy docs and knowledge-base paths 2026-02-18 14:52:06 -08:00
Jake Turner
43ebaa93c1 fix(AI): leave chat suggestions disabled by default 2026-02-18 14:52:06 -08:00
Jake Turner
3ee3cffad9 fix(UI): invert update banner colors 2026-02-18 14:52:06 -08:00
Jake Turner
8609a551f2 fix(Settings): improve user guidance during system update 2026-02-11 22:48:27 -08:00
Jake Turner
a49322b63b fix(Updates): avoid issues with stale cache when checking latest version 2026-02-11 22:48:27 -08:00
Jake Turner
279ee1254c
fix(Benchmark): improved error reporting and fix sysbench race condition 2026-02-11 22:09:31 -08:00
Jake Turner
d55ff7b466
feat: curated content update checking 2026-02-11 21:49:46 -08:00
Jake Turner
c4514e8c3d
fix(Settings): standardize manifest fetching behavior 2026-02-11 16:13:21 -08:00
Jake Turner
d7d3821c06
fix(Settings): improve Maps Manager UI 2026-02-11 16:00:49 -08:00
Jake Turner
32d206cfd7
feat: curated content system overhaul 2026-02-11 15:44:46 -08:00
Jake Turner
4425e02c3c fix(UI): icon imports in settings/update.tsx 2026-02-11 11:21:40 -08:00
Jake Turner
df6247b425 feat(Easy Setup): visual cue to start at Easy Setup for OOBE 2026-02-11 11:16:52 -08:00
Chris Sherwood
f02c5e5cd0 fix(System): use available memory for usage calculation
mem.used on Linux includes reclaimable buff/cache, which caused the
System Information page to show 97% memory usage on a 64GB machine
that actually had 53GB available. The warning banner fired at >90%
creating a false alarm.

Now uses (total - available) for the gauge, percentage, and displayed
values. Also renames "Free RAM" to "Available RAM" using mem.available
instead of mem.free, since free is misleadingly small on Linux (it
excludes reclaimable cache).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-11 10:17:55 -08:00
Jake Turner
4747863702 feat(AI Assistant): allow manual scan and resync KB 2026-02-09 15:16:18 -08:00
Jake Turner
9301c44d3f fix(AI Assistant): chat suggestion performance improvements 2026-02-08 16:19:27 -08:00
Chris Sherwood
812d13c3da fix(System): correct memory usage percentage calculation
The percentage was using (total - available) / total which excludes
reclaimable buffers/cache, but the displayed "Used RAM" value uses
mem.used which includes them. This mismatch showed 14% alongside
22 GB / 62 GB. Now uses mem.used / mem.total so the percentage
matches the displayed numbers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:23:39 -08:00
Chris Sherwood
b0be99700d fix(System): show host OS, hostname, GPU instead of container info
Inside Docker, systeminformation reports the container's Alpine Linux
distro, container ID as hostname, and no GPU. This enriches the System
Information page with actual host details via the Docker API:

- Distribution and kernel version from docker.info()
- Real hostname from docker.info().Name
- GPU model and VRAM via nvidia-smi inside the Ollama container
- Graphics card in System Details (Model, Vendor, VRAM)
- Friendly uptime display (days/hours/minutes instead of minutes only)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 13:23:39 -08:00
Jake Turner
f8117ede68 fix(AI Assistant): inline code rendering 2026-02-08 13:20:10 -08:00
Jake Turner
6745dbf3d1 feat: move KB UI into AI Assistant UI 2026-02-08 13:20:10 -08:00
Jake Turner
12286b9d34 feat: display model download progress 2026-02-06 16:22:23 -08:00
Jake Turner
2e0ab10075 feat: cron job for system update checks 2026-02-06 15:40:30 -08:00
Chris Sherwood
1a95b84a8c feat(docs): polish docs rendering with desert-themed components
Add custom Markdoc renderers for images, links, paragraphs, code blocks,
inline code, and horizontal rules. Restyle existing heading, table, and
list components to match the desert tactical color palette. Add 8
screenshots to docs with polished image presentation (rounded corners,
shadow, captions). Constrain content width for readability.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 14:41:30 -08:00
Jake Turner
36b6d8ed7a fix: rework content tier system to dynamically determine install status
Removes the InstalledTier model and instead checks presence of files on-the-fly. Avoid broken state by handling on the server-side vs. marking as installed by client-side API call
2026-02-04 22:58:21 -08:00
Jake Turner
fcc749ec57 feat: improve global error reporting with user notifs 2026-02-04 22:58:21 -08:00
Jake Turner
52e90041f4 feat(Maps): maps use full page by default 2026-02-04 21:54:36 -08:00
Jake Turner
d63c5bc668 feat: add back to home link on standard header 2026-02-04 21:10:31 -08:00
Jake Turner
5e584eb5d0 fix(Kiwix): avoid restarting container while download jobs running 2026-02-04 17:58:50 -08:00
Jake Turner
cc61fbea3b fix(Docs): add pretty rendering for tables 2026-02-04 17:05:47 -08:00
Jake Turner
d4cbc0c2d5 feat(AI): add fuzzy search to models list 2026-02-04 16:45:12 -08:00
Jake Turner
42568a9e7e fix(Settings): rename port column in Apps Settings 2026-02-03 23:33:49 -08:00
Jake Turner
5de3c5f261 fix: hide chat button and page unless AI Assistant installed 2026-02-03 23:15:39 -08:00
Chris Sherwood
18e55c747a fix(Wikipedia): prevent loading spinner overlay during download
The LoadingSpinner component defaults to fullscreen mode which renders
a Semantic UI dimmer overlay with "Loading" text. This was overlapping
with the blue "Downloading Wikipedia" status banner.

Changed to use fullscreen={false} iconOnly to render just the spinner
icon inline within the banner.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 23:15:16 -08:00
Chris Sherwood
738b57e854 fix(EasySetup): scroll to top when navigating between steps
Adds a useEffect that smoothly scrolls the window to the top whenever
the wizard step changes. This ensures users always see the beginning
of each step content rather than remaining scrolled down from the
previous step.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 23:14:50 -08:00
Chris Sherwood
2c4fc59428 feat(ContentManager): Display friendly names instead of filenames
Content Manager now shows Title and Summary columns from Kiwix metadata
instead of just raw filenames. Metadata is captured when files are
downloaded from Content Explorer and stored in a new zim_file_metadata
table. Existing files without metadata gracefully fall back to showing
the filename.

Changes:
- Add zim_file_metadata table and model for storing title, summary, author
- Update download flow to capture and store metadata from Kiwix library
- Update Content Manager UI to display Title and Summary columns
- Clean up metadata when ZIM files are deleted

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-03 23:14:28 -08:00
Jake Turner
1923cd4cde feat(AI): chat suggestions and assistant settings 2026-02-01 07:24:21 +00:00
Jake Turner
029c2176f7 fix(Chat): sidebar display 2026-02-01 05:48:23 +00:00
Jake Turner
31c671bdb5 fix: service name defs and ollama ui location 2026-02-01 05:46:23 +00:00
Jake Turner
4584844ca6 refactor(Benchmarks): cleanup api calls 2026-02-01 05:23:11 +00:00
Jake Turner
a2aa33168d fix: remove heroicons references and unused icons 2026-01-31 21:00:51 -08:00
Chris Sherwood
68f374e3a8 feat: Add dedicated Wikipedia Selector with smart package management
Adds a standalone Wikipedia selection section that appears prominently in both
the Easy Setup Wizard and Content Explorer. Features include:

- Six Wikipedia package options ranging from Quick Reference (313MB) to Complete
  Wikipedia with Full Media (99.6GB)
- Card-based radio selection UI with clear size indicators
- Smart replacement: downloads new package before deleting old one
- Status tracking: shows Installed, Selected, or Downloading badges
- "No Wikipedia" option for users who want to skip or remove Wikipedia

Technical changes:
- New wikipedia_selections database table and model
- New /api/zim/wikipedia and /api/zim/wikipedia/select endpoints
- WikipediaSelector component with consistent styling
- Integration with existing download queue system
- Callback updates status to 'installed' on successful download
- Wikipedia removed from tiered category system to avoid duplication

UI improvements:
- Added section dividers and icons (AI Models, Wikipedia, Additional Content)
- Consistent spacing between major sections in Easy Setup Wizard
- Content Explorer gets matching Wikipedia section with submit button

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 21:00:51 -08:00
Chris Sherwood
b9ebc6c54e fix(EasySetup): Remove built-in System Benchmark from wizard
System Benchmark is a built-in feature that doesn't require installation,
so it shouldn't appear in the Easy Setup Wizard where users select things
to install. Users can access the benchmark through Settings > Benchmark.

- Removed benchmark entry from ADDITIONAL_TOOLS array
- Removed unused isBuiltInCapability helper and related dead code
- Simplified renderCapabilityCard by removing built-in specific styling
- Removed unused IconArrowRight import

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 20:41:35 -08:00
Jake Turner
adf76d272e fix: remove Open WebUI 2026-01-31 20:39:49 -08:00
Jake Turner
0da050c5a3 fix(UI): switch to tabler icons only for consistency 2026-01-31 20:39:49 -08:00
Jake Turner
243f749090 feat: [wip] native AI chat interface 2026-01-31 20:39:49 -08:00
Jake Turner
50174d2edb feat(RAG): [wip] RAG capabilities 2026-01-31 20:39:49 -08:00
Chris Sherwood
2921017191 feat(collections): Expand curated categories and improve tier modal UX
- Add 3 new curated categories: DIY & Repair, Agriculture & Food, Computing & Technology
- Reorganize content logically (moved DIY/food content from Survival to appropriate new categories)
- Update tier selection modal to show only each tier's own resources
- Add "(plus everything in X)" text for inherited tier content
- Reduces visual redundancy and makes tiers easier to compare

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 13:47:01 -08:00