feat: GPL backend self-provisions example libs + standalone port override

Port the KiCad symbol/footprint brace-scanner parsers + a combined extractor
into web/backend/src/extract/; ensure-example-libs blobless/sparse-clones a
curated KiCad 10.0.3 slice and extracts to a gitignored .libs/ on dev/start, so
a bare GPL clone has libraries with no closed repo present. libsConfig() defaults
LIBS_DIR to ./.libs. vite honors STANDALONE_PORT (strictPort) so a second editor
can run on :3049 alongside the closed stack.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Gergő Törcsvári 2026-06-15 11:12:56 +02:00
commit c2e1214fd1
No known key found for this signature in database
GPG key ID: 8E75F2CDE64E5322
10 changed files with 687 additions and 7 deletions

View file

@ -27,8 +27,12 @@ web/
(no iframe), syncs the project tree into MEMFS, drives File→Open, and runs
same-tab collaboration over BroadcastChannel.
- **Example backend**: Fastify + ts-rest serving a single project off the local
filesystem (`PROJECT_DIR`). No DB, no auth, no uploads — the minimum the editor
needs, and a worked example of the contract.
filesystem (`PROJECT_DIR`). **No DB**, no auth, no uploads — the minimum the
editor needs, and a worked example of the contract. Listens on `:3060`. On
`dev`/`start` it **self-provisions example libraries** — a curated slice of
upstream KiCad symbol + footprint libs is cloned + extracted into `.libs`
(served as read-only origins), so a bare clone has libraries to browse with no
closed repo present. See `backend/src/extract/`.
## Quick start