No description
Find a file
pdriggett 10977dad11 Add release workflow with build provenance attestations
Builds the plugin in CI on tag push and publishes the GitHub release with
attested main.js, manifest.json, and styles.css, addressing the artifact
attestation recommendation from the Obsidian plugin review.
2026-06-18 06:21:58 -04:00
.github/workflows Add release workflow with build provenance attestations 2026-06-18 06:21:58 -04:00
.gitignore Initial scaffold of Weekly Music Practice Planner 2026-06-14 15:39:24 -04:00
esbuild.config.mjs Address issues flagged by Obsidian plugin review 2026-06-18 05:48:00 -04:00
LICENSE Initial scaffold of Weekly Music Practice Planner 2026-06-14 15:39:24 -04:00
main.ts Address issues flagged by Obsidian plugin review 2026-06-18 05:48:00 -04:00
manifest.json 0.1.2 2026-06-18 05:48:07 -04:00
package-lock.json 0.1.2 2026-06-18 05:48:07 -04:00
package.json 0.1.2 2026-06-18 05:48:07 -04:00
README.md Add per-day practice sessions and customizable skills 2026-06-18 05:06:57 -04:00
styles.css Initial scaffold of Weekly Music Practice Planner 2026-06-14 15:39:24 -04:00
tsconfig.json Initial scaffold of Weekly Music Practice Planner 2026-06-14 15:39:24 -04:00
version-bump.mjs Initial scaffold of Weekly Music Practice Planner 2026-06-14 15:39:24 -04:00
versions.json 0.1.2 2026-06-18 05:48:07 -04:00

Weekly Music Practice Planner

An Obsidian community plugin for planning and tracking weekly music practice.

Each week is a single markdown note in your vault containing:

  • Goals for the week

  • A skills × days tracking table

  • Daily notes sections, one per day — each seeded with a practice Session carrying Dataview inline fields: skill::, minutes::, and notes::. Duplicate the Session bullet to log multiple sessions in a day. The day's date is in its heading (### Monday — 2026-06-15), so a future Dataview query or heat-map can read each session's date, skill, and minutes without any hidden metadata.

    Example day:

    ### Monday — 2026-06-15
    
    - **Session 1**
        - skill::
        - minutes::
        - notes::
    

Settings

  • Folder — where weekly notes are stored (default: Practice).
  • Week starts on — first day of the practice week. Weeks that cross into a new year are stored under the year they started.
  • Default skills — rows used in each new week's skill table. Each skill is an editable row: rename it inline, remove it with the trash button, Add skill to append a new one, or Reset to default to restore the built-in set (Scales, Technique, Repertoire, Sight Reading).

Commands

Available via the Command Palette (⌘P / Ctrl+P):

  • Open this week's practice plan
  • Open next week's practice plan
  • Open previous week's practice plan

Each command opens the matching week's note, creating it from the template if it doesn't yet exist.

File layout

Notes are written as:

<Folder>/<YYYY>/<YYYY>-Www.md

Where YYYY is the year of the week's start date and ww is the week number counted from the first start-day of that year.

Development

npm install
npm run dev      # watch + rebuild main.js
npm run build    # type-check + production build

To test in Obsidian, copy or symlink this folder into <vault>/.obsidian/plugins/practice-planner/. Obsidian needs main.js, manifest.json, and styles.css at runtime.