4.6 KiB
OneCAD Simulation rebrand map (identity layer)
OneCAD Simulation is the OneBSpace fork of FieldCraft (a pure-Rust CAE app: FEA, meshing,
thermal, LBM CFD, with a WASM web app at apps/fieldcraft-web). The rebrand is source-level
for everything the user can see or click; only the compatibility layer keeps upstream names (so
.fieldcraft files, crate names, storage keys and internal identifiers stay upstream-compatible,
and every upstream sync stays a clean merge). Files tagged // OneBSpace (OneCAD Simulation):
are downstream-only deltas — one tag per edited site, above or beside the change, so the whole
fork layer can be found with grep -rn "OneBSpace (OneCAD Simulation)".
Rebranded in source (user-visible)
| Layer | Change |
|---|---|
| Web page | <title>OneCAD Simulation, description and social-card meta renamed; upstream's tangency-labs.github.io/fieldcraft og:url/og:image/twitter:image dropped; loading, no-JavaScript and could-not-start text say "OneCAD Simulation" (apps/fieldcraft-web/index.html) |
| App bar | upstream's drawn fringe-cube vector mark dropped; a painted OneCAD Simulation wordmark (appbar.rs::APP_NAME) shows in every width variant — the compact bar keeps the name and the quick actions start after the measured wordmark (bar_layout gained a name_w argument) |
| Help menu | Samples, navigation help, Crash Reports…, Settings… and the version label OneCAD Simulation {VERSION} remain; upstream's Report a Bug… (GitHub draft), Check for Updates and Reinstall FieldCraft… items and their handler branches are removed (appbar.rs::help_menu) |
| Bug/crash reports | fully local: the Report-a-Bug form's Open GitHub Issue became a Copy report button — the draft (title, fields, session) goes to the clipboard and attachments to the local bug-reports/ folder; nothing opens a browser, ISSUE_URL is never opened (report.rs::copy_report); crash questions/headings say "OneCAD Simulation closed unexpectedly / hit an internal error" |
| Crash messages | the engine's unclean-exit and native-crash messages (rendered in the crash dialog and the copied report) name the fork (engine/src/crash.rs) |
| Command catalogue | diagnostics.bug_report and app.update.check palette help texts describe the local draft / name the fork (engine/src/cmd/diagnostics.rs, engine/src/cmd/update.rs) |
| Updates (desktop-only) | every status line, the notice and the install dialog say "OneCAD Simulation" (updates.rs); the web build has no update host, so none of this runs in the browser; "What's new"/release URLs stay desktop-only logic, rebranded text only |
| Privacy | consent question and dialog title, Settings copy and tooltips say "OneCAD Simulation"; the upstream GitHub PRIVACY_URL is no longer rendered as a link nor opened — the privacy note is plain text (privacy.rs); the constant is kept for reference |
| Navigation | the default mouse-mapping preset's label is "OneCAD Simulation" (its id: "fieldcraft" stays, preferences depend on it) |
| Desktop window | window title / run_native app name "OneCAD Simulation" (apps/fieldcraft/src/main.rs; the APP_ID reverse-DNS id stays) |
| Attachments | the bug-report session attachment is onecadsim-session.json (engine/src/bug_report.rs::SESSION_FILE); the model attachment keeps the .fieldcraft name |
Stays upstream (compatibility & scale)
- The
.fieldcraftfile-format extension (andmodel.fieldcraftattachment naming); crate names and the Cargo workspace layout — untouched, so upstream syncs stay mergeable. - localStorage keys (
fieldcraft-recovery/,fieldcraft-prefs) and the browser recovery folder layout. - HTML element ids (
fieldcraft_canvas,fieldcraft_loading) and the trunk tags inapps/fieldcraft-web/index.html. - Environment variable names (
FIELDCRAFT_POSTHOG_KEY,FIELDCRAFT_TELEMETRY,FIELDCRAFT_CONTROL_PORT, …). Telemetry logic is untouched: the Odoo build simply does not setFIELDCRAFT_POSTHOG_KEY, so the PostHog sender stays inert; no key or host URL is surfaced in the UI. - Internal identifiers: egui window/id salts (
fc_appbar,fc_report_bug, …), command ids (diagnostics.bug_report), thefieldcraftnav-preset id,SESSION_FILE/ISSUE_URLAPI names, thefieldcraft-clibinary name quoted in report text. - Desktop-only updater internals (release URLs, package layouts) keep upstream strings — unreachable from the web build.
Not touched here
crates/ui-egui/src/files.rs and apps/fieldcraft-web/src/{web,main}.rs plus odoo/* are owned
by other agents in this task train; their user-visible strings are handled there.