Inspiration

Timesheets suck. Managers chase people to log hours, employees forget, and at the end of the month everyone's trying to remember "what did I even do on the 15th?" I wanted to fix this. When I saw the Rovo hackathon, it clicked: AI fits perfectly here. Let the bot tell you who's behind on logging instead of a manager pinging people in Slack.

What it does

Workbeat is a time management app for Jira teams. You can log time from anywhere: the main page, issue sidebar, or a button on the issue. Create teams, assign members, define planning periods. Track absences with approval workflows. See who's logging, who's behind, who's at risk.

The Rovo Agent answers questions like "who hasn't logged time this week?" and gives you a real answer, not a data dump. It understands context: "3 people are at risk" is more useful than a table of numbers.

How we built it

Backend runs on Forge Functions with TypeScript and MySQL via @forge/sql. Frontend is React 18 with Atlaskit components, Custom UI approach.

We use a bunch of Forge modules:

  • jira:globalPage for the main UI
  • jira:adminPage for settings
  • jira:issueAction for the Log Time button
  • jira:issueContext for the worklog panel in sidebar
  • jira:issueActivity for the Work log tab
  • jira:timeTrackingProvider to replace native Jira time tracking

AI part is rovo:agent with custom action endpoints for compliance checks and team analytics.

Code is split into domains: teams, timesheets, absences, compliance. Each domain lives separately, communicates through clear contracts.

Challenges we ran into

Coming from traditional backends, we had to shift mindset. No long-running processes - everything is request-based or async consumers. Once it clicked, development sped up.

Accomplishments that we're proud of

Honestly? The best feeling is when something new finally clicks. You struggle with unfamiliar APIs, weird errors, docs that don't quite answer your question. And then it works.

Forge is where Atlassian is heading. Connect had a good run, but it's clear where the future is. We needed to make this jump eventually, and this project forced us to do it. First Forge app, first real experience with the platform. Now we know how it works, what's possible, what's painful. That's valuable.

What we learned

Rovo integration was smoother than expected. Define actions in manifest, return structured data, let AI handle the conversation. The key was writing clear prompts for the agent.

Real-time sync just works. Webhooks for instant updates, scheduled triggers for consistency checks. Gap detection catches edge cases automatically.

TypeScript on backend felt natural. Came from Java, expected complexity. Forge keeps it simple — less boilerplate, faster iteration.

What's next for Workbeat

Notifications and reminders so people get nudged when they forget to log. Full compliance portal with trends and team health metrics. Calendar integrations to suggest worklogs based on meetings. Atlassian Teams integration for native team sync (waiting for full API, RFC is already out). Dashboard gadget for quick overview right on Jira home.

Built With

Share this project:

Updates