Feature request: show total time spent per project/board #46

Open
opened 2026-02-04 16:46:50 +03:00 by OVERLORD · 10 comments
Owner

Originally created by @gittbuh on GitHub (Dec 6, 2020).

I wonder if it would be possible to automatically show the total time spent per project and per board.

Congratulations otherwise for this great application. Looking forward to seeing it evolve into a full-fledged one.

Originally created by @gittbuh on GitHub (Dec 6, 2020). I wonder if it would be possible to automatically show the total time spent per project and per board. Congratulations otherwise for this great application. Looking forward to seeing it evolve into a full-fledged one.
Author
Owner

@meltyshev commented on GitHub (Dec 13, 2020):

Hello! Do you mean to show somewhere how much time has passed since the creation?

@meltyshev commented on GitHub (Dec 13, 2020): Hello! Do you mean to show somewhere how much time has passed since the creation?
Author
Owner

@gittbuh commented on GitHub (Dec 14, 2020):

Hi! No, in this case I meant that the application can show the sum of all/the total hours/minutes/seconds spent in all tasks (where the timer has been used) for each project at least and ideally for each board. That would be pretty useful for me as a means of measuring/visualizing total effort or time investment. I wonder how possible or difficult it is to implement here.

@gittbuh commented on GitHub (Dec 14, 2020): Hi! No, in this case I meant that the application can show the sum of all/the total hours/minutes/seconds spent in all tasks (where the timer has been used) for each project at least and ideally for each board. That would be pretty useful for me as a means of measuring/visualizing total effort or time investment. I wonder how possible or difficult it is to implement here.
Author
Owner

@oscadev commented on GitHub (Mar 19, 2024):

This. We can click timers to start tracking time on a task, but there seems to be no way to see a total tally of all time spent on all tasks total in a project. This means I would have to manually add up the hours each time to know how many hours are left, if for example a client has paid for X number of hours.

@oscadev commented on GitHub (Mar 19, 2024): This. We can click timers to start tracking time on a task, but there seems to be no way to see a total tally of all time spent on all tasks total in a project. This means I would have to manually add up the hours each time to know how many hours are left, if for example a client has paid for X number of hours.
Author
Owner

@remy56k commented on GitHub (Mar 27, 2024):

I'm looking for this feature too, it could be very useful !
I have wrote a workaround, client side (in the browser JavaScript console).
Just paste this little script and hit Enter when you are on your cards-board view.

// Select all span elements with class starting with "Stopwatch_wrapper*"
var allTimers = document.querySelectorAll('span[class^="Stopwatch_wrapper"]');
// Initialize a sum variable
var sumInSeconds = 0;
// Iterate through each timers and sum up their text content
allTimers.forEach(function(timer) {
    // Extract the text content
    var timeString = timer.textContent;
    // Parse the time string into hours, minutes, and seconds
    var timeParts = timeString.split(":");
    if (timeParts.length === 3) {
        var hours = parseInt(timeParts[0]);
        var minutes = parseInt(timeParts[1]);
        var seconds = parseInt(timeParts[2]);
        // Convert hours and minutes into seconds
        var totalTimeInSeconds = hours * 3600 + minutes * 60 + seconds;
        // Add to the sum
        sumInSeconds += totalTimeInSeconds;
    }
});
// Convert the total seconds back to the hh:mm:ss format
var hours = Math.floor(sumInSeconds / 3600);
var minutes = Math.floor((sumInSeconds % 3600) / 60);
var seconds = sumInSeconds % 60;
// Output your sum 
console.log("Total sum = " + hours + ":" + minutes + ":" + seconds);

The output is like : Total sum = 2:47:30

