Obsidian setup for thematic analysis
Published in QUT Kelvin Grove campus, 2026
Read this first! Your vault needs to have the right templates and plugins for coding to work.
This guide walks through creating a fresh Obsidian vault that replicates the thematic analysis workspace used in this workshop — including folder structure, the Auto Note Mover plugin, two Bases, and the code and theme note templates.
1. Create the Vault
- Open Obsidian.
- Click Open another vault (bottom-left vault icon) → Create new vault.
- Give it a name (e.g.
Thematic analysis) and choose a location. - Click Create.
2. Create the Folder Structure
Inside the vault, create the following folders. You can do this via File → New folder or by right-clicking in the file explorer pane.
Bases/
Templates/
Analysis/
Analysis/Codes/
Analysis/Themes/
Analysis/Transcripts/
- Bases/ — stores your
.basedatabase views - Templates/ — stores note templates
- Analysis/Codes/ — where individual code notes will live
- Analysis/Themes/ — where theme notes will live
- Analysis/Transcripts/ — where your source material (transcripts, documents, etc.) lives
3. Create the Templates
Go to Settings → Core plugins → enable Templates if it is not already on. Then set the template folder to Templates.
If you use the Templater community plugin instead, the process is the same but you set the folder under Settings → Templater.
3.1 Code Template
Create a new note at Templates/Thematic analysis code.md and paste in the following:
---
aliases:
tags:
- data/analysis/semanticcode
source:
extract:
context:
collection:
themes:
---
Switching to and from ‘source mode’ It will be easier to past in the properties above if you switch to ‘source mode’ temporarily. Click the ellipsis at the top right of your new note and select ‘source mode’, then paste the YAML code in. You can then select ‘source mode’ again and the YAML will display as Obsidian properties.
YAML must start and end with
---If your properties aren’t appearing properly, make sure you have included the three dashes (---) at the top and the bottom of the code block. Obsidian needs those to recognise it as YAML. If you’re still having trouble, make sure the first set of dashes is at the first line of the note, under the title.
Guide to template properties:
| Field | Purpose |
|---|---|
source | The document, interview, or data item the code came from |
extract | The verbatim or paraphrased text being coded |
context | Brief note on the surrounding context |
collection | Optional grouping label (e.g. interview round, document set) |
themes | Link(s) to theme notes — e.g. [[Theme A]] |
When you save a note using this template, Auto Note Mover will detect the data/analysis/semanticcode tag and move the note into the Codes/ folder automatically.
3.2 Theme Template
Create a new note at Templates/Thematic analysis theme.md and paste in the following:
---
aliases:
tags:
- data/analysis/theme
description:
sub-theme:
---
## Relevant Codes
![[Semantic codes.base#Relevant codes]]
The embedded Base will display all code notes that link back to this theme note — giving you a live, filtered view of evidence for each theme.
When saved, Auto Note Mover will move this note into Themes/ automatically.
3. Install and Configure Auto Note Mover
Auto Note Mover automatically files new notes into the correct folder based on their tags — essential for keeping codes and themes organised without manual drag-and-drop.
3.1 Install the Plugin
- Go to Settings → Community plugins.
- If prompted, click Turn on community plugins to disable restricted mode.
Obsidian enables restricted mode by default. You must turn it off to install community plugins.
- Click Browse and search for Auto Note Mover.
- Click Install, then Enable.
3.2 Configure Auto Note Mover Rules
- Go to Settings → Auto Note Mover.
- Under Rules, add the following two rules by clicking the + button for each:
| Rule | Tag | Destination folder |
|---|---|---|
| 1 | data/analysis/semanticcode | Codes |
| 2 | data/analysis/theme | Themes |
- Make sure Trigger is set to Automatic so notes move as soon as you save them with the relevant tag.
- Next to Add excluded folder, click the + button and enter
Templates. This will ensure that Auto Note Mover will ignore files in that folder (we don’t want our template files accidentally being moved into our analysis area!)
5. Create the Bases
Bases are Obsidian’s built-in database views (available from Obsidian 1.8+). They query your vault’s note properties to build dynamic tables.
This is the slightly complex bit! You’ll have to follow the instructions carefully to make sure the bases and filters all work properly.
5.1 Semantic Codes Base
- Right-click the
Bases/folder → New base (or use File → New base). - Name it
Semantic codes. - Create the main view:
- Click the
Filterbutton - Click the triangle to expand
All views - Next to
Where, clickFilethenHas tagthen selectdata/analysis/semanticcode(the tag you created previously). You should see the template you created appear. - Click
Add filter(make sure you do it inAll views, notThis view) - Next to
Where, clickFilethenIs not in folderthen selectTemplates. This excludes the template file from your list. - Click on the
Viewdropdown, then click the arrow on the right to rename it. - Rename the view to
All codes.
- Click the
- Create the
Relevant codesview:- Click on the
Viewdropdown and clickAdd view. - Using the steps above, rename the view
Relevant codes. - Click
Filter. - Under
This view(not `All views`!), click theAdvanced filterbutton (it looks like `</>’). - Paste in the following:
file.hasLink(this.file).
- Click on the
- Create the
Theme developmentview:- Click on the
Viewdropdown and clickAdd view. - Using the steps above, rename the view
Theme development. - Click
Properties. - Start typing ‘Theme’ in the search bar. When you see the ‘Theme’ property appear, check the box next to it.
- Click on the
What each view does:
| View | Purpose |
|---|---|
| All codes | Every code note in the vault |
| Relevant codes | Codes that link to this note — used when embedded inside a theme note |
| Theme development | Flat list for working through code → theme relationships |
Note on the
Relevant codesview This view usesfile.hasLink(this.file), which means it only makes sense when the Base is embedded inside another note (a theme note). When you open the Base directly,this.filehas no referent, so the view will appear empty — that is expected behaviour.
5.2 Semantic Themes Base
- Create a new base in
Bases/namedSemantic themes. - Create the main view:
- Click the
Filterbutton - Click the triangle to expand
All views - Next to
Where, clickFilethenHas tagthen selectdata/analysis/theme(). You should see the template you created appear. - Click
Add filter(make sure you do it inAll views, notThis view) - Next to
Where, clickFilethenIs not in folderthen selectTemplates. This excludes the template file from your list.
- Click the
This gives you a simple table of all theme notes — useful for getting an overview of your emerging themes.
6. Create keyboard shortcuts
Go to Obsidian settings and select ‘Hotkeys’. Use the search filter to find the ‘Insert footnote’ command. Give it a shortcut you will remember. I chose Cmd+Option+Shift+F.
Do the same for ‘Templates: Insert template’. I chose Cmd+Option+T.
7. Verify the Setup
Run through this checklist before you start coding:
Bases/,Templates/,Codes/,Themes/, andTranscripts/folders exist- Auto Note Mover is installed and enabled (restricted mode is off)
- Auto Note Mover has two rules:
data/analysis/semanticcode→Codes/anddata/analysis/theme→Themes/ Templates/Thematic analysis code.mdexists with the correct frontmatterTemplates/Thematic analysis theme.mdexists with the correct frontmatter and embedded BaseBases/Semantic codes.baseexists with all four viewsBases/Semantic themes.baseexists
Quick test
- Create a new note and apply the Thematic analysis code template.
- Fill in
source,extract, andcontext. - Save — the note should move to
Codes/automatically. - Create a theme note using the Thematic analysis theme template.
- In the code note, add a link to your theme note in the
themes:field (e.g.themes: "[[My First Theme]]"). - Open the theme note — the embedded Relevant codes Base should display your code note.
7. Workflow Summary
New note → apply code template → fill frontmatter → save
→ Auto Note Mover files it in Codes/
→ Link it to a theme note via the `themes:` property
→ Theme note's embedded Base updates automatically
→ Semantic codes.base shows all codes grouped by theme
Created for the ResBaz 2026 workshop: Thematic Analysis Using Obsidian — Thursday 25 June, 11am–12:30pm, Room KG-5151.
