No description
Find a file
Vlad Kostyanetsky 70556863d1 More fixes
2024-05-10 15:14:44 +04:00
.github/workflows Setting for templates 2024-05-08 00:54:32 +04:00
sample Test vault updates 2024-05-06 21:44:46 +04:00
src Removed attemp to format 2024-05-09 02:24:12 +04:00
.editorconfig Initial upload 2024-03-24 22:27:44 +04:00
.eslintignore Initial upload 2024-03-24 22:27:44 +04:00
.eslintrc Initial upload 2024-03-24 22:27:44 +04:00
.gitignore Initial upload 2024-03-24 22:27:44 +04:00
.npmrc Initial upload 2024-03-24 22:27:44 +04:00
CHANGELOG.md Added a note 2024-05-06 16:42:39 +04:00
esbuild.config.mjs Initial upload 2024-03-24 22:27:44 +04:00
LICENSE Initial upload 2024-03-24 22:27:44 +04:00
manifest.json Initial upload 2024-03-24 22:27:44 +04:00
package-lock.json Bugfix 2024-05-06 23:51:44 +04:00
package.json Bugfix 2024-05-06 23:51:44 +04:00
README.md More fixes 2024-05-10 15:14:44 +04:00
styles.css Settings visual 2024-05-09 02:10:10 +04:00
tsconfig.json Initial upload 2024-03-24 22:27:44 +04:00
version-bump.mjs Initial upload 2024-03-24 22:27:44 +04:00
versions.json Initial upload 2024-03-24 22:27:44 +04:00

Obsidian Timesheet 🏢 📑

ESLint

It is a plugin for Obsidian designed to generate timesheets for tasks in daily notes.

🙂 How does it work?

I assume you use daily notes to log time you spent on doing some tasks you track in JIRA.

Note

You can track your tasks anywhere else, it's doesn't really matter. I call it JIRA since this software it pretty popular and, what's more important, its functionality I need to mention has no significant difference when it comes to a specific task tracker.

JIRA allows you to create different projects for tasks; each project has its unique prefix for tasks belongs to it. For instance, if a project's prefix is "TASKS", it has tasks like "TASKS-1", "TASKS-2", etc.

So, a part of your daily note may look like this:

- [ ] 10:00-12:00 Look around and find out what is wrong with the production server (TASKS-1)
- [ ] 12:00-16:00 Estimate a feature development (TASKS-2)
- [ ] 16:00-18:00 Fix a problem on the production server (TASKS-1)

There are three tasks listed, two of which have the same JIRA task number. This plugin is able to group and round time you spent on all the tasks and show you a convenient report. You can use it for the next daily meeting or to log time you spent to JIRA.

So, basically, you just insert a timesheet code block anywhere in the daily note and see something like this:

TASKS-1 (4h)

- Look around and find out what is wrong with the production server
- Fix a problem on the production server

TASKS-2 (4h)

- Estimate a feature development

You can see more examples in the sample vault.

🤔 Questions

How the plugin finds task numbers?

It uses templates you define. Templates are simple regular expressions which the plugin applies to each task title to find a task number in it.

Note

I used to think that regular expressions mechanic is a way too complex tool for this task, but then I was like "oh, come on, who is going to use this, after all? let's be honest, a nerd like you and both of you know how regexps looks like" :)

There are two ways to set templates for task numbers. Firstly, you can enlist them right in a timesheet code block (one row — one template). Like this:

```timesheet
INTERNAL-\d*
EXTERNAL-\d*
```

This will affect only this specific code block in the specific note.

Tip

\d* means "any number". When it comes to task numbers, it's rather only regular expression you actually need.

You also can keep code blocks empty and define task number templates in plugin' settings. The format is the same: one template per one row.