Skip to content

ENG-1976 Add schema export command to Obsidian - #1263

Open
trangdoan982 wants to merge 1 commit into
eng-2083-add-schema-selection-panel-ui-for-obsidian-exportimportfrom
eng-1976-add-schema-export-command-to-obsidian
Open

ENG-1976 Add schema export command to Obsidian#1263
trangdoan982 wants to merge 1 commit into
eng-2083-add-schema-selection-panel-ui-for-obsidian-exportimportfrom
eng-1976-add-schema-export-command-to-obsidian

Conversation

@trangdoan982

@trangdoan982 trangdoan982 commented Jul 29, 2026

Copy link
Copy Markdown
Member

Summary

Adds the schema export command and settings entry point.

  • nativeJsonFileDialogs.ts — Electron-safe wrappers for showSaveDialog and showOpenDialog; both consumers (export and import) import from here
  • specExport.ts — serializes the vault's selected node types, relation types, relation triples, and templates into the DiscourseSchemaFile JSON format
  • ExportSpecsModal.tsx — modal that renders SchemaSelectionModalBody + SchemaSelectionPanel; user selects items to export then saves to a filesystem location via the native save dialog
  • GeneralSettings.tsx — adds "Export discourse graph schema" entry to the settings UI
  • registerCommands.ts — registers export-dg-schema command in the command palette

Stack

PR 3 of 5 for FEE-840. Stacks on #1262.

  1. Shared foundation — ENG-1975 (ENG-1975 Define schema file contract and shared foundation for Obsidian export/import #1180)
  2. Schema selection panel UI — ENG-2083 (ENG-2083 Add schema selection panel UI for Obsidian export/import #1262)
  3. This PR — schema export command (ENG-1976)
  4. Schema import data layer (ENG-1977)
  5. Schema import UI (ENG-2084)

Test plan

  • pnpm --filter @discourse-graphs/obsidian check-types passes
  • Command palette: Export discourse graph schema opens the export modal
  • Settings entry opens the export modal
  • Dependency enforcement: selecting a triple locks its source/dest node types and relation type
  • Export saves a valid dg-schema-<vault>.json to the chosen filesystem location
  • Exported JSON contains the selected node types, relation types, triples, and templates

Open in Devin Review

@linear-code

linear-code Bot commented Jul 29, 2026

Copy link
Copy Markdown

ENG-1976

@supabase

supabase Bot commented Jul 29, 2026

Copy link
Copy Markdown

This pull request has been ignored for the connected project zytfjzqyijgagqxrzbmz because there are no changes detected in packages/database/supabase directory. You can change this behaviour in Project Integrations Settings ↗︎.


Preview Branches by Supabase.
Learn more about Supabase Branching ↗︎.

@vercel

vercel Bot commented Jul 29, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
discourse-graph Skipped Skipped Jul 29, 2026 2:58am

Request Review

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no potential bugs to report.

View in Devin Review to see 1 additional finding.

Open in Devin Review

@trangdoan982
trangdoan982 force-pushed the eng-2083-add-schema-selection-panel-ui-for-obsidian-exportimport branch 2 times, most recently from f8e4b8d to e9132f3 Compare July 29, 2026 02:58
@trangdoan982
trangdoan982 force-pushed the eng-1976-add-schema-export-command-to-obsidian branch from 3af9adf to f364d5a Compare July 29, 2026 02:58
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