foam-up

I’m using foam to organize my notes and blog posts. I have several repositories, for this blog, for customer-story-consulting.com and work projects.

Once a foam project is set up, it’s great to use. But getting there is a bit of a stretch. From what I can tell, there’s a template repository, but it’s always tedious to go through it and remove all the example content.

In the end, it turns out, there are only a few directories and files required to set up a new Foam project.

I need a .foam folder, holding templates/, and .vscode/extensions.json to list foam and a few other extensions.
On top of that, we also need an inbox.md file and todo.md. Once that all is in place, we’re good to go.

To make matters more manageable for me (and hopefully others, too), it was time for a small utility that helps to create new foam projects without having to clone and modify a template repository.

There’s foam-up, a CLI written in Rust to help with the bootstrapping work.

foam-up is written in Rust, and you can install it via cargo install:

$ cargo install foam-up

A new foam project looks like this:

$ ls -al
.foam
.vscode
inbox.md
todo.md

.foam/templates already has a blog post template ready for you, so you can get started with blogging right away.

What are your thoughts on this? What do you use foam for?


Source Code

Leave a Reply