Add Obsidian vault import feature

- New 'Import Obsidian' action on site settings page
- Upload a zip file of an Obsidian vault to import all notes as posts
- Markdown notes imported with title from filename, published date from
  file timestamp, and body with front-matter stripped
- Images and other attachments saved as Upload records
- New obsimport service handles zip traversal and import logic
- Unit tests for front-matter stripping

Co-authored-by: Shelley <shelley@exe.dev>
This commit is contained in:
exe.dev user 2026-04-09 11:37:11 +00:00
parent d21aeadd56
commit 6bab58f1af
8 changed files with 376 additions and 0 deletions

View file

@ -66,5 +66,12 @@
</div>
</div>
</form>
<div class="row mb-3">
<div class="col-sm-3"></div>
<div class="col-sm-9">
<a href="/sites/{{ .site.ID }}/import/obsidian" class="btn btn-secondary">Import Obsidian</a>
<span class="form-text mx-3">Import posts and attachments from an Obsidian vault zip file.</span>
</div>
</div>
</div>
</main>