Files
OneCAD-Draft/plugins
Hakan SevenandClaude Opus 5.5 2dfa9f3f2a Cargo: codec 1ca7d33 (acadrust 0.6.0 sync), kernel 7fb0abb, graph d7908a8
The codec now carries upstream acadrust 0.6.0 (foldhash, thiserror 2,
MLINE / legacy class / layer handle fixes). Its new Spline::dwg_scenario
is serde-skipped, so the Python plugin's generated entity records could
not name it; they now take such fields from the type's Default.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 11:06:44 +03:00
..

Plugin registry

registry.json is the curated list of third-party plugins Open CAD Studio offers in its Plugin Manager → marketplace. The app fetches it from this repo's main branch at runtime, so adding an entry makes a plugin discoverable to every user without an app update.

Add your plugin

Open a pull request adding one object to the array in registry.json:

{
  "repo": "your-account/your-plugin-repo",
  "name": "Human-readable name",
  "description": "One line describing what it does."
}

Requirements for the linked repo:

  • Builds a cdylib against ocs_plugin_api and exports the host symbols via ocs_plugin_api::export_plugin!.
  • Publishes per-platform binaries plus plugin.toml as GitHub Release assets (see opencad-example-plugin and its release workflow for a template). Asset names carry the platform, e.g. your.plugin-linux-x86_64.so, …-windows-x86_64.dll, …-macos-aarch64.dylib.
  • plugin.toml declares an api_version compatible with the host (3 or newer). From API 4 on it must also carry the rustc_version and acadrust_source the library was built with; the host loads it only when both match its own build.

The host reads the release matching the user's platform, checks the API version, and installs it into the user's plugins folder.

Listing is curation, not endorsement or a security review. Installing a plugin runs its native code; users install at their own risk.