rdenadai/improvements-v0.0.1 #1

Merged
rdenadai merged 9 commits from rdenadai/improvements-v0.0.1 into main 2026-03-14 22:54:26 +00:00
Owner

Summary

This PR takes Kenaz from a shell bootstrap to a usable Linux-first browser shell built on Slint, WRY, and SQLite. It wires the workspace into a single-window browser with familiar chrome, persisted browser data, and the browser-like polish needed for the current v0.0.1 milestone.

What changed

  • Bootstrapped the Rust workspace and split responsibilities across kenaz-app, kenaz-ui, kenaz-core, kenaz-engine, kenaz-engine-wry, and kenaz-store.
  • Built the main desktop shell with a tab strip, new-tab button, omnibox, navigation controls, tools menu, status area, and WRY child-webview hosting.
  • Added tab and navigation flows: create/close/switch tabs, reopen closed tabs, back/forward/reload/stop, title/URL/loading sync, omnibox URL/search resolution, and window.open / new-tab handling from embedded pages.
  • Added persisted browser data via SQLite for bookmarks, history, downloads, and settings, then surfaced that data through the home/new-tab, bookmarks, history, downloads, settings, and error/empty-state views.
  • Added v1 polish including keyboard shortcuts, downloads open/reveal actions, configurable download directory selection, theme support, browser-style edit actions for the omnibox and embedded pages, native-like context-menu behavior, and Kenaz branding assets.
  • Updated the project documentation and plan so the current scope, runtime assumptions, and remaining follow-up work stay explicit.

Reviewer notes

  • Kenaz remains Linux-first, with X11 as the primary embedded-webview target for v0.0.1.
  • Embedded page context menus intentionally stay native via WebKitGTK/WRY; Kenaz only adds shell-side context menus where the browser chrome needs them.
  • The next follow-up after this PR is moving the remaining blocking store/file work out of direct UI callbacks and behind a background boundary.
## Summary This PR takes Kenaz from a shell bootstrap to a usable Linux-first browser shell built on Slint, WRY, and SQLite. It wires the workspace into a single-window browser with familiar chrome, persisted browser data, and the browser-like polish needed for the current `v0.0.1` milestone. ## What changed - Bootstrapped the Rust workspace and split responsibilities across `kenaz-app`, `kenaz-ui`, `kenaz-core`, `kenaz-engine`, `kenaz-engine-wry`, and `kenaz-store`. - Built the main desktop shell with a tab strip, new-tab button, omnibox, navigation controls, tools menu, status area, and WRY child-webview hosting. - Added tab and navigation flows: create/close/switch tabs, reopen closed tabs, back/forward/reload/stop, title/URL/loading sync, omnibox URL/search resolution, and `window.open` / new-tab handling from embedded pages. - Added persisted browser data via SQLite for bookmarks, history, downloads, and settings, then surfaced that data through the home/new-tab, bookmarks, history, downloads, settings, and error/empty-state views. - Added v1 polish including keyboard shortcuts, downloads open/reveal actions, configurable download directory selection, theme support, browser-style edit actions for the omnibox and embedded pages, native-like context-menu behavior, and Kenaz branding assets. - Updated the project documentation and plan so the current scope, runtime assumptions, and remaining follow-up work stay explicit. ## Reviewer notes - Kenaz remains Linux-first, with X11 as the primary embedded-webview target for `v0.0.1`. - Embedded page context menus intentionally stay native via WebKitGTK/WRY; Kenaz only adds shell-side context menus where the browser chrome needs them. - The next follow-up after this PR is moving the remaining blocking store/file work out of direct UI callbacks and behind a background boundary.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
rdenadai/kenaz!1
No description provided.