Foam turns VS Code into an open-source personal knowledge base with bi-directional wikilinks, graph navigation, and Git-backed Markdown storage.
Roam Research keeps networked notes inside a proprietary cloud database behind a recurring monthly subscription. Foam turns a standard directory of plain Markdown files inside Visual Studio Code into an interconnected knowledge base versioned by Git. Developers and DevOps engineers get bi-directional links, graph navigation, and daily journaling without leaving their code editor or surrendering file ownership.
Roam Research popularized bi-directional linking and graph visualization for personal notes, but it operates as a hosted walled garden. Notes remain trapped inside a proprietary database, isolated from local shell utilities, command-line tools, and CI pipelines. Exporting data requires manual dumps, and integrating notes with project repositories introduces synchronization friction. For engineers who work inside code editors, jumping to a browser outliner breaks concentration.
Foam embeds those networked note-taking capabilities into Visual Studio Code through lightweight extensions. Notes are standard Markdown files using wiki syntax, including [[wikilinks]] and block anchors. You write documentation alongside source code, commit revisions through Git, and publish static sites through GitHub Actions. While Roam provides smoother block transclusion and real-time multiplayer editing, Foam eliminates context switching and lets engineers search and refactor knowledge with terminal tooling and custom scripts.
foam CLI with lint and search commands, allowing teams to validate links and catch orphans inside pre-commit hooks and CI pipelines.Is Foam free for personal and commercial use? Yes. The project carries the MIT license with no commercial charges, seat restrictions, or hosted feature tiers.
Foam vs Roam Research — which should you choose? Choose Roam Research if you need real-time multi-user editing and an outliner-first interface; choose Foam if you want zero subscription costs, Git version control, and native IDE integration.
Can you open an existing Obsidian vault in Foam? Yes. Because both tools store notes as local directories of Markdown files with compatible wikilink syntax, you can open an existing Obsidian vault folder directly in Visual Studio Code with Foam enabled.
Foam is an effective knowledge management tool for developers who want bi-directional linking and graph navigation directly inside their code editor without cloud dependencies. It is not suitable for users who require native mobile apps or real-time collaborative whiteboards. With active maintenance and a permissive MIT license that allows unrestricted personal and organizational use, Foam provides a dependable, Git-friendly foundation for technical note-taking.
Lint, codegen, breaking-change checks and dependency management in one Git-native CLI. Open source, no registry lock-in.
Show that Foam is listed as an open-source alternative. Paste into your README: