Skip to content

Migrate from Obsidian

Sergii Kravtsov edited this page Oct 16, 2026 · 2 revisions

Migrate from Obsidian

An Obsidian vault becomes a Folio space without a single file changing. Put the vault in a Git repository, create a space from it, and your team reads and edits the same notes in the browser. Opening a page writes nothing, and git status is clean after the first scan. Want to keep using Obsidian yourself? See Make Obsidian Multiplayer.

Steps

  1. Put the vault in Git. Make a private repository on GitHub, GitLab or your own server. Add a .gitignore first so workspace files do not conflict:
    .obsidian/workspace.json
    .obsidian/workspace-mobile.json
    .obsidian/cache
    .trash/
    .DS_Store
  2. Give Folio a token. User menu, Git access: connect GitHub (if your admin set up the GitHub connection) or paste a token with read and write access to the repository contents.
  3. Create the space. New space, From a git repository, address and branch. When the repository holds .obsidian/, the dialog says it found a vault. You can also pick a subfolder as the root of the space.
  4. Look around. Pages, tag tree, graph, canvases and bases appear. Start with a copy of the vault, not the original.

Light footprint: what it means

Folio adds no id to your notes and keeps its bookkeeping in one hidden file at the repository root (.<slug>.folio), committed once. A repository that already has files of its own connects this way by default, with or without .obsidian/. The space menu has Indexing & files... to add your own scan exclusions (up to 50 top-level names such as Templates/ or draft-*); .obsidian/, .trash/ and .git/ are always skipped.

What renders

Folio reads Obsidian markup and never rewrites your files to use it.

Obsidian In Folio
Wikilinks [[Note]], aliases, #heading, #^block Links, resolved with Obsidian's shortest-path rules; renaming a page rewrites the links that point at it
Embeds ![[image.png|300]], ![[Note]], ![[Note#Heading]] Images with width, embedded notes (3 levels deep, read-only); a PDF embed is a link
Callouts of any type, foldable, nested Drawn (types map onto five looks)
Properties (front matter) Properties panel, types from .obsidian/types.json as a read-only fallback
#tags, %%comments%%, $formulas$, ^block-ids Tag chips and a tag tree, hidden comments, KaTeX, anchors
Canvas (.canvas) View-only page; Convert to Folio board makes an editable whiteboard
Bases (.base) Table, cards or list, with cells you can edit in place
Graph Space graph and local graph, aware of page access

Also: backlinks with the line each link sits on, lists of unresolved links and orphan pages, search with tag:, in:, kind:, prop: (Properties, Tags, Search and Bases), and PDF or DOCX export.

Limits

  • Dataview and query blocks show as code and do not run; Templater tags stay text; community plugins and their CSS do not exist in the browser.
  • Canvases are view-only; bases support table, cards and list (not kanban or map), and not html(), image() or icon().
  • The [[ picker in the editor inserts a plain relative link; Folio never creates wikilinks.
  • In the live editor an image embed ![[image.png]] shows its name, not the picture (Reading, PDF and DOCX show the picture).
  • Two people editing the same note is live inside Folio. Between Folio and a local Obsidian the copies meet in Git (conflicts are resolved like any Git conflict).
  • No end-to-end encryption, no offline vault; you run the server.

See also

Folio vs. Obsidian · Guide: Make Obsidian multiplayer · Blog: open a vault as a team wiki · LIMITATIONS.md

Clone this wiki locally