@remy56k commented on GitHub (Mar 27, 2024): I'm looking for this feature too, it could be very useful ! I have wrote a workaround, client side (in the browser JavaScript console). Just paste this little script and hit `Enter` when you are on your cards-board view. ```js // Select all span elements with class starting with "Stopwatch_wrapper*" var allTimers = document.querySelectorAll('span[class^="Stopwatch_wrapper"]'); // Initialize a sum variable var sumInSeconds = 0; // Iterate through each timers and sum up their text content allTimers.forEach(function(timer) { // Extract the text content var timeString = timer.textContent; // Parse the time string into hours, minutes, and seconds var timeParts = timeString.split(":"); if (timeParts.length === 3) { var hours = parseInt(timeParts[0]); var minutes = parseInt(timeParts[1]); var seconds = parseInt(timeParts[2]); // Convert hours and minutes into seconds var totalTimeInSeconds = hours * 3600 + minutes * 60 + seconds; // Add to the sum sumInSeconds += totalTimeInSeconds; } }); // Convert the total seconds back to the hh:mm:ss format var hours = Math.floor(sumInSeconds / 3600); var minutes = Math.floor((sumInSeconds % 3600) / 60); var seconds = sumInSeconds % 60; // Output your sum console.log("Total sum = " + hours + ":" + minutes + ":" + seconds); ``` The output is like : `Total sum = 2:47:30`
Author
Owner

@oscadev commented on GitHub (Mar 29, 2024):

I'm looking for this feature too, it could be very useful ! I have wrote a workaround, client side (in the browser JavaScript console). Just paste this little script and hit Enter when you are on your cards-board view.

// Select all span elements with class starting with "Stopwatch_wrapper*"
var allTimers = document.querySelectorAll('span[class^="Stopwatch_wrapper"]');
// Initialize a sum variable
var sumInSeconds = 0;
// Iterate through each timers and sum up their text content
allTimers.forEach(function(timer) {
    // Extract the text content
    var timeString = timer.textContent;
    // Parse the time string into hours, minutes, and seconds
    var timeParts = timeString.split(":");
    if (timeParts.length === 3) {
        var hours = parseInt(timeParts[0]);
        var minutes = parseInt(timeParts[1]);
        var seconds = parseInt(timeParts[2]);
        // Convert hours and minutes into seconds
        var totalTimeInSeconds = hours * 3600 + minutes * 60 + seconds;
        // Add to the sum
        sumInSeconds += totalTimeInSeconds;
    }
});
// Convert the total seconds back to the hh:mm:ss format
var hours = Math.floor(sumInSeconds / 3600);
var minutes = Math.floor((sumInSeconds % 3600) / 60);
var seconds = sumInSeconds % 60;
// Output your sum 
console.log("Total sum = " + hours + ":" + minutes + ":" + seconds);

The output is like : Total sum = 2:47:30

Thanks, but I think this wouldnt show an entire project's hours, and instead show all the hours inside one board, correct?

@oscadev commented on GitHub (Mar 29, 2024): > I'm looking for this feature too, it could be very useful ! I have wrote a workaround, client side (in the browser JavaScript console). Just paste this little script and hit `Enter` when you are on your cards-board view. > > ```js > // Select all span elements with class starting with "Stopwatch_wrapper*" > var allTimers = document.querySelectorAll('span[class^="Stopwatch_wrapper"]'); > // Initialize a sum variable > var sumInSeconds = 0; > // Iterate through each timers and sum up their text content > allTimers.forEach(function(timer) { > // Extract the text content > var timeString = timer.textContent; > // Parse the time string into hours, minutes, and seconds > var timeParts = timeString.split(":"); > if (timeParts.length === 3) { > var hours = parseInt(timeParts[0]); > var minutes = parseInt(timeParts[1]); > var seconds = parseInt(timeParts[2]); > // Convert hours and minutes into seconds > var totalTimeInSeconds = hours * 3600 + minutes * 60 + seconds; > // Add to the sum > sumInSeconds += totalTimeInSeconds; > } > }); > // Convert the total seconds back to the hh:mm:ss format > var hours = Math.floor(sumInSeconds / 3600); > var minutes = Math.floor((sumInSeconds % 3600) / 60); > var seconds = sumInSeconds % 60; > // Output your sum > console.log("Total sum = " + hours + ":" + minutes + ":" + seconds); > ``` > > The output is like : `Total sum = 2:47:30` Thanks, but I think this wouldnt show an entire project's hours, and instead show all the hours inside one board, correct?
Author
Owner

@remy56k commented on GitHub (Mar 29, 2024):

Thanks, but I think this wouldnt show an entire project's hours, and instead show all the hours inside one board, correct?

