I recently started using the program Obsidian for creative writing and my productivity exploded. Why? Because a good system makes it easy to be creative. I’m going to share a little bit about Obsidian and then give you the workflow that I use so that you can create it for yourself, it you’d like.
I’ve been writing for a long time both professionally and as a hobby. I’ve worked as a grant writer for 13 years, self-published two books, put hundreds of thousands of words on a pair of blogs, and recently published a handful of short stories.
About six months ago, I discovered a new software tool that has transformed my writing craft: Obsidian. Obsidian explained simply is a note taking tool that lets you create, save, and interact with notes in markdown format (.md). Markdown is the modern equivalent of a text file, which means that it is easy to take the files and use them anywhere else.
Obsidian has a few features that make it a total game changer for my writing.
- You can link to other notes in your Obsidian vault simply by putting the note title into double square brackets: [[put your file title here]].
- The program has a huge community that is producing plugins that create new functionality for the software. Plugins like Dataview and Templater make what I do as a writer so much easier.
- The paid version is inexpensive and has a great sync feature so I can take all of my writing with me all of the time. This makes it easy to jot down a note for an article, make a quick edit, or spend a ten-minute window of time fruitfully.
- Markdown can translate directly into HTML, so I can copy and paste from Obsidian right into my WordPress blog with little additional effort.
Creating the Starting Point
As a creative writer, my primary challenge is keeping track of all of my ideas. Any random experience might trigger an idea for a blog post or a story. Obsidian gives me an easy way to capture those ideas and organize them for working on them at a later date.
The first piece of the system is a file I call my “Inbox.” This file opens whenever I open Obsidian, and it’s where I can jot down a note for a blogpost or story. I don’t try to make my inbox entries neat or even complete sentences. I might jot down an idea for a blog title, or a snippet of experience or scripture that struck me in a particular way.
To create your own in-box, you have to add the Community Plugin “Homepage.”
Go to your settings (the little gear under the file view pane) and click “Community Plugins.” First, you’ll have to click the toggle switch to turn off “Restricted Mode” and reload. Then search for the “Homepage” plugin by clicking on the “Browse Button”.
Click on the card for Homepage and it will pull up a detailed card that includes an install button. Click the button and then click the button “activate” to turn it on.
Close the search bar, scroll down in the Community plugins section, and check that the toggle switch next to the name is activated.
Create a file that you want to use for your inbox, then go back into the gear icon and scroll down to the left sidebar until you find the tab to open up the settings for the plugin. Turn on the setting, “Open on startup”, and input the name of the file that you want to use for your inbox. Don’t forget to include folders in the file path.
You’ll notice that my In Box file includes a number of links at the top of the file. I do this so that I can immediately get to my most used files when I start up the program. It’s way faster than searching for them in the file pane.
Build Your Template
Now that you have a place for any spur-of-the-moment inspirations, you need a way to turn those ideas into reality. I use a plugin called “Templater” to do just that. Templater allows me to create new files in my file system that fit into my writing system.
You install Templater the same way that you install Homepage. Go to the Community Plugins page and search for Templater. You’ll download it and activate it the same way that you did your Homepage plugin. The main setting that you need to adjust is the location of where you store your templates. I created a folder called Templates inside another folder called Utilities. This keeps the templates in one place so they’re easy to use.
Obsidian uses YAML (Yet Another Markup Language) as headers and you can define whatever metadata you want to track. You don’t need to use it if you don’t want to, but I like to use it so I can easily add tags to files or see when I started working on a project. The neat thing about the data in the headers is that you can use it to create dynamic lists based on the tags you use. More on that in a bit.
Templater uses a version of Javascript notation to create dynamic templates. This means that you can create a template that includes today’s date in the title, which is something I do on most of my templates. It also allows you to save a new file in a particular folder, which is useful if you have different types of projects that you want to separate. For instance, I have three primary short-form types: articles for my Nathan’s Story blog, articles for my Almoner’s blog, and flash fiction. Each type uses a different template.
Here’s an example template that I use for Flash Fiction:
<%* const new_title = tp.date.now("YYYY-MM-DD") await tp.file.rename(new_title) _%>
<% "---" %>
title: <% new_title %>
aliases: []
author: [Nathan Krupa]
date created: <% tp.file.creation_date("dddd, MMMM Do YYYY") %>
date modified: <% tp.file.last_modified_date("dddd, MMMM Do YYYY") %>
tags: [FlashFiction writing/idea]
<% "---" %>
<% await tp.file.move("Writing/Flash Fiction/" + new_title) %>
[[Dashboard]] - [[In Box]] - [[Flash Fiction]]
When I hit Alt+N, it opens a Templater popup, which asks me which template I’d like to use for a new file. If I select the Flash Fiction Template, it creates a new file using this template in my Flash Fiction folder, gives it today’s date in the title, and then tags the file as FlashFiction and writing/idea.
To customize the template above, check out the documentation for a complete guide. Here’s what I recommend:
- Change the name in the square brackets next to “author:” to your name.
- Change the tags in the square brackets next to “tags:” to the tags you want to use for your dashboards (more on that in a minute.)
- Change the file path next to “tp.file.move” to the path of the folder where you want your file.
- You can include whatever text or images you want in a template. You could put a daily checklist, or like I did, put several links to other files that I want to have easily accessible from every file created using this template. The links are in the last line surrounded by [[double square brackets]].
Once your file is created, you can easily update the title to whatever suits your fancy and start your next masterpiece.
Building Dashboards with Dataview
All the pieces come together into a functional system thanks to another plugin called “dataview”. Again, go to the community plugins tab in settings, download it and turn it on. You can view the official documentation at https://blacksmithgu.github.io/obsidian-dataview/.
The cool thing about Dataview is that it can create dynamic lists and tables from the files in your vault. Those tags that you’re adding to your files? Dataview can use them to automatically organize your workflow. This is the special sauce of the system that I’ve been using for my writing.
I have three kinds of personal writing that I’m doing right now: blogposts for Nathankrupa.com, blog posts for TheAlmoner.com, and science fiction short stories. I have created a dashboard page for each one of the types that uses dataview to keep me organized.
Here’s the basic form that I’m using for the Dashboard: (this is markdown that you can drop right into a file and modify.)
---
title: Flash Fiction
type: Project
status: Active
aliases: []
author: [[Nathan Krupa]]
date created: Tuesday, May 28th 2024
date modified: Tuesday, May 28th 2024
tags: [Project]
---
[[In Box]] - [[Project List]] - [[Writing workflow]]
# Story Capture
## Deadlines
December 15 Aspirational Utopias election lottery
## Active
```dataview
LIST
FROM #FlashFiction and #active
```
## Story Ideas
```dataview
LIST
FROM #FlashFiction and #writing/idea
SORT file.name ASC
```
## Story drafts
```dataview
LIST
FROM #FlashFiction and #writing/draft
```
## Story Published
```dataview
LIST
FROM #FlashFiction and #writing/published
```
The dashboard is structured as follows:
- Up at the top, set off by “—” at the top and bottom, is the YAML header. This contains the metadata for the file.
- Next, I have a “Capture” area where I can jot down ideas that I want to turn into posts. I might jot down a sentence or a title like “Redneck Chainsaw Strikeforce,” which turned into an article that I just published about the hurricane.
- I regularly clean out the capture area and create a new file for each new idea that becomes the working draft. If it’s still an idea or only partly done, I tag it “writing/idea”. If it’s a completed draft that needs to be edited, I change the tag to “writing/draft”. When I’ve published it, I change the tag to “writing/ published”. I also add the “active” tag to any article that is currently top of mind.
- The lines that start with a ## are rendered as a heading.
- The blocks that are set off in triple accents “` top and bottom are the Dataview lists. These lists dynamically update based on the metadata present in the file.
The active dashboard looks something like this (it depends on your theme, which is also fully customizable):
Each link under the heading is live and will take you to the linked file if you click it.
Primed and Ready to Work
Now I’m ready to set my creativity free. Once I got the $5 subscription to Obsidian, I could sync my obsidian vault on all my devices, including my phone. I can jot down thoughts or ideas on the spur of the moment, or work on my phone when I’m out and about with a little bit of free time.
I hope this structure helps you get more creative work done with less friction. I know that it’s been a huge blessing for me. Happy writing!
Would you like to learn more about raising money for Church and Ministry? Check out Letters From The Almoner, now available on Amazon.com.