Skip to main content

Top level navigation menu

A drawn image of Fredrik Bergqvist in a blue shirt

MAG Interactive: Time Report Management

Background

The economy team at MAG Interactive needed a better way to manage employee time reports. The existing solution was basic, making it hard to analyze data, ensure timely submissions, or export reports efficiently. I was tasked with designing and implementing a new system that would provide more control, better usability, and tighter integration with other internal tools.

The Project

I developed a Next.js application that streamlined the reporting workflow:

  • Employees can easily submit monthly time reports and use previous reports as templates.
  • The economy team can track submission status across the company.
  • Reports can be exported to CSV with enriched data from our HR system (via the BoB API).

To encourage timely submissions, I also introduced a leaderboard feature, highlighting employees who submitted before the deadline. This playful gamification element fit naturally with MAG’s culture as a game studio.

toplist.png

Additional features include an employee history overview with interactive visualizations to help both individuals and managers understand reporting patterns.

Spread of time reports

Technology

Web

  • Next.js with React and TypeScript
  • Sass modules for styling

CI/CD

  • Built and deployed using GitHub Actions, Docker, and Google Cloud Run

Integrations

  • Google IAP for secure user authentication
  • BoB API for employee data integration

Impact

The new system gave the economy team greater visibility and control over time reporting, reduced manual data handling, and ensured smoother exports for financial processes. For employees, the improved interface and templating reduced friction and saved time. The result was a more reliable, efficient, and engaging workflow for a core internal process at MAG Interactive.

This site is built with Eleventy and hosted on Vercel.

Icons are from Flaticon.

Web components from Nidhugg Web components

Performance stats can be found here: Speedlify