Foam
-
A [[project]].
- [[roam like]]. A [[vscode]] extension.
-
[[go]] https://foambubble.github.io/foam/
- By [[jevakallio]], [[riccardo ferretti]].
- Notable contributors / people I've met in the [[discord]]: [[ingalless]] [[scottjoe]] [[riccardo]] [[mathieudutour]].
-
As of [[2021-01-04]], my personal [[agora client]].
- See [[foam settings]], which describes my setup.
- Update [[2021-05-07]]: left for [[obsidian]].
-
To use foam:
- Fork its template repository: https://github.com/foambubble/foam-template/. You can use any name you desire for your repository.
- Install [[vscode]] if necessary: https://code.visualstudio.com/download. Launch it.
-
Select 'clone repository' -- if you're using [[github]], log in with [[github]]. Authorize [[vscode]] to make changes to your account. It sometimes requires you to retry once for some reason.
- [[vscode]] should offer to install recommended extensions. Say yes.
-
You can now use [[foam]]:
- Press alt-d to start a new daily note (your journal).
- Write [[wikilinks]] to link to other pages.
- Control-click them to visit existing linked notes or create them if needed.
- ctrl-p to open an existing note.
- ctrl-shift-p to bring up the [[vscode]] command palete; you can search for any command and see keyboard shortcuts.
- Whenever you want to commit to your repository (and the Agora), save all files and use the "branch-like" icon on the left toolbar to review changes and write a commit message.
-
You may need to set a user.name and user.email in git. To do this, open the terminal in [[vscode]] and type:
- git config --global user.name "Your Name"
- git config --global user.email "yourname@example.com"
Foam
Foam
- [[go]]https://github.com/foambubble/foam/
- sub-module for private garden.
CANNOT BE DONE, gh-jekyll complains "The submodule registered for
./Walls
could not be cloned. Make sure it's using https:// and that it's a public repo. See https://docs.github.com/en/github/working-with-github-pages/troubleshooting-jekyll-build-errors-for-github-pages-sites#invalid-submodule" <button class="pull-url" value="https://docs.github.com/en/github/working-with-github-pages/troubleshooting-jekyll-build-errors-for-github-pages-sites#invalid-submodule"](https://mail.google.com/mail/u/0/#inbox/FMfcgxwLsmclCJcnvjwfLBGQCrWCPvjz">pull. - retrofit
foam
to run with [[restructured-text]] (not just Markdown), see foambubble/foam#474.
Foam is a personal knowledge management and sharing system inspired by [[Roam Research]], built on [[Visual Studio Code]] and [[GitHub]].
You can use Foam for organising your research, keeping re-discoverable notes, writing long-form content and, optionally, publishing it to the web.
Foam is free, open source, and extremely extensible to suit your personal workflow. You own the information you create with Foam, and youβre free to share it, and collaborate on it with anyone you want.
website: https://foambubble.github.io/foam/ git: https://github.com/foambubble/foam
Several people have asked me what I think is the best available open source alternative to Roam currently. I've procrastinated writing about this long enough; here go some relatively raw thoughts in lieu of a proper answer. I'll try to keep this updated.
Foam
As of the time of writing I believe the best Roam-like is Foam (https://flancia.org/go/foam) . At least that's what I'm currently using. Setup is a bit clunky, if only because it is actually an extension for a text editor, VSCode. But it's a really good text editor -- and I say this as a die hard vim fan, if you know what I mean.
First it was off-putting but now I think it being an extension is kind of genius. It makes it so that you can extend it and compose it with other existing extensions very easily.
Following https://foambubble.github.io/foam/#getting-started:
- First, install VSCode: https://code.visualstudio.com/download.
- Log into github, or create an account there if you don't have it: https://github.com.
- Create an ssh key and upload it to github if you haven't already done it: https://github.com/settings/keys. If you don't have a key, on OS X and GNU/Linux you can just run
ssh-keygen
to generate it; the result (what you need to upload to github in this step) will be in.ssh/id_rsa.pub
(could also be in.ssh/id_dsa.pub
depending on your SSH version). - Create a new repository using the Foam template: https://github.com/foambubble/foam-template/generate.
- Clone the repository in your computer, using the git client (if you have it) or the git extension in VSCode.
- Open the repository in VSCode and follow the instructions. Accept installing the recommended extensions (Foam is actually a package of other extensions; that's part of its power). If for some reason VSCode doesn't recommend installing Foam, you can search for it and install it by pressing ctrl-shift-p and typing "install extensions".
- press alt-d to generate a daily note. Then get writing! :)
If you add text [[that looks like this]], it becomes a link -- it's a [[wikilink]]. You can control+click to follow it, which will create a file if necessary or open it if it already exists.
Once in a while, commit your changes in VSCode/git. It will automatically back up your notes to github. If you want to keep them private, you should flip that setting on github.com.
That's it!
A note on Athens
Athens (https://flancia.org/go/athens) is only in closed beta. Once it's out, it might provide the best out-of-the-box Roam-like experience; it is looking like it'll be amazing really great. From all the tools listed here, note that only Athens supports block references. If you care about them, you'll want to try it out.
Migrating from Obsidian
I mean, you don't actually need to migrate from Obsidian. Obsidian is actually pretty great! I prefer Foam because of its extensibility and because it's open source; but I like Obsidian. Its community forums are also great.
I'd still recommend you commit your Obsidian repository to git; this way you maintain full control over it, and you can even contribute it to the Agora directly too -- functionally the whole setup can be very similar to Foam. You can just set up an empty repository in github, clone it in your computer, and then copy/create your Obsidian notes directory to it. After that you need to manually run git one in a while to update it:
$ cd garden
$ git commit -a -m "Some message saying what's in this commit."
$ git push
Remember to set your repo as private if you want to keep it that way.
Migrating from Roam Research
You can export your database to Markdown, and import that directly into Foam or Obsidian. Obsidian even has a "Markdown import fixer" that solves some issues with it (unclear to me right now exactly what the list of issues fixed is).
Agora
Now you have a digital garden of your own, please consider adding it to the Agora: https://flancia.org/go/agora-howto . The Agora contains a repository of digital gardens. With such a "digital forest" we could build a https://flancia.org/go/distributed-knowledge-graph by convention.
If you need help, please reach out to me anytime at 0@flancia.org, https://flancia.org/go/twitter or https://flancia.org/go/mastodon .
-
Couldn't parse #push. See source for content.
- public document at doc.anagora.org/foam
- video call at meet.jit.si/foam
2020 07 04
2020 09 29
2020 09 30 journal
2020 10 06
2020 10 07
2020 10 13
2020 10 14
2020 10 15
2020 11 08 journal
2020 11 14
2020 11 22
2020 11 28 journal
2020 11 30
2021 01 04
2021 01 24
2021 04 10
2021 04 29
2021 05 05
2021 05 07
2021 05 09
2021 07 31
2021 08 01
2021 08 05
2021 08 07
2021 09 30
2021 10 03
2021 10 24
2021 11 26
2021 12 01
2021 12 31
2022 01 09
2022 01 11
2022 01 24
2022 01 25
2022 01 26
2022 01 27
2022 04 15
2022 09 22
2023 08 18
2023 08 19
2023 10 22
agora client
agora editor
agora settings
agora vscode
armengol lorand
armengolaltayo
auto commit messages
backlink
bangle
defoam
dej
dendron
feature requests
flancia meet notes
foam settings
full unicode
inbox
init
jeff tang
jevakallio
later
logseq
markdown links
markdown notes
notion
obsidian
personal knowledge graph
project snapshot
rdf
readme
riccardo ferretti
roam likes
slugify
tla
todo
trying to disable slugs
vscode
vscode extension
wikilinking tools