Time Registration plugin

:information_source: Summary Allows time registration in Discourse
:hammer_and_wrench: Repository Link https://github.com/communiteq/discourse-time-registration
:open_book: Install Guide How to install plugins in Discourse

Discourse Time Registration

Discourse Time Registration is a lightweight, integrated time-tracking solution for Discourse. It allows users to track time spent on specific topics, making it ideal for support teams, freelancers, or internal project management where billing or time-accounting is required directly within the discussion context.

Key Features

  • Two Tracking Modes:
    • Stopwatch: Start a timer when you begin working on a topic and stop it when you are done.
    • Manual Entry: Log a specific duration (e.g., “1 hour” or “15 minutes”) instantly if the work is already finished.
  • Topic Integration: Time logs appear as “small action” posts within the topic stream (e.g., “User worked on Bug Fix for 01:30), keeping the history of work visible alongside the conversation.
  • Global Timer: An active timer indicator appears in the site header, allowing users to navigate the forum while the clock is ticking and stop the timer from anywhere.
  • Smart Rounding: Configurable rounding rules (e.g., round up to the nearest 15 minutes) to automate billing calculations.
  • Reporting Dashboard: A dedicated interface to query time data.

How It Works

Tracking Time

A time registration is always connected to a topic.

When viewing a topic, users with permission will see a Time Registration button (clock icon) in the top right header. Clicking this opens a modal where they can:

  1. Start Clock: Begins a real-time counter.
  2. Log Time: Allows entering a manual duration (e.g., “30” for minutes or “1:30” for hours/minutes) and a description immediately.

When a timer is stopped, the user is prompted to enter a description of the work performed.

This creates a small action post in the topic, recording the user, the description, and the final duration.

image

The topic will be the topic where the timer was started.

Time registration can be performed by users in specific groups. The time registration posts are visible by anyone who can access the topic.

Editing Logs

Mistakes happen. Users (or Admins) can edit existing time registration posts to correct the description or the duration. Simply hover your mouse over the small action post and a pencil will show.
The system updates the log and the report data automatically.

Reporting

The plugin includes a comprehensive Time Registration Report (accessible via the Sidebar).

  • Filters: Filter by Date Range, Category, and specific User.
  • Data: Displays a table with the Topic, Category (or “Personal Message”), User, Description, Duration, and Date.
  • Totals: Automatically calculates the total time spent based on the current filters.

All users can generate reports on categories they can see.

Settings

Name Description
time registration groups the groups that can perform time registration
time registration rounding interval round the registered time to X minutes
time registration round up at round up from where

E.g.

  • rounding interval: 10, round up at: 1 → 12 becomes 20
  • rounding interval: 15, round up at: 7.5 → 22 becomes 15, 23 becomes 30
17 Likes

Oh my God. I’ve been thinking about something like this LAST week because on my instance I payout staff based on the amount of work they put in. Correct me if I am wrong, but this would work ideally for SWAPD, no? Does it track PMs or just topics?

1 Like

Technically, a PM is a topic.

Note that this is self-reporting, and people registering time can edit the time they spent.
If there is trust, it will work.