Calendar Period Week Notes
pendingby Tim Williams
A calendar grid plugin with a scratchpad area, notes list, pinned notes, tasks and asset views.
Obsidian Calendar Period Week Notes
A powerhouse daily and weekly planning plugin for Obsidian which combines a highly customizable calendar with an integrated tabbed interface for your scratchpad, recent notes, tasks, assets and a dashboard containing a number of widgets giving you a complete overview of your vault at a glance.
Move beyond simple daily notes with a unique Period/Week system for those who have their financial year mapped out over 13 periods of 4 weeks, (or simply use the standard calendar week numbering), interactive popups, and a deeply integrated task manager.
The main calendar grid with period / week column, dot indicators, and heat map for the number of tasks for a date.
The vertical calendar grid which allows you to scroll up and down to see previous dates and forward dates up to the next year.
The main interface showing in light appearance with the calendar week column, heat map for tasks, and the integrated tab buttons for Tasks, ScratchPad, Pinned Notes and Assets.
The Themes settings tab provides the ability to view different themes in light and dark app appearances and then apply with one click. Navigate up and down the different themes with the arrow keys and left / right to toggle between light and dark appearance.
Some of the available 16 themes or make your own theme and share with others from the plugin settings.
NEW: Dashboard Task Tab showing summary and heatmap of tasks acrosss your notes.
NEW: Dashboard Task custom widget chart examples that can be configured: kpi stat widgets, cumulative line chart to track task completion/project completion which can be based on tag. Radar completion chart, pie chart and simple line chart examples. Create your own with style with colours, show hide legends, show hide toggles, show / hide chart titles and even create section headers to group charts - which you can easily show / hide by clicking the widget name or chevron. Easily order in the settings too by dragging and dropping where you want a widget displayed. Five widget sizes to choose from all based on widget and height: quarter, third, half, full and full tall.
NEW: Dashboard File Creation Tab showing summary and heatmap of files acrosss your vault.
NEW: Dashboard Custom Heatmaps - create your own configurable heatmaps with powerful filters in the new Dashboard Settings area.
NEW: Dashboard Custom Heatmaps - example of a custom heatmap showing in the Dashboard tab.
NEW: Set your goals with 15 levels to achieve.
Calendar Period Week Notes
A powerful calendar and dashboard system for Obsidian, designed for deep customization and integration with your notes, tasks, and files. It combines a dynamic calendar with a configurable dashboard featuring task summaries, file creation heatmaps, and much more.
⨠Features
š The All-New Dashboard
The plugin now features a powerful, customizable dashboard grid that can be switched between two primary modes by clicking its tab. All widgets are collapsible and their order can be rearranged via drag-and-drop in the settings.
- Two Main Views:
- Tasks Dashboard: Get an at-a-glance overview of your productivity.
- Creation Dashboard: Visualize your note and file creation activity over time.
- Tasks Dashboard Widgets:
- Task Summary Widgets: See summaries for
Today,Tomorrow,Next 7 Days, andFuture & No Due Date, with progress bars showingIncomplete,In-Progress,Completed, andOverduetasks. - Mini & Collapsed States: Click the header to collapse a widget, or use the toggle to switch to a compact "mini" view.
- Weekly/Monthly Task Metrics: View bar charts summarizing task completion and creation over the current week and month.
- Task Summary Widgets: See summaries for
- Creation Dashboard Widgets:
- Custom Heatmaps: Create an unlimited number of personalized heatmap widgets to track file activity. Each heatmap is deeply configurable:
- Date Source: Track files by
creation dateor by adate in the note title. - Custom Filters: Combine multiple rules (
tag,filename,path,filetype) usingAND/ORlogic. - Date Range: Set custom time windows using "Months Back" and "Months Forward" fields.
- Color & Links: Assign a unique color and link the widget's total count to a summary note.
- Debug Mode: A special mode to help you troubleshoot your filter rules.
- Date Source: Track files by
- All Files Heatmap: A default widget that shows all note and asset creation activity across your vault.
- Custom Heatmaps: Create an unlimited number of personalized heatmap widgets to track file activity. Each heatmap is deeply configurable:
šļø Dynamic Calendar View
- Dual Calendar Layouts: Instantly switch between a traditional monthly grid and a continuous vertical scroll view by clicking the month title.
- Enhanced Mobile Experience:
- Swipe Gestures: Intuitively swipe up on the grid to collapse it, swipe down on the header to expand it, and swipe down on the grid itself to switch to the vertical view.
- Optimized Interaction: On mobile, long-press a date to open the details popup and tap the date to open the daily note. The calendar also auto-collapses when you focus a search bar to maximize screen space.
- Custom Period/Week System: Structure your year with a 13-period, 4-week system. Set your own start date for P1W1.
- Flexible Week Start: Choose either Sunday or Monday as the first day of the week.
- At-a-Glance Dot Indicators: See daily activity with fully customizable colored dots for daily notes, weekly notes, new/modified notes, new assets, and external calendar events.
- Task & Event Indicators: Visualize your workload with multiple styles:
- Badge: A numerical count of open tasks/events.
- Heatmap: The cell background color changes based on the number of tasks/events.
- Dot: A single, customizable dot.
- Custom Task Statuses: Go beyond
[x]. Use symbols like/(in-progress),>(forwarded),!(important), or?(questions), all with customizable icons.
- Advanced Highlighting: Customize highlighting for the current week row, day column on hover, or use the Complex mode to highlight both the row and column up to the hovered date.
- Weekly Notes: Create and manage weekly notes with customizable naming formats, template support, and a dot indicator on the week number.
Please Note: For the calendar event dots you may (optionally in the plugin settings) set up to fetch over the internet the calendar event information you wish to see / view on the caleandar grid and popup window.
š§© Integrated & Draggable Tab Panels
A powerful set of panels located below the calendar. All tabs can be reordered via drag-and-drop.
- š Dashboard Tab: The entry point to the new dashboard system. Click the tab while it's active to toggle between the Tasks and Creation dashboard views.
- š Scratchpad Tab:
- Toggle between edit and Markdown preview mode.
- Quickly add tasks using a customizable format with dynamic date placeholders (
{today},{friday}). - Shift-click the tab to open the scratchpad file in a full editor tab.
- š Notes & Pinned Tab:
- Click the tab to toggle between "Recent" and "Pinned" mode.
- Pinned Mode: Shows notes with a specific tag (e.g.,
#pin). - Custom Drag-and-Drop Sorting: Activate a custom sort order and reorder pinned notes by holding
Alt/Option. - Right-Click Popups: Choose to trigger popups on right-click (or long-press on mobile) instead of hover.
- āļø Tasks Tab:
- Group tasks by due date (
Overdue,Today...) or by#tag. Toggle the grouping method by clicking the tab. - Animated Groups: Task groups smoothly expand and collapse.
- Check off tasks directly from the list to update the source file instantly.
- Group tasks by due date (
- š¼ļø Assets Tab:
- Toggle between list and grid view by clicking the tab.
- Unused Asset Indicator: An icon highlights assets not linked from any note.
- Backlinks Popup: Hover over an asset's icon to see all notes that link to it.
šØ Powerful Theming & Deep Customization
- 16 Pre-built Themes: Instantly change the look and feel with a diverse collection of themes.
- Total Customization: Every color, font, icon, and size is customizable through the settings.
- Import/Export: Save and load your complete plugin configuration or just your theme colors to a JSON file.
- Draggable Order: Reorder tabs and dashboard widgets to create your perfect layout.
- Visibility Toggles: Hide any tab or dashboard widget you don't use.
- Custom Icons: Change the icons for tabs and task groups to any Lucide icon name.
š Installation
From Community Plugins
- Open Settings > Community Plugins.
- Make sure "Restricted mode" is off.
- Click Browse and search for "Calendar Period Week Notes".
- Click Install, then Enable.
Manual Installation
- Download the zip file containing the
main.js,manifest.jsonand Theme files from the latest GitHub release. - Create a new folder named
Calendar Period Week Notesinside your vault's plugin folder:<VaultFolder>/.obsidian/plugins/, (you may need to show hidden files for your operating system to view this) - Copy the downloaded files into this new folder.
- Reload Obsidian, then go to Settings > Community Plugins and enable it.
The folder structure should be:
<VaultFolder>/.obsidian/plugins/Calendar Period Week Notes/
āāā main.js
āāā manifest.json
āāā styles.css
š” How to Use
- Open the View: Click the
šicon in the left ribbon or use the command palette (Ctrl/Cmd + P). - Navigate the Calendar:
- On desktop, click a date to open its daily note. On mobile, tap a date.
- On desktop, hover a date to see the details popup. On mobile, long-press the date.
- Click the month title (e.g., "October 2025") to switch between monthly and vertical views.
- On mobile, swipe up on the grid to collapse it or swipe down on the header to expand it.
- Use the Tabs:
- Click a tab to switch panels. Drag and drop tabs to reorder them.
- Click a tab that is already active for special functions:
- Dashboard Tab: Toggles between the Tasks and Creation dashboards.
- Scratchpad Tab: (Shift-click) Opens the scratchpad file in a new editor.
- Notes Tab: Toggles between "Recent" and "Pinned" views.
- Tasks Tab: Toggles grouping between "Date" and "Tag".
- Assets Tab: Toggles between grid and list view.
- Reorder Pinned Notes: In the Pinned Notes view, set the sort order to
Custom. Then, holdAlt(Windows/Linux) orOption(macOS) and drag notes.
š§ Settings
The plugin offers extensive options organized into the following tabs.
General Display
| Setting | Description | Default Value |
|---|---|---|
| Month title format | Format for the main title using moment.js tokens (MMMM YYYY). | MMMM YYYY |
| Month title font size | Font size for the main "Month Year" title. | 20px |
| Bold month title | Toggles bold font weight for the main title. | false |
| Month Title Color (Light/Dark) | Color for the main title in light and dark themes. | rgba(51,51,51,1) / rgba(255,255,255,1) |
| Navigation buttons height | The height of the ā, Today, and ā buttons. | 28px |
| Bold calendar header | Toggles bold font weight for the day names row (Mon, Tue, etc.). | false |
| Day header row font color (Light/Dark) | Text color for the day names in light and dark themes. | rgba(51,51,51,1) / rgba(255,255,255,0.7) |
| Calendar grid layout | Choose between spacious, normal, or condensed layout. | normal |
| Calendar grid labels font size | Font size for day names and week/period columns. | 12px |
| Calendar grid day numbers font size | Font size for the date numbers in calendar cells. | 15px |
| Date cell font color (Light/Dark) | Text color for date numbers in light and dark themes. | rgba(51,51,51,1) / rgba(255,255,255,1) |
| Other month date font color (Light/Dark) | Text color for dates outside the current month. | rgba(150,150,150,0.5) / rgba(150,150,150,0.5) |
| Show calendar grid lines | Toggles visibility of borders between calendar days. | true |
| Calendar grid gap width | Width of the border between cells (e.g., 1px). | 1px |
| Today's date style | How to indicate the current day: Off, Highlight Cell, Circle, Square. | circle |
| Today's circle highlight size | Adjust the size of the Circle highlight style (in em). | 2.4em |
| Today's Date Highlight (Light/Dark) | Background color for the Highlight Cell style. | rgba(255,255,0,0.3) / rgba(255,255,0,0.3) |
| Today's Circle/Square Color (Light/Dark) | Controls the highlight color for Circle and Square styles. | rgba(40,120,240,1) / rgba(40,120,240,1) |
| Highlight today's day header | Colors the day column header (e.g., 'Mon') containing today. | true |
| Highlight today's PW or week number | Colors the P/W or Week number for the current week. | true |
| Current Day Label Highlight (Light/Dark) | Color for today's day/week labels. | rgba(40,120,240,1) / rgba(40,120,240,1) |
| Date Cell Hover Color (Light/Dark) | Background color when hovering over a date cell. | rgba(0,0,0,0.075) / rgba(51,51,51,1) |
| Bold Period/Week column | Toggles bold font weight for the P/W column. | false |
| Show PW separator line | Displays a vertical line between week columns and the date grid. | true |
| PW separator line color | Color of the vertical separator line. | rgba(128,128,128,0.3) |
| Period/Week column font color (Light/Dark) | Text color for the P/W column. | rgba(51,51,51,1) / rgba(255,255,255,0.7) |
| Week number column font color (Light/Dark) | Text color for the week number column. | rgba(51,51,51,1) / rgba(255,255,255,0.7) |
Calendar Functional
| Setting | Description | Default Value |
|---|---|---|
| Week starts on | Choose between Monday or Sunday. | sunday |
| Start of Period 1 Week 1 | The anchor date for the P/W system. Must match your "Week starts on" day. | 2025-03-02 |
| Period/Week format | Display format for the P/W column (e.g., P#W#, P# W#, p#w#). | P#W# |
| Show Period/Week column | Toggles the visibility of the P/W column. | false |
| Show week number column | Toggles the visibility of the week number column. | true |
| Week number type | Choose Period System Week or Calendar Year Week (ISO). | calendar |
| Week number column label | Text label for the week number column header. | W# |
| Daily Notes folder | The vault path where daily notes are stored. | Daily Notes |
| Daily Note open behavior | Open daily notes in a new-tab or current-tab. | new-tab |
| Daily Note template | Path to a template file for new daily notes. | "" |
| Enable row highlight | Highlights the week's row when hovering the P/W label. | true |
| Enable column highlight | Highlights the day's column when hovering the day name label. | true |
| Enable complex grid highlight | When hovering a date, highlights cells in its row and column. | false |
| Always highlight current week | Keeps the row for the current week permanently highlighted. | false |
| Grid Highlight Color (Light/Dark) | Color for row/column hover effects. | rgba(163,163,163,0.2) / rgba(51,51,51,1) |
| Highlight weekends | Shades Saturday and Sunday columns. | true |
| Weekend shade color (Light/Dark) | Background color for weekend columns. | rgba(0,0,0,0.03) / rgba(255,255,255,0.03) |
| External calendar URL (.ics) | URL for an external .ics calendar feed. | "" |
| Auto-refresh Interval | How often to refresh the external calendar (15 min, 30 min, 1 hr, 3 hr, 6 hr, 12 hr). | 60 |
| Calendar Event Indicator | Display events as Dot Only, Add to Heatmap or Add to Task Badge. | dot |
| Calendar Events Placeholder | Placeholder in daily notes for event insertion (e.g., %%CALENDAR_EVENTS%%). | %%CALENDAR_EVENTS%% |
| Calendar Event Format | Template for each event. Use {{summary}}, {{startTime}}, {{endTime}}. | - {{startTime}} - {{endTime}}: {{summary}} |
Popup Indicators
| Setting | Description | Default Value |
|---|---|---|
| Popup Hover Delay | How long to wait before showing a popup on hover (in milliseconds). | 800 |
| Popup Hide Delay | How long to wait before hiding a popup after the mouse leaves (in milliseconds). | 50 |
| Popup Gap | The gap in pixels between a calendar day and its popup. Can be negative. | -2 |
| Popup Font Size | The font size for text inside popups. | 14px |
| Notes & Assets Popup Trigger | Choose how popups appear in lists: Hover (desktop) or Right-click (long-press on mobile). | hover |
Dot Indicators
| Setting | Description | Default Value |
|---|---|---|
| Show dot for created notes | Show a dot on days a non-daily note was created. | true |
| Show dot for modified notes | Show a dot on days a non-daily note was modified. | true |
| Show dot for new assets | Show a dot on days an asset was added. | true |
| Show dot for external ics events | Show a dot for events from an external calendar. | true |
| Calendar dot size | The size of the dots in pixels. | 4 |
| Daily Note Dot Color | Color for daily note dots. | rgba(74, 144, 226, 1) |
| Created Note Dot Color | Color for created note dots. | rgba(76, 175, 80, 1) |
| Modified Note Dot Color | Color for modified note dots. | rgba(255, 152, 0, 1) |
| Asset Dot Color | Color for new asset dots. | rgba(255, 0, 0, 1) |
| Calendar Event Dot Color | Color for external calendar event dots. | rgba(148, 148, 148, 1) |
| Ignore folders for note dots | Folder paths to exclude from creating created/modified dots. | [] |
| Ignore folders for asset dots | Folder paths to exclude from creating asset dots. | [] |
Weekly Notes
| Setting | Description | Default Value |
|---|---|---|
| Enable weekly notes | Toggle weekly notes functionality. | true |
| Weekly note folder | The vault path where weekly notes are stored. | Weekly Notes |
| Weekly note format | Filename format. Placeholders: YYYY, MM, PN, PW, WKP, WKC. | YYYY-[W]WKC |
| Weekly note template | Path to a template file for new weekly notes. | "" |
| Show weekly note dot | Show a dot on the week number when a weekly note exists. | true |
| Weekly Note Dot Color | Color of the weekly note indicator dot. | rgba(160, 115, 240, 1) |
Task Indicators
| Setting | Description | Default Value |
|---|---|---|
| Task indicator style | Choose between none, badge, or heatmap. | heatmap |
| Show dot for tasks | Show a separate dot for tasks (can be used with other styles). | false |
| Task Dot Color | The color of the task dot. | rgba(200, 100, 200, 1) |
| Task badge font size | Font size for the task count badge. | 11px |
| Task badge background color | Background color for the task count badge. | rgba(100, 149, 237, 0.6) |
| Task badge font color | Text color for the task count badge. | rgba(255, 255, 255, 1) |
| Heatmap content border width | Width of the border inside heatmap cells (e.g., 1px). | 1px |
| Heatmap Start Color | Color for days with 1 task. | rgba(100, 149, 237, 0.3) |
| Heatmap Mid Color | Color for days with midpoint tasks. | rgba(255, 127, 80, 0.45) |
| Heatmap End Color | Color for days with maximum tasks. | rgba(255, 71, 71, 0.6) |
| Gradient Midpoint | Number of tasks to trigger the mid color. | 5 |
| Gradient Maxpoint | Number of tasks to trigger the end color. | 10 |
Dashboard
| Setting | Description | Default Value |
|---|---|---|
| Default Dashboard View | Choose which dashboard to show by default. | tasks |
| Widgets Order | Draggable lists to set the display order for Tasks and Creation widgets. | Varies |
| Widget Visibility | Toggles to show or hide each widget (Task Summaries, Charts, Heatmaps). | All true |
| Custom Date Formats | Comma-separated list of formats for parsing dates from note titles. | YYYY-MM-DD |
| Task Status Colors | Custom colors for Cancelled, Overdue, In Progress, and Open tasks in widgets. | Varies |
| Custom Heatmaps | Interface to add, delete, and configure custom heatmap widgets, including name, color, filters (tag, filename, path), date source, date range, and link path. | [] |
General Tabs
| Setting | Description | Default Value |
|---|---|---|
| Tab title font size | Font size for the tab titles. | 14px |
| Bold tab titles | Toggles bold font weight for tab titles. | false |
| Active Tab Indicator | The color of the underline for the currently active tab. | rgba(102, 102, 102, 1) |
| Tab Order | A draggable list to define the order of tabs. | dashboard,scratch,notes,tasks,assets |
| Tab Visibility | Individual toggles to show or hide each tab. | All true |
| Desktop tab display | Choose Icon Only, Text Only, or Icon and Text. | iconOnly |
| Mobile tab display | Choose Icon Only, Text Only, or Icon and Text. | iconOnly |
| Tab Icons | Customize the Lucide icon for each tab. | Varies |
ScratchPad Tab
| Setting | Description | Default Value |
|---|---|---|
| ScratchPad note path | The full vault path to the note file used by the scratchpad. | ScratchPad.md |
| Click tab action | What to do when the active tab is Shift-clicked: new-tab or current-tab. | new-tab |
| Show preview button | Shows button to toggle between plain text and Markdown preview. | false |
| Show '+ Task' button | Shows button to quickly add a new task. | true |
| Task Creation Format | Template for '+ Task' button with placeholders like {today} and ` | `. |
| ScratchPad font size | Customize the font size used in the scratchpad editor. | 14px |
| ScratchPad font family | Customize the font family (leave blank for default). | "" |
| Bold ScratchPad text | Toggles bold font weight for scratchpad text. | false |
| Search highlight color | Background color for highlighted search terms. | rgba(255, 165, 0, 0.4) |
Notes Tab
| Setting | Description | Default Value |
|---|---|---|
| Notes tab open behavior | Open notes in a new-tab or current-tab. (Shift-click always opens in new tab). | new-tab |
| Show note status dots | Shows a colored dot next to each note in the list. | true |
| Show note tooltips | Show a detailed tooltip on hover with file metadata. | true |
| Notes list font size | Font size for note titles in the list. | 14px |
| Bold note titles | Toggles bold font weight for note titles in the list. | false |
| Created Note Dot Color | Color for the dot on recently created notes. | rgba(76, 175, 80, 1) |
| Modified Note Dot Color | Color for the dot on recently modified notes. | rgba(255, 152, 0, 1) |
| Note/Task Hover Color | Background color when hovering over items in lists. | rgba(171, 171, 171, 0.15) |
| Notes lookback days | How many days back to look for recent notes. | 7 |
| Ignore folders | Folder paths to exclude from the "Recent Notes" list. | [] |
Pinned Notes Tab
| Setting | Description | Default Value |
|---|---|---|
| Pinned notes tag | The tag (without '#') used to identify notes for the "Pinned" view. | pin |
| Default sort order | Default sort order for pinned notes: a-z, z-a, or custom. | a-z |
| Set Custom Order | A draggable list to set the manual order of pinned notes. | N/A |
Assets Tab
| Setting | Description | Default Value |
|---|---|---|
| Asset open behavior | Open assets in a new-tab or current-tab. | new-tab |
| Assets lookback days | How many days back to look for recent assets. | 7 |
| Default assets view | Choose between list or grid view. | grid |
| Hidden asset file types | Comma-separated list of file extensions to hide (e.g., base,canvas). | base,canvas |
| Show indicator for unused assets | Shows an icon next to assets not linked from any note. | true |
Tasks Tab
| Setting | Description | Default Value |
|---|---|---|
| Task heading font size | Font size for group headings (e.g., 'Today', 'Overdue'). | 13px |
| Task text font size | Font size for individual task items. | 14px |
| Truncate long task text | If enabled, long task text is shortened with .... | false |
| Show completed tasks for Today | If enabled, completed tasks due today will still appear. | true |
| Task sort order | Default sorting for tasks within each group (dueDate, a-z, z-a). | dueDate |
| Group tasks by | The default grouping method (date or tag). | date |
| Date Groups to Show | Toggles to show/hide specific date groups. | All enabled |
| Task Group Icons | Customize the icon for each task group header. | Varies |
| Task Group Backgrounds | Individual RGBA color pickers for each task group. | Varies |
| Exclude folders from Task search | Folder paths to exclude from the task search. | [] |
Import & Export
| Setting | Description |
|---|---|
| Export All Settings | Save your complete plugin configuration to a JSON file. |
| Export Theme Only | Save only colors, fonts, and sizes to a theme file. |
| Import from File | Load settings from a JSON file (with confirmation). |
ā¤ļø Contributing
Contributions, issues, and feature requests are welcome! Feel free to check the GitHub issues page.
š License
This project is licensed under the MIT License - see the LICENSE.md file for details.
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.