Repository navigation
Add repo scaffolding and natural-language-to-SQL example - #1
Conversation
costin-busioc
commented
Jun 17, 2026
- Root files: .gitignore, LICENSE, README.md
- qvac-natural-language-to-sql: Electron app that turns plain-English questions into local SQL via the QVAC SDK (Qwen3 4B) over an in-memory SQLite (sql.js) bank dataset.
- Root files: .gitignore, LICENSE, README.md - qvac-natural-language-to-sql: Electron app that turns plain-English questions into local SQL via the QVAC SDK (Qwen3 4B) over an in-memory SQLite (sql.js) bank dataset.
|
You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool. What Enabling Code Scanning Means:
For more information about GitHub Code Scanning, check out the documentation. |
The renderer loaded sql.js, React, React-DOM, and @babel/standalone from CDNs at runtime, contradicting the "100% on-device, nothing leaves the machine" claim and breaking the app offline. - Vendor sql.js WASM and the production React/React-DOM builds into renderer/vendor/ via scripts/build.js; wire window.QVAC_LOCAL_WASM and drop the Cloudflare fallback in db.js. - Pre-transpile JSX to plain JS at build time (classic runtime) and drop the in-browser Babel; index.html no longer loads any remote script. - Add build/prestart npm scripts so `npm start` always builds first; gitignore the generated renderer/vendor/, app.js, components.js. - Make sql.js a regular dependency (exact 1.14.1), pin @qvac/sdk exact (0.12.2), and add React/Babel as build-time devDependencies. - Update README/RECIPE to describe the offline-by-default build. Result: zero network requests at runtime except the one-time model download through the SDK.
thomasblc
left a comment
There was a problem hiding this comment.
LGTM. The fully-offline pass addresses the earlier CDN concern cleanly: sql.js WASM + production React/React-DOM are vendored into renderer/vendor/ and the JSX is pre-transpiled via scripts/build.js (run automatically by prestart), so the renderer loads zero CDN scripts and never runs Babel at runtime. QVAC_LOCAL_WASM is wired so the WASM resolves locally. SDK usage matches the official shipped quickstart (dynamic ESM import, modelType llm, completion -> result.text, unloadModel on quit), @qvac/sdk is pinned exactly to 0.12.2, sql.js is a real dependency, and the read-only guard + schema-only prompt match the recipe's privacy claims. Verified statically (build chain + tree); only network call left is the one-time model download. Nice work.