Various tooling changes for Lite#12763
Merged
OliverJAsh merged 32 commits intomasterfrom Mar 13, 2026
Merged
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 1 Skipped Deployment
|
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the monorepo tooling and the apps/lite Electron+React app setup, adding new lint/typecheck tooling (Knip + Oxc/Oxlint + tsgo) and expanding Lite’s IPC surface to call directly into @gitbutler/but-sdk N-API functions.
Changes:
- Add Knip config + scripts and introduce Oxlint-based linting for
apps/lite(and exclude Lite from the root ESLint run). - Expand Lite’s Electron IPC API/handlers and wire them directly to
@gitbutler/but-sdkN-API functions. - Update Lite UI tooling/config (Vite/Vitest/TS config) and add TanStack React Query (plus devtools).
Reviewed changes
Copilot reviewed 20 out of 22 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| pnpm-lock.yaml | Locks new tooling/runtime deps (knip, oxlint, react-query, electron-devtools-installer, zod, etc.). |
| packages/but-sdk/src/generated/index.d.ts | Updates generated types (ProjectHandleOrLegacyProjectId) for listProjectsNapi. |
| package.json | Adds Knip scripts; extends globallint to run Lite’s oxlint; adds new dev deps. |
| knip.jsonc | Adds Knip configuration focused on apps/lite. |
| eslint.config.js | Switches to defineConfig and ignores apps/lite/** (Lite linting handled separately). |
| apps/lite/ui/vitest.config.ts | Removes path alias config from Vitest. |
| apps/lite/ui/vite.config.ts | Adds React compiler Babel plugin; removes Vite alias config. |
| apps/lite/ui/tsconfig.json | Tightens TS checks; removes path mappings in favor of package imports. |
| apps/lite/ui/src/router.tsx | Minor typing/style updates in ProjectsList. |
| apps/lite/ui/src/main.tsx | Adds React Query provider and devtools; switches router import to #ui/*. |
| apps/lite/package.json | Adds imports maps, switches to tsgo, adds Oxlint scripts and new deps. |
| apps/lite/electron/tsconfig.json | Tightens TS checks; removes path mappings. |
| apps/lite/electron/src/preload.cts | Expands exposed preload API to include more workspace/commit operations. |
| apps/lite/electron/src/model/workspace.ts | Removes thin wrapper in favor of calling N-API directly. |
| apps/lite/electron/src/model/projects.ts | Removes thin wrapper in favor of calling N-API directly. |
| apps/lite/electron/src/main.ts | Registers additional IPC handlers; installs React DevTools; refactors startup. |
| apps/lite/electron/src/ipc.ts | Expands IPC types and channel constants for new API surface. |
| apps/lite/AGENTS.md | Adds Lite-specific agent guidance for typechecking. |
| apps/lite/.oxlintrc.json | Adds Lite-specific Oxlint configuration/plugins/rules. |
| AGENTS.md | Removes outdated “Skills” section. |
| .vscode/settings.json | Updates ESLint validation and adds Oxc-related editor settings + *.cts association. |
| .vscode/extensions.json | Recommends the Oxc VS Code extension. |
Files not reviewed (1)
- pnpm-lock.yaml: Language not supported
Merged
4d73a1a to
6a7b677
Compare
For now we don't need any abstractions around the Node APIs.
This avoids false positives from the `no-unbound-method` lint rule.
Subpath imports are superior over TS paths because they're part of the standard, meaning more tools can use them.
Without this, the agent would sometimes run the wrong command, or not typecheck at all.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Comment on lines
37
to
+38
| "lint": "turbo run //#globallint --no-daemon", | ||
| "globallint": "prettier --check . && eslint .", | ||
| "globallint": "prettier --check . && eslint . && pnpm --filter @gitbutler/lite run oxlint", |
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.
No description provided.