detached a123e25

docs: clean up README and fix contribute section grammar

commit
a123e25849379fdae60d7b2ba9fb955befcf77ca
author
bnema · · 2025-10-18 11:38 UTC
parent
f9090e3
signature
GPG Unverified2B82207D370127A0 The key is unknown
1 file · +2 -26
M README.md +2 -26
@@ -172,16 +172,6 @@ Dumber features a Zellij-inspired pane management system that allows you to spli
172172 3. **Navigate**: Use `Alt+Arrow Keys` to move focus between split panes, or `Alt+Up/Down` to navigate within stacked panes
173173 4. **Close**: Press `X` in pane mode to close the current pane
174174
175-### Features
176-- **Binary tree layout**: Panes are organized in a binary tree structure for optimal space usage
177-- **Stacked panes**: Zellij-style stacking with collapsed title bars showing "Page Title - domain" for inactive panes
178-- **Focus management**: Visual borders, hover-to-focus, and enhanced focus throttling (100ms) for intuitive navigation
179-- **Independent sessions**: Each pane maintains its own browsing session, history, and zoom level
180-- **Advanced popup handling**: Intelligent popup vs tab detection, OAuth auto-close, and popup deduplication with SHA256 fingerprinting
181-- **Cross-WebView communication**: localStorage-based parent-popup bridge enabling proper `window.opener` functionality
182-- **WebView identity tracking**: Unique WebView ID system for precise popup targeting and enhanced debugging
183-- **Keyboard-driven**: All operations accessible via keyboard shortcuts with modal pane mode
184-
185175 ### Configuration
186176 The pane system is fully configurable via `config.json`:
187177 ```json
@@ -373,22 +363,8 @@ WebKitGTK uses GStreamer for media playback. Dumber includes automatic hardware
373363 - `sudo apt install gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-pipewire`
374364 - Hardware accel: `gstreamer1.0-vaapi va-driver-all` (covers most GPUs)
375365
376-## Theme and Runtime Updates
377-- The homepage and pages respect your system’s light/dark preference.
378-- The app updates color‑scheme live when your GTK theme changes (no relaunch needed).
379-
380-## Project Structure
381-- `main.go`: Entry point with CLI/GUI routing
382-- `internal/app/cli`: CLI application logic and Cobra commands
383-- `internal/app/browser`: Browser application logic and WebKit integration
384-- `internal/cli`: Cobra commands (`browse`, `dmenu`, `version`)
385-- `internal/config`: Viper‑backed config, XDG helpers, defaults
386-- `internal/db`: SQLite schema init and sqlc‑generated queries
387-- `internal/logging`: Structured logging system with file rotation
388-- `services`: Application services (parser/history/config/browser)
389-- `pkg/webkit`: WebKit2GTK bindings (CGO and stub implementations)
390-- `pkg/clipboard`: Cross-platform clipboard operations
391-- `frontend`: TypeScript homepage UI bundled into the binary
366+## Contribute
367+I will gladly accept contributions, especially related to UI/UX enhancements. Feel free to open an issue and let's discuss it!
392368
393369 ## Security & Privacy
394370 - History and zoom settings are stored locally in SQLite under XDG state.
@@ -172,16 +172,6 @@ Dumber features a Zellij-inspired pane management system that allows you to spli
172 3. **Navigate**: Use `Alt+Arrow Keys` to move focus between split panes, or `Alt+Up/Down` to navigate within stacked panes172 3. **Navigate**: Use `Alt+Arrow Keys` to move focus between split panes, or `Alt+Up/Down` to navigate within stacked panes
173 4. **Close**: Press `X` in pane mode to close the current pane173 4. **Close**: Press `X` in pane mode to close the current pane
174 174
175-### Features
176-- **Binary tree layout**: Panes are organized in a binary tree structure for optimal space usage
177-- **Stacked panes**: Zellij-style stacking with collapsed title bars showing "Page Title - domain" for inactive panes
178-- **Focus management**: Visual borders, hover-to-focus, and enhanced focus throttling (100ms) for intuitive navigation
179-- **Independent sessions**: Each pane maintains its own browsing session, history, and zoom level
180-- **Advanced popup handling**: Intelligent popup vs tab detection, OAuth auto-close, and popup deduplication with SHA256 fingerprinting
181-- **Cross-WebView communication**: localStorage-based parent-popup bridge enabling proper `window.opener` functionality
182-- **WebView identity tracking**: Unique WebView ID system for precise popup targeting and enhanced debugging
183-- **Keyboard-driven**: All operations accessible via keyboard shortcuts with modal pane mode
184-
185 ### Configuration175 ### Configuration
186 The pane system is fully configurable via `config.json`:176 The pane system is fully configurable via `config.json`:
187 ```json177 ```json
@@ -373,22 +363,8 @@ WebKitGTK uses GStreamer for media playback. Dumber includes automatic hardware
373 - `sudo apt install gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-pipewire`363 - `sudo apt install gstreamer1.0-tools gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-pipewire`
374 - Hardware accel: `gstreamer1.0-vaapi va-driver-all` (covers most GPUs)364 - Hardware accel: `gstreamer1.0-vaapi va-driver-all` (covers most GPUs)
375 365
376-## Theme and Runtime Updates366+## Contribute
377-- The homepage and pages respect your system’s light/dark preference.367+I will gladly accept contributions, especially related to UI/UX enhancements. Feel free to open an issue and let's discuss it!
378-- The app updates color‑scheme live when your GTK theme changes (no relaunch needed).
379-
380-## Project Structure
381-- `main.go`: Entry point with CLI/GUI routing
382-- `internal/app/cli`: CLI application logic and Cobra commands
383-- `internal/app/browser`: Browser application logic and WebKit integration
384-- `internal/cli`: Cobra commands (`browse`, `dmenu`, `version`)
385-- `internal/config`: Viper‑backed config, XDG helpers, defaults
386-- `internal/db`: SQLite schema init and sqlc‑generated queries
387-- `internal/logging`: Structured logging system with file rotation
388-- `services`: Application services (parser/history/config/browser)
389-- `pkg/webkit`: WebKit2GTK bindings (CGO and stub implementations)
390-- `pkg/clipboard`: Cross-platform clipboard operations
391-- `frontend`: TypeScript homepage UI bundled into the binary
392 368
393 ## Security & Privacy369 ## Security & Privacy
394 - History and zoom settings are stored locally in SQLite under XDG state.370 - History and zoom settings are stored locally in SQLite under XDG state.

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 8

Tags 42

↑↓ moveenter openesc close