A comprehensive journaling solution for Obsidian that transforms your note-taking experience. This plugin helps you create, organize, and navigate structured journal entries across multiple timeframes, from daily notes to custom periods. Whether you're tracking daily work logs, organizing research notes by week, or managing project sprints, Journals provides powerful tools for consistent formatting, easy navigation, and visual organization of your time-based notes.
Follow the steps below to install plugin.
The Journals plugin offers extensive configuration options to customize your journaling experience. This section covers the main settings you'll encounter.
Use Shelves: Enable this option to organize journals into logical groups (like work, personal, projects). Shelves allow you to:
Open on Startup: Choose a journal that will automatically open when you launch Obsidian. Select "Don't open" to disable this feature.
Week Start: Choose which day starts your week (Monday, Sunday, etc.)
Calendar View Position: Display the calendar in the left or right sidebar
Week Numbers: Show week numbers before or after weekdays, or hide them
Today Button Mode:
Calendar Highlighting:
Each journal can be configured separately with these settings:
Note Creation:
Chronology Settings:
Index Settings: For numbered entries (like "Sprint 1")
Frontmatter: Customize frontmatter fields
Journals provides a powerful decoration system to visually distinguish notes in the calendar view and navigation blocks:
Decorations: Each journal can have multiple decorations that visually mark notes based on conditions
Conditions: Apply decorations based on:
Styles: Customize appearance with:
Combinations: Use AND logic (all conditions must match) or OR logic (any condition can match)
Create custom commands to quickly navigate between journal notes:
Command Types:
Context Settings:
UI Integration:
Configure code blocks that help navigate between journal entries:
Block Types:
Entry Line Customization:
Settings:
Daily notes core plugin - this plugin intends to be a replacement for it. Notes created through Daily notes will not be connected to any journal so it is advised to disable this plugin.Periodic Notes community plugin - this plugin was initially inspired by Periodic notes that seem to abandoned and aims to be a replacement for it.Calendar community plugin - starting 1.1.0 this plugin has calendar view similar to calendar plugin. It does not have all the features of calendar plugin as of now, but will gradually catch up.Templater community plugin - starting with 1.3.0 plugin supports Templater templates in its settings. Journal plugin variables are replaced first and can be used inside templater commands.There can be cases when Templater starts interfering with plugin actions resulting in partially broken note or journal related data removed from frontmatter. The best setup to avoid such problems would be:
Trigger Templater on new file creation is disabledTrigger Templater on new file creation is enabled, Enable Folder Templates is enabled, NO Folder template is configuredThis ensures that only journal plugin is processing note template thus avoiding conflicts with templater plugin (journal plugin will use templater itself under the hood to process templater commands).
There variables can be used in note name template, note storage path, content of template note.
{{journal_name}} - name of journal note belongs to{{note_name}} - name of note{{date}} - date used as reference to specific period, formatted using date format from settings. In most cases it is first day of month, quarter, year or custom interval. The only exception is week notes where for notes that belong to next year but have some days in previous year it will be set to end of week. Format can be overridden using following syntax {{start_date:format}} where format is string using Moment.js format rules (like {{start_date:YYYY-MM-DD}}). You can do date manipulations using Moment.js manipulation rules, e.g. {{start_date+5d:format}} to add 5 days.{{start_date}} - first day of week, month, quarter, year or interval depending on note type, formatting rules are the same as in {{date}}, as well as the calculations{{end_date}} - last day of week, month, quarter, year or interval depending on note type, formatting rules are the same as in {{date}}, as well as the calculations{{index}} - available for interval based journals indicating index of interval (like financial quarter or spring number)For easier navigation plugin provides code blocks that can be inserted into note content.
```journal-nav
```
Navigation code block helps navigating relative to current note. Displayed data is configured in journal settings.
Example look for daily note:

```calendar-timeline
```
Timeline code blocks helps navigating daily notes in bigger periods (like week, month, quarter or year). By default daily and weekly notes show week timeline, monthly note - month timeline, quarter note - quarter timeline and yearly note - calendar timeline. This can be changed using mode param.
```calendar-timeline
mode: month
```
Sample week timeline

Sample month timeline

Quarter and Calendar timeline repeat month timeline for every month in quarter or year.
```journals-home
```
Displays list of links to current notes in journals. Supports following settings:
show - controls what journals are displayed (by default only Today link is displayed). Supported values are - day, week, month, quarter, year, custom.separator - used to separate multiple links. Default - •.scale - allows to increase size of links. Used as multiplier of text size - so to have links twice as big as regular text use 2. Default - 1.shelf - allows to limit journal displayed in block to some specific shelf.```journals-home
show:
- day
- week
- month
- quarter
- year
- custom
scale: 2
separator: " | "
shelf: work
```
Shelves are a powerful way to organize journals into logical groups. Here's how to use them effectively:
Enable Shelves in the global settings.
Create Shelves for different areas of your life:
Assign Journals to Shelves when creating or editing a journal.
Filter Calendar View by shelf to focus on specific contexts.
Use Shelf Parameter in journals-home code block to create dashboard notes for specific contexts.
Type: Day
Folder: Work/DailyNotes
Name Template: {{date}} Daily Log
Date Format: YYYY-MM-DD
Auto-create: Enabled
Start date: Your employment start date
Type: Custom
Every: Week
Duration: 2
Folder: Projects/{{journal_name}}/Sprints
Name Template: Sprint {{index}}
Index: Enabled, Increment type
Type: Week
Folder: Education/{{date:YYYY}}/{{date:MMMM}}
Name Template: Week {{index}} - {{start_date:MMM D}} to {{end_date:MMM D}}
Start date: Term start date
End conditions: Date (term end date)
{{variable}}{{date:YYYY-MM-DD}})Frontmatter: Metadata at the top of your note, surrounded by --- lines. The Journal plugin uses frontmatter to store journal name, dates, and other information.
Decoration: Visual indicators that mark or highlight specific days in the calendar view based on conditions you set. They can include colors, shapes, icons, or borders.
Journal Shelf: A grouping mechanism to organize multiple journals together (like "Work" or "Personal"). Helps you filter and focus on specific journal contexts.
Navigation Block: A special code block that generates navigation links between journal entries, customized to each journal type.
Timeline: A calendar-like view that displays days of a specific period (week, month, etc.) with links to corresponding journal entries.
Index: A sequential number assigned to journal entries (like Sprint 1, Sprint 2). Useful for tracking iterations or repeating periods.
Template Variables: Special placeholders like {{date}} or {{index}} that the plugin replaces with actual values when creating notes.
Contributions via bug reports, bug fixes, documentation, and general improvements are always welcome. For more major feature work, make an issue about the feature idea / reach out to me so we can judge feasibility and how best to implement it.