Skip to content

feat: move data directory to hidden .erd-studio folder#47

Merged
liam-machine merged 1 commit into
mainfrom
feat/dot-erd-studio-dir
Jun 10, 2026
Merged

feat: move data directory to hidden .erd-studio folder#47
liam-machine merged 1 commit into
mainfrom
feat/dot-erd-studio-dir

Conversation

@liam-machine

Copy link
Copy Markdown
Owner

Summary

Renames the default data-directory convention from erd-studio/ to .erd-studio/, following the dot-folder convention common for tool config/state directories (.github/, .vscode/, .dbt/, etc.).

What changed

  • Defaults: dbtSemantic.semanticDir setting default and every hardcoded 'erd-studio' fallback in src/ and mcp-server/ is now '.erd-studio'
  • Custom editor activation: new **/.erd-studio/*/*.json selector added; the legacy **/erd-studio/*/*.json selector is kept so existing projects still open without migration
  • File decorations: SemanticFileDecorationProvider regex matches both erd-studio/ and .erd-studio/ paths
  • File watchers: FileWatcherService now takes the configured semanticDir and builds its globs from it, fixing the pre-existing hardcoded-glob wart
  • AI coding harness: SCHEMA_CONTENT and all generators updated to .erd-studio/ paths; HARNESS_VERSION bumped 14 → 15, so installed harness files will be flagged stale and users prompted to update on next activation
  • Fixtures: all three fixture projects git mv'd to .erd-studio/; generated skill files regenerated at version 15
  • Tests, docs, mcp-server, forge-app: all data-dir references updated

What did NOT change

Package name erd-studio, marketplace ID liamwynne.erd-studio, repo URLs, erd-studio-mcp, the .claude/skills/erd-studio/ skill install path, and all legacy dbtSemantic.* identifiers.

Backward compatibility

Existing users with an erd-studio/ folder can either rename it to .erd-studio/ or set "dbtSemantic.semanticDir": "erd-studio" — the legacy editor selector and decoration regex keep both working.

Verification

  • npm run compile — clean (both tsconfigs)
  • npm run build — clean
  • npm run test — 364/364 passing (17 files)
  • Repo-wide grep audit: no remaining non-dot data-dir references; all remaining erd-studio hits are package/marketplace/skill identity

🤖 Generated with Claude Code

Renames the default data directory convention from erd-studio/ to
.erd-studio/, following the dot-folder convention common for tool
config/state directories.

- Default semanticDir setting and all hardcoded fallbacks -> .erd-studio
- Custom editor keeps a legacy **/erd-studio/*/*.json selector so
  existing projects still open (users can also pin
  dbtSemantic.semanticDir to "erd-studio")
- FileWatcherService now derives its watch globs from the configured
  semanticDir instead of hardcoding them
- HARNESS_VERSION bumped 14 -> 15; SCHEMA_CONTENT, generators, and
  regenerated fixture harness files use the new paths
- mcp-server SEMANTIC_DIR, fixtures (git mv), tests, docs, and
  forge-app placeholders updated

Package/marketplace identity (erd-studio, liamwynne.erd-studio) and
the .claude/skills/erd-studio/ skill path are unchanged.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@liam-machine liam-machine merged commit 8b8dfd3 into main Jun 10, 2026
2 checks passed
@liam-machine liam-machine deleted the feat/dot-erd-studio-dir branch June 10, 2026 03:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant