Workout Block
A flexible workout tracker: customize workout types, log fields, derived stats, muscle heatmaps, and training plans. - This plugin has not been manually reviewed by Obsidian staff.
The above warnings are based on limited information and might not always be accurate.
Data
| ID | workout-block |
| Author | wanguliux |
| Minimum Obsidian Version | 1.12.7 |
| Official Release Date | 2026-07-19 |
| Last update | 2026-08-10 |
Last Refresh
Obsidian Stats last refreshed the data behind this page on Oct 27, 2026.
| Community plugin snapshot | Oct 26, 2026 |
| Repository clone | last successful checkout Sep 8, 2026 |
| Release acquisition | release metadata checked Sep 8, 2026; latest main.js acquired |
Quick Links
Changes
| Date | Changed Property | Old Value | New Value |
|---|---|---|---|
| 2026-07-19 | Plugin Added | ||
| 2026-08-03 | Plugin Removed | ||
| 2026-08-05 | Plugin Re-Added |
Repository Data
| License | MIT in package.json MIT in LICENSE file |
| Package Manager | npm |
| Uses Typescript | Yes |
| Installed Bundlers | esbuild |
| Installed Testing Frameworks | Vitest |
| Has Test Files | Yes |
Latest Release main.js Size | 731 KB |
| Detected ES Version | ES2018 |
| Probably Minified | No |
| main.js API Findings | 11 disclosures |
| Uses BRAT beta releases | No |
| Dependencies | obsidian, papaparse |
| Dev Dependencies | @types/node, @types/papaparse, @vitest/coverage-v8, esbuild, jsdom, typescript, vitest |
main.js API Findings
These findings come directly from Glass Lint's JavaScript and Obsidian rule catalogs applied to the latest release main.js. The confidence column is Glass Lint's definite/possible match certainty.
| Disclosure | Rule Descriptions |
|---|---|
| Full Vault Access | Enumerates vault files |
| Global Handlers Or Timers | Registers global input handlers |
| Lifecycle Events | Registers Obsidian lifecycle events |
| Markdown Processing | Registers markdown code-block processors |
| Network Access | Constructs or references URLs, Uses browser network request APIs |
| Plugin Management | Accesses other plugins |
| User Interface Access | Registers commands, Registers plugin settings UI, Registers ribbon icons, Uses Obsidian modal UI, Uses Obsidian notices |
| Vault Access | Accesses Obsidian vault APIs, Registers vault events |
| Vault Read | Reads vault files, Uses adapter-level vault filesystem APIs |
| Vault Write | Deletes or trashes vault files, Uses adapter-level vault filesystem APIs, Writes vault files |
| Workspace Layout | Manages workspace leaves |
| Finding | Type | Confidence | Evidence |
|---|---|---|---|
| Deletes or trashes vault files | Warning | Definite | member_call of "app.vault.delete" |
| Registers global input handlers | Info | Definite | member_call of "document.addEventListener" (3) |
| Uses browser network request APIs | Info | Definite | constructor of "XMLHttpRequest" |
| Constructs or references URLs | Info | Definite | string_contains of "http://" (2) |
| Registers Obsidian lifecycle events | Info | Definite | member_call of "obsidian.Plugin" (2) |
| Registers markdown code-block processors | Info | Definite | member_call of "obsidian.Plugin" (4) |
| Accesses other plugins | Info | Definite | member_read of "app.plugins.plugins" |
| Registers commands | Info | Definite | member_call of "obsidian.Plugin" (5) |
| Uses Obsidian modal UI | Info | Definite | class of "obsidian.Modal" (14), constructor of "obsidian.Modal" |
| Uses Obsidian notices | Info | Definite | constructor of "obsidian.Notice" (51) |
| Registers ribbon icons | Info | Definite | member_call of "obsidian.Plugin" (2) |
| Registers plugin settings UI | Info | Definite | class of "obsidian.PluginSettingTab", member_call of "obsidian.Plugin" |
| Accesses Obsidian vault APIs | Info | Definite | member_read of "app.vault" (55) |
| Uses adapter-level vault filesystem APIs | Info | Definite | member_call of "app.vault.adapter.read" (2) |
| Enumerates vault files | Info | Definite | member_call of "app.vault.getAbstractFileByPath" (12), member_call of "app.vault.getMarkdownFiles", member_call of "app.vault.getAllLoadedFiles" (2), member_call of "app.vault.getFiles" |
| Registers vault events | Info | Definite | member_call of "app.vault.on" (2) |
| Reads vault files | Info | Definite | member_call of "app.vault.read" (8), member_call of "app.vault.cachedRead" (2) |
| Writes vault files | Info | Definite | member_call of "app.vault.append" (4), member_call of "app.vault.modify" (10), member_call of "app.vault.create" (3), member_call of "app.vault.process" (2) |
| Manages workspace leaves | Info | Definite | member_call of "app.workspace.getLeavesOfType" |
The above data may not be accurate and contain errors. For more information refer to the page about data collection.
Lines of Code
The plugin has a total of 19778 lines of code. The following chart shows the lines of code split by programming language.
Downloads
The following chart shows the total number of downloads of the plugin over time. The second chart shows the delta of downloads per week, which is the number of new downloads per week. New version releases are marked with vertical lines.
Version History
| Version | Release Date | Note |
|---|---|---|
| 1.0.0 | 2026-07-20 | None |
| 1.0.1 | 2026-07-20 | None |
| 1.0.2 | 2026-07-23 | None |
| 1.0.3 | 2026-07-21 | None |
| 1.0.4 | 2026-08-07 | None |
| 1.0.5 | 2026-08-10 | None |
| 1.0.6 | 2026-09-02 | None |