Correct, it's the sum of all cards in the viewed tab, if you want a global sum for a project, just switch to the next tab, run the script, etc... and sum all results at end. Not perfect but better than nothing.

@remy56k commented on GitHub (Mar 29, 2024): > Thanks, but I think this wouldnt show an entire project's hours, and instead show all the hours inside one board, correct? Correct, it's the sum of all cards in the viewed tab, if you want a global sum for a project, just switch to the next tab, run the script, etc... and sum all results at end. Not perfect but better than nothing.
Author
Owner

@carlitoselmago commented on GitHub (Feb 1, 2025):

I am too very interested on this feature. Right now I use trello and I pay for a powerup called Chronos which logs every chunk of time spent on a project. And then when I need to calculate my invoicing for a client I get a view of time spent per month on each project which is very usefull. I don't know if in the database, time is calculated like that, like instead of overall time, a row per everytime the user clicked track time with start and end time. That would be a good place to start for further developing more granular logging onf time spent on projects.

@carlitoselmago commented on GitHub (Feb 1, 2025): I am too very interested on this feature. Right now I use trello and I pay for a powerup called Chronos which logs every chunk of time spent on a project. And then when I need to calculate my invoicing for a client I get a view of time spent per month on each project which is very usefull. I don't know if in the database, time is calculated like that, like instead of overall time, a row per everytime the user clicked track time with start and end time. That would be a good place to start for further developing more granular logging onf time spent on projects.
Author
Owner

@Giorgio-Germani commented on GitHub (Feb 6, 2025):

yes thats a really needed feature, since collecting time entries manually is......well taking unneccesary time :)

a good solution would be

  1. being able to add and edit time entries manually in 1 card, so that it would be clear that there were 2 hours on 6.2.2025 and another 3 from 7.2.2025 for example.
  2. get the sum of all cards in total for the project and for each list, so that you would be able to see that totally already 10h has been worked on, but the truly compleyed tasks under list "done"are just 5h.
  3. export the time entries to a spreadsheet in order to use the data for invoicing or other purposes.
  4. setting estimates for a card, so that you could see that you tought the task would take 1h but you actually spent 2h on it.

Image

Image

A open source project to look at for inspuration might be https://github.com/danniehansen/activity-timer , which does this for trello.

PS: let's drop the seconds? mean they dont matter and just take space in the interface. A stopped time less than 30s would be deleted and from 31s it will be round up to 1m.

@Giorgio-Germani commented on GitHub (Feb 6, 2025): yes thats a really needed feature, since collecting time entries manually is......well taking unneccesary time :) a good solution would be 1) being able to add and edit time entries manually in 1 card, so that it would be clear that there were 2 hours on 6.2.2025 and another 3 from 7.2.2025 for example. 2) get the sum of all cards in total for the project and for each list, so that you would be able to see that totally already 10h has been worked on, but the truly compleyed tasks under list "done"are just 5h. 3) export the time entries to a spreadsheet in order to use the data for invoicing or other purposes. 4) setting estimates for a card, so that you could see that you tought the task would take 1h but you actually spent 2h on it. ![Image](https://github.com/user-attachments/assets/2544d019-9cb7-4f35-a12b-1908b47894c6) ![Image](https://github.com/user-attachments/assets/fcca9793-ea30-4d2f-ad44-f20c021c8ad3) A open source project to look at for inspuration might be https://github.com/danniehansen/activity-timer , which does this for trello. PS: let's drop the seconds? mean they dont matter and just take space in the interface. A stopped time less than 30s would be deleted and from 31s it will be round up to 1m.
Author
Owner

@carlitoselmago commented on GitHub (Feb 14, 2025):

The forth feature would be amazing, never thought of that. I do currently that on spreadsheets with trello. But yeah, something like due date, but "due hours spent" would be cool

@carlitoselmago commented on GitHub (Feb 14, 2025): The forth feature would be amazing, never thought of that. I do currently that on spreadsheets with trello. But yeah, something like due date, but "due hours spent" would be cool
Author
Owner

@matbgn commented on GitHub (Aug 12, 2025):

Would loooove it definitly!

@matbgn commented on GitHub (Aug 12, 2025): Would loooove it definitly!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/planka#46