Repository navigation
Scribe and Notes: routes, seams and dependencies for the Pro features - #222
Open
alichherawalla wants to merge 75 commits into
Open
alichherawalla wants to merge 75 commits into
alichherawalla wants to merge 75 commits into
Conversation
… upgrade screen; /scribe and /notes are routes whose pages push history
… Pro registers the Scribe routes
…when Pro ships its build script
…ibe hook; without Pro it refuses with pro_required and state reports writing off
…o the extension's Open Off Grid works; the link carries no command
…nd on the Notes editors: CodeMirror 6, Tiptap 3 and d3-force for the graph
…-win.exe, .NET 8 in the Windows jobs) and stages the X11 helper on Linux
…ibe overlay runs on X11
… registered route answers instead
…available before Scribe registers, and forwards to the Scribe hook with the browser's name
… reaches Pro's Notes screen as its subroute
…aunch and from macOS open-url
… so Pro's Page view can make its own parser; mermaid keeps its own 16.4.2
…tes' editor accepts its extensions when ui-library carries its own copies
…ature/scribe-notes
… halo or glow on the field or the box around it, in pinned and linked builds
…ui pin carries ui-library's fix
# Conflicts: # src/renderer/src/App.tsx
…in, Scribe hosts, and the picker's Show changes toggle
…cused field with only its 1px emerald border
… menus with 8px corners
…, for Scribe's Get the extension
…, less copy) and the Notes import glyph
# Conflicts: # .github/workflows/ci.yml # .github/workflows/release.yml # package-lock.json # package.json # pro # src/renderer/src/__tests__/browser-boundaries.setup.ts
…ce itself, so keyboard focus adds no second ring round it
…he in-app chip stays by the selection
…erlines on arrival with one focus border, in-app chip by the selection
…mmary, no behaviour change
…t for the faked getRagMessages call
…s before the edit
# Conflicts: # .github/actions/setup-desktop/action.yml # .github/workflows/ci.yml # .github/workflows/release.yml # .github/workflows/windows-build.yml
…what the person sees; overlay underlines before the edit point stay put
… beside a text colour
…; test-vault PR screenshots
…cus outline; real controls keep it
…efore and after the shared prose rule
…e, ⌥Enter works in any non-secret field, and the overlay skips IDEs, spreadsheets, Finder and settings
…verlay measures Chromium words through their text runs, so hover opens the fix card there, and never selects text to measure
…s one id per folder
…ove lays out a wall of text by itself, and its Notes card opens again
…a [bracketed] note link in Page view
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Core's half of Scribe (writing help in every text box) and Notes (Olympus Notes with Obsidian behaviour). Core stays inert: it adds routes, seams and dependencies, and every feature lives in Pro (off-grid-ai/desktop-pro, same branch). Without Pro, each entry point leads to the upgrade screen or refuses with "Pro required". Merged with
main.Scribe and Notes routes
Scribe and Notes join the Pro catalog as locked tabs in Work.
/scribeand/notesare routes inVIEW_MODES, so both page-shell guards mount them, and their subpages push history. A note deep link opens the upgrade screen for free users, and Pro's Notes screen as its subroute.Writing API, extension bridge and sync seams
The gateway answers
/v1/writing/*with 402 Pro required until Pro registers its Scribe routes. The extension bridge answers a sealedwritingrequest through Pro's Scribe hook, or refuses withpro_required.offgrid://links open or focus the app on macOS, Windows and Linux, and a link carries no command. The external links list names the extension's Chrome Web Store page. The core sync entities name Scribe's learned words, preferences and style guides, so Pro can sync them.Build and dependencies
Desktop depends on
@offgrid/writingand@offgrid/notesfrom shared, and on the Notes editors (CodeMirror 6, Tiptap 3, d3-force); the renderer loads one copy of CodeMirror and Lezer. Native staging builds Pro's Scribe overlay helper on macOS, Windows and Linux.@offgrid/operator-uiis pinned to ui-library 7a37271, which brings no glows in either skin, the brand mark for hosts outside the app, the host-triggered accept and the picker's waiting shimmer.A focused field: 1px emerald border, nothing more
A focused field in Try it: the same border, no halo on the card
A dev or test instance never touches the installed app's engine
OFFGRID_LLAMA_PORTgives a dev or test instance its own preferred model port, likeOFFGRID_GATEWAY_PORT; a packaged app keeps 8439. The model-port test now takes a free port of its own, so it passes while an app on the machine holds 8439, and never touches it.Tests
measureScroll). Animations run unchanged.Summary by CodeRabbit