Migrate to Fundamento
Import your notes and documents
Bring your existing knowledge base to Fundamento in one command. Works with Obsidian vaults — resolving wiki links, frontmatter, and heading fragments — or any directory of markdown and office files.
Choose your import path
Same command, two flavours
The importer auto-detects Obsidian vaults. For other sources, any directory works out of the box.
Obsidian vault
Full-fidelity import. Fundamento recognises the .obsidian/ directory and enables Obsidian-specific processing automatically.
- Folder hierarchy
- Documents & attachments
- Wiki links resolved
- YAML frontmatter parsed
- Heading fragment links
Generic folder
Logseq, Bear, Notion exports, or any folder of markdown and office files. Structure and attachments are preserved as-is.
- Folder hierarchy
- Documents & attachments
- Wiki links resolved
- YAML frontmatter parsed
- Heading fragment links
Obsidian import
Everything migrates automatically
Point the CLI at your vault directory and Fundamento handles the rest — from structure to links to attachments.
- Documents
All .md files become Fundamento documents, preserving your content and formatting exactly as written.
- Folder structure
Your vault hierarchy is recreated as nested documents in Fundamento, keeping everything organized just as you had it.
- Images & attachments
Images, PDFs, and videos are uploaded and linked directly to their parent documents — nothing is left behind.
- Wiki links
[[page]], [[page|alias]], and [[folder/page]] links are all resolved to the correct document after import.
- Frontmatter
YAML frontmatter is parsed automatically — document titles and tags are extracted and applied to each imported document.
- Heading links
[[page#Heading]] fragment links are resolved to the correct section within the target document.
Link resolution
Every Obsidian link format supported
Fundamento understands Obsidian's wiki link syntax in all its forms. After your vault is uploaded, a link resolution pass walks every document and converts each reference into a live Fundamento link.
Links to files that weren't imported (or that don't exist in the vault) are kept as text so you never lose content.
| Syntax | What happens |
|---|---|
| [[Note Name]] | Resolved to document by name (case-insensitive) |
| [[Note Name|Alias]] | Resolved with custom display text |
| [[Folder/Note]] | Resolved by full vault path |
| [[Note#Heading]] | Links to a specific heading within the document |
| ![[image.png]] | Embedded as inline attachment |
| ![[Note]] | Converted to a document mention |
|  | Standard markdown image, resolved to attachment |
| [[Note#^blockid]] | Resolved as a document link — block anchor is dropped |
| https://external.com | External URLs left unchanged |
File formats
Documents and attachments, all covered
Markdown is the primary format, but the importer also converts Word and OpenDocument files. All common image, video, and PDF types are imported as document attachments. These formats apply to both Obsidian and generic imports.
Document formats
Converted to Fundamento rich-text documents
- Markdown — .md
- Word — .docx, .doc
- OpenDocument — .odt
Attachment formats
Stored and linked to their parent documents
- Images — PNG, JPG, GIF, WebP, SVG
- Video — MP4, MOV, AVI
- PDF — PDF
Generic import
Any folder of documents
Don't use Obsidian? No problem. The same CLI command works with any directory — Logseq exports, Bear backups, Notion markdown exports, or a plain folder of notes.
Folder hierarchy, documents, and attachments are all preserved. Wiki-style link syntax and frontmatter are Obsidian-specific features and won't be processed in generic mode.
What generic import preserves
Folder hierarchy
Subfolders become nested documents
Markdown documents
.md, .docx, .doc, .odt
Attachments
Images, video, PDF linked to parent docs
Wiki links
Obsidian-only — not resolved
YAML frontmatter
Obsidian-only — not parsed
Heading fragment links
Obsidian-only — not resolved
Command-line import
Import using the CLI
The Fundamento CLI handles everything — uploading files, resolving links, and tracking progress. Resumable if interrupted.
1. Install the CLI
# Point npm to the GitHub Packages registry for @ikigai-systems
npm config set @ikigai-systems:registry https://npm.pkg.github.com
npm install -g @ikigai-systems/fundamento-cli2. Set your API key
export FUNDAMENTO_API_KEY=your_api_keyFind your API key in Workspace Settings → API tokens.
3. Start the import
Obsidian vault — auto-detected
funcli import start <space-id> ./my-vault
# Useful options:
funcli import start <space-id> ./my-vault --concurrency 10
funcli import start <space-id> ./my-vault --ignore "**/.trash/**"Obsidian vaults are detected automatically via the .obsidian/ directory.
Any other directory
funcli import start <space-id> ./my-notesNo extra flags needed. Folder structure and attachments are preserved; Obsidian-specific processing is skipped.
4. Monitor progress
funcli import status ./my-vault # overall progress
funcli import log ./my-vault # per-file status
funcli import retry ./my-vault # retry failed filesFind your Space ID in the URL when viewing the space in Fundamento.
Ready to migrate?
Create a free workspace and bring your notes over in minutes.