1.4 KiB
1.4 KiB
Layout And Naming
Canonical Structure
<repo-root>/
web/
app.py
<web modules>
requirements.txt
mac/
<AppName>Mac/
<AppName>Mac.xcodeproj/
<AppName>Mac/
ContentView.swift
<AppName>MacApp.swift
EmbeddedBackend/
<AppName>Backend
scripts/
build_embedded_backend.sh
build_selfcontained_mac_app.sh
create_installer_dmg.sh
docs/
architecture.md
onboarding.md
Naming Rules
- Repo: lowercase hyphenated (
trader-desktop-shell). - macOS app target/project: PascalCase with
Macsuffix (TraderMac). - Embedded backend binary: PascalCase +
Backend(TraderBackend). - Settings directory: lowercase snake or kebab (
~/.trader_app). - Environment port var: uppercase snake (
TRADER_PORT).
Migration Rules For Existing Projects
- Do not rename everything in one commit.
- First, add new folders and compatibility references.
- Move scripts and docs next.
- Move web source only after build scripts are updated.
- Rename Xcode project/target last, with a dedicated verification commit.
Commit Strategy
chore(layout): add canonical foldersbuild(backend): add embedded binary buildfeat(mac-shell): host local backend in webviewfeat(sync): add shared settings contractbuild(packaging): add self-contained app + dmg scriptschore(rename): finalize naming migration