Comments (12)
Hey everyone, as I am starting my final graduate year I am eager to develop this feature because I myself would get a lot of use out of it. I have just whipped up a first draft of the query language for creating these reports and I would like some feedback from y'all to see if this covers all your needs 😄
What I think is still lacking currently, but that I am not sure is useful is:
- including/excluding by client instead of project
- Querying different workspaces than the one set in the plugin settings
These reports are also heavily drawn from Toggl's own report pages. If you have any more creative or different ways you would like to visualize your time entries please let me know.
Summary reports
very similar to summary report on track.toggl.com
// report type = summary
SUMMARY
// Add one of these as time interval selector
WEEKLY // get summary for this week
MONTHLY // get summary for this month
FROM {date0} TO {date1} // get summary for date range
PREVIOUS {x days, x weeks, ...} // get summary for previous dates
// Optional, add one of these to narrow query
[INCLUDE 'project A', 'project B', ...] // whitelist projects
[EXCLUDE 'project A', 'project B', ...] // blacklist projects
// Optional, add any of these to limit visualizations
[HIDE PIE] // hides colored area plot
[HIDE BAR] // hides time bars (e.g. bar plot with bars for each day of week)
[HIDE LIST] // hides list of projects with totals
For example, to get an overview of the last week, do not include the project “hobby project” without the pie plot:
SUMMARY WEEKLY
EXCLUDE 'hobby project'
HIDE PIE
Detailed reports
Similar to track.toggl.com/timer list view, but can also be grouped by project.
// report type = time entry list
LIST
// Add one of these as time interval selector.
WEEKLY // get summary for this week
MONTHLY // get summary for this month
FROM {date0} TO {date1} // get summary for date range
PREVIOUS {x days, x weeks, ...} // get summary for previous dates
// Optional, add one of these to narrow query
[INCLUDE 'project A', 'project B', ...] // whitelist projects
[EXCLUDE 'project A', 'project B', ...] // blacklist projects
// Optional, group the time entries by project or day.
// This will show a header for each group with some aggregate stats,
// e.g. total duration per group
[GROUP BY {(DATE|PROJECT)}]
// Optional, change sort order by date
[SORT {ASC|DESC}]
// Optional, limit the amount of results
[LIMIT {N}] // Limit the amount of results
Example: give me all time entries from the past 7 days for the project “Obsidian Plugin Development”:
LIST PREVIOUS "7 days"
INCLUDE "Obsidian Plugin Development"
GROUP BY DATE
from obsidian-toggl-integration.
I would love this functionality!
from obsidian-toggl-integration.
@shabegom That's an excellent use case that I forgot to include. I'll make sure it is minimal effort to get a day report, I'm not a fan of having to do a range of one date either!
from obsidian-toggl-integration.
That would be so sick!
from obsidian-toggl-integration.
How dare you call me a "user"! But yeah would love this or some way to log Toggl times to my DNP.
from obsidian-toggl-integration.
I think this is looks excellent!
- I only have one workspace so wouldn't use multiple workspaces
- I have multiple clients but they break down into specific projects for each client. I would prefer to do project based inclusion.
- Im most likely going to want a daily report specific to a date. Nice to have would be an easy way to supply one date instead of a range. Range is simple enough though, so not an essential addition.
LIST FROM <% tp.file.title %> TO <% tp.file.title %>
INCLUDE "Super Secret Project"
from obsidian-toggl-integration.
I would love to be able to filter by 'user', I'm in a Toggl workspace with multiple users (including people I manage) and I'd love to be able to both see my time as well as theirs.
from obsidian-toggl-integration.
@tonyxiao I will keep that in mind! For now my focus will be developing the query language as presented here (a bit of a technical learning opportunity by itself), but when that is finished I can consider adding support for multiple users.
from obsidian-toggl-integration.
Hi everyone. There have been quite a few months of inactivity on this project as I have been preoccupied with my Master dissertation. However, with the holidays I have been able to get a lot of work done on this feature.
If all goes well, I think I can release this feature set by the end of January.
Here's a preview:
renders into:
from obsidian-toggl-integration.
from obsidian-toggl-integration.
This feature is now available in 0.4.0! Don't hesitate to shoot me feedback regarding bugs or use cases on the release discussion page:
from obsidian-toggl-integration.
I think you need to update your Development Roadmap. This (and one other issue) are shown as "Next Release" when, in fact, I believe you have already released them.
from obsidian-toggl-integration.
Related Issues (20)
- FR: Additional Views HOT 4
- List view not working and Summary view not working properly HOT 12
- Confusing initial configuration
- Timer is broken when started from Toggl website HOT 6
- Project title missing HOT 2
- Exclude Tags not filtering out time entries HOT 5
- annoying error offline message HOT 3
- Creating new projects within Obsidian HOT 1
- Filter by TEAM HOT 1
- Stuck at "Loading Toggl report" HOT 2
- keep the reports offline HOT 1
- Please add a manual reload button on sidebar HOT 6
- Error if the current task does not have a project HOT 1
- Support excluding projects in summary views
- INCLUDE TAGS -> "Cannot read properties of undefined" HOT 3
- How to reopen report panel after accidentally closing it? HOT 3
- Side panel fails to update when running time entry has no project
- Side panel bar chart hover does not reflect live updating totals
- All of projects labeled as "(No project)" HOT 1
- Error while rendering report...
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from obsidian-toggl-integration.