Commit Graph

13 Commits

Author SHA1 Message Date
779e32e24a docs(dev): Gui module build integration
All checks were successful
Build and Test / build (pull_request) Successful in 1h20m55s
Covers FreeCADGui target definition, dependency chain (fastsignals,
Qt6, Coin3D, PySide6, PyCXX), source file organisation and how to
add new files, theme/stylesheet build-time copying, version constants,
precompiled headers, CMake presets, ccache, and pixi tasks.

Closes #138
2026-02-10 08:36:50 -06:00
5774f42876 docs(arch): signal architecture — fastsignals vs Qt signals
Explains the dual-signal system: fastsignals for domain events
(origin lifecycle, document changes, application state) and Qt signals
for UI framework integration. Covers API, connection patterns
(scoped_connection RAII, DocumentObserver, temporary blocking),
thread safety model, performance, and common mistakes.

Closes #137
2026-02-10 08:32:07 -06:00
1561dff860 docs(c++): guide to creating a custom origin in C++
Step-by-step walkthrough covering class definition, identity methods,
ownership detection with tracking properties, document operations,
capability flags, extended PLM operations, connection lifecycle,
OriginManager registration, and CMake build integration.

Closes #136
2026-02-10 08:27:01 -06:00
c25aa17591 docs(c++): OriginSelectorWidget toolbar integration
Covers widget lifecycle, signal connections (fastsignals), menu
population, origin selection with authentication gate, icon overlays
for connection state, StdCmdOrigin/OriginSelectorAction command
wrappers, and StdWorkbench toolbar placement.

Closes #133
2026-02-10 08:18:05 -06:00
8fd664d509 docs(c++): LocalFileOrigin implementation guide
Covers ownership-by-exclusion algorithm, document identity, open/save
workflows, capability flags, connection state, OriginManager integration,
and unregister protection.

Closes #131
2026-02-10 08:14:29 -06:00
77e5063b95 docs: deduplicate silo server content in favor of silo-server/ authority
Replace duplicated server setup, deployment, migrations, and config
sections in guide/silo.md, architecture/silo-server.md, and
reference/configuration.md with cross-references to the authoritative
docs/src/silo-server/ directory.

Fix dead link in COMPONENTS.md (mods/silo/docs/ → docs/src/silo-server/).
2026-02-10 08:07:21 -06:00
c9f6f9e02b docs(c++): FileOriginPython bridge — Python-to-C++ origin adapter
Document the FileOriginPython bridge: registration via
FreeCADGui.addOrigin()/removeOrigin(), method dispatch pattern with GIL
management, callStringMethod/callBoolMethod/callMethod helpers, document
argument marshalling (App::Document* <-> App.Document), enum mapping
tables for OriginType and ConnectionState, required vs optional Python
interface methods with defaults, error handling (never propagates Python
exceptions into C++), icon resolution via BitmapFactory, and lifetime/
ownership model between Py::Object, _instances vector, and
OriginManager unique_ptr.

Closes #135
2026-02-10 08:02:02 -06:00
633bef6b18 docs(c++): CommandOrigin commands (Commit/Pull/Push/Info/BOM)
Document the five origin commands: activation pattern (ownership lookup
via findOwningOrigin, capability gate check), command table with IDs,
shortcuts, icons and capability gates, eType flags for undo integration,
registration in CreateOriginCommands(), and the full dispatch call chain
from C++ through FileOriginPython bridge to Python SiloOrigin.

Closes #134
2026-02-10 07:59:45 -06:00
98218661d0 docs(c++): OriginManager singleton API reference
Document the OriginManager singleton: origin registration/unregistration
lifecycle, document-to-origin resolution algorithm (non-local checked
first, local as fallback), explicit vs detected ownership, preference
persistence, signal catalog, and memory model.

Closes #132
2026-02-10 07:55:46 -06:00
bdbe1b163a docs: add FileOrigin API reference and Kindred addon test suite
- Add docs/src/reference/cpp-file-origin.md: full API reference for the
  FileOrigin abstract interface, OriginType/ConnectionState enums,
  LocalFileOrigin behavior, and ownership detection algorithm
- Add SUMMARY.md entry under new 'C++ API Reference' section
- Add tests/test_kindred_pure.py: 78 pure-logic unit tests covering
  update_checker, datum_commands, spreadsheet_commands, silo_commands,
  silo_start, and silo_origin (no FreeCAD binary required)
- Add tests/run_kindred_tests.py: two-tier test runner with CI exit codes
- Add pixi task 'test-kindred' for running addon tests
- Add CI/CD step in build.yml to run addon tests before build

Closes #130
2026-02-10 07:54:26 -06:00
c3a1927bd3 docs: add Silo server documentation with auto-sync workflow (#122)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
- Add sync-silo-docs.yml workflow (daily schedule + webhook dispatch)
- Copy initial Silo server docs into docs/src/silo-server/
- Update SUMMARY.md with Silo Server section
- Update docs.yml to fetch fresh silo docs before mdbook build
2026-02-09 12:37:45 -06:00
c47eb26312 docs: populate initial content from project context (#104)
Some checks failed
Build and Test / build (pull_request) Has been cancelled
Expand documentation pages with real content sourced from the codebase:

- guide/ztools.md: full 16 datum mode reference, all 24+ command classes,
  PartDesign injection table, internal properties, known gaps
- guide/silo.md: all 14 commands with shortcuts, origin capability table,
  architecture diagram, migration inventory, deployment configs, schema docs
- reference/configuration.md: full Silo parameter table, keyboard shortcuts,
  update checker params, theme settings, build config, server config
- introduction.md: added origin system, FreeCAD relationship section,
  expanded theme description
2026-02-09 08:18:21 -06:00
64bde8d97a docs: initialize mdBook structure with stub pages and deployment workflow
Some checks failed
Build and Test / build (pull_request) Has been cancelled
- Add docs/book.toml with coal theme, repo link, and custom CSS
- Add docs/src/SUMMARY.md with navigation structure
- Create 16 content pages across guide/, architecture/, development/, reference/
- Add docs/theme/kindred.css with minimal sidebar overrides
- Add .gitea/workflows/docs.yml for auto-deploy on push to main
- Add docs/book/ to .gitignore

Pages are populated with real content from the codebase where possible.
Remaining pages have TODO markers for future content.
2026-02-09 07:59:01 -06:00