Skip to content

Docs onboarding - #2

Merged
JetSquirrel merged 8 commits into
mainfrom
docs-onboarding
Sep 23, 2026
Merged

JetSquirrel merged 8 commits into
mainfrom
docs-onboarding

Conversation

@JetSquirrel

Copy link
Copy Markdown
Owner

No description provided.

JetSquirrel and others added 8 commits September 23, 2026 22:30
- getting started leads with the disk image, adds the missing step for
  putting `ducklocal` on PATH, and describes the first-run screen as it is
- a guided tutorial over a generated sample file (docs/public/samples),
  every query checked against the real binary
- a troubleshooting page, gathered from settings plus first-run problems:
  command not found, name clashes, the app trust prompt, read-only dashboards
- the home page says what DuckLocal does and routes by task; the CLI and
  apps move out of "Development" into their own sidebar group
- settings no longer claims open tabs are forgotten: app and dashboard
  tabs, recent documents and trusted app folders are remembered
- explicit heading anchors where pages link to each other

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
`Save` (the dashboard's save button) and `AppWindow` (recent apps in the
sidebar) are valid `IconName`s but not in the component library's default
asset bundle, so they rendered blank and logged "could not find asset" on
every frame. An app asset source now embeds exactly those two on top of the
defaults, for the window and the headless export alike, and a test scans the
source for every icon drawn and checks each is served.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The component library sizes spacing, icons, controls and text in rems, and
the rem is the theme's base font size, so one setting scales the whole
interface. Small / Default / Large / Extra large set a 13 / 14 / 16 / 18px
base (the editor's monospace one pixel under), chosen from a title-bar menu
or with the usual Mac shortcuts, wherever focus is.

The choice is persisted like the language and re-applied after every theme
switch, which used to pin 14px in three places. Containers sized in raw
pixels — dialog widths, the status bar, the filter box, sidebar row slots —
now scale with it; dragged panel sizes and plot heights stay the user's.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The app and dashboard glyphs went through the tab's `prefix`, which sits
outside its padding: flush against the previous tab's close button and a
gap away from its own label, so it read as the wrong tab's. The glyph now
shares the padded content with the label.

Two `dashboard.dash` files from different folders both showed as
`dashboard`; a title more than one tab carries now shows its folder beside
it, muted. The three per-kind tab renderers are one.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The dashboard's source editor now colours block types, names, attributes,
plot types, references, comments and heredoc markers through the editor's
parser-independent highlighter seam; a scanner that follows the lexer's
rules but never fails keeps half-typed text coloured. Heredoc bodies go to
the tree-sitter SQL highlighter, so a query reads as it does in the SQL
editor.

That editor had no highlighting at all: the build linked only the json and
rust grammars, so `.language("sql")` coloured nothing. The toolkit's
`tree-sitter-sql` feature adds exactly that grammar.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- toolbar buttons are all bordered, small, glyph and label; Run alone is
  primary. Rename, which was borderless and bare, is one shared button.
  Format, EXPLAIN, Export, View source and Back each get a glyph that says
  what they do ("Back to dashboard" wore a file)
- every tab kind has one glyph — query, app, dashboard — worn on the tab,
  in the `+` menu and in its toolbar; apps no longer wear a pie on the tab
  and a window in the sidebar
- the `+` menu opens a dashboard: "Open dashboard…" picks a .dash file,
  which was only reachable by drag or command line
- the chrome names a database only when it is a file: ":memory:" is gone
  from the title and status bars, and the toolbar's threads / memory-limit
  line with the settings reads that fed it

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- refresh shares the tabs' row instead of standing on one of its own, next
  to a new collapse button; hidden, the sidebar leaves a button at the left
  of the title bar, ⌘B toggles it, and the state is remembered
- Local files / Apps / Dashboards / S3 are headings with a disclosure arrow,
  no longer folders indistinguishable from a schema
- a file row is its view name; the file name shows, muted, only when it
  differs, the folder when two files share a view name, the full path on
  hover — no more truncated "amount · amou…"
- same-titled recent documents show their folder, as the tabs do
- `~` replaces $HOME only at a path boundary: a home of /Users/al no longer
  turns /Users/alice/x into ~ice/x

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
The sidebar listed apps and dashboards most recent first, so opening one
moved it to the top — the list reshuffled under the pointer. It now sorts by
title, then path; recency still decides which documents the list keeps.

A recent app or dashboard gets a remove button on hover, like a file row's.
It only drops the entry from the list: the files and any open tab stay, so
there is nothing to confirm.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@JetSquirrel
JetSquirrel merged commit 91375b2 into main Sep 23, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant