time-tracker/docu/general_overview.md

1.1 KiB

General Overview

Technology Stack

Backend

  • Go with fp-go
  • PostgreSQL with ORM (GORM or Bun)
  • Swagger/OpenAPI
  • JWT-based Authentication

Frontend

  • Next.js with fp-ts
  • React and Tailwind CSS
  • Responsive Webdesign
  • Progressive Web App (PWA)

Multi-Tenancy & Roles

  • Multi-Tenancy: Isolation of data per company (tenant).
  • Roles: Admin, Company-Admin, Manager, Auditor, User.

Data Models

  • Company (Tenant)
  • User (with roles, hourly rate)
  • Customer
  • Project (with customer reference)
  • Activity (billing rate)
  • Booking (time, user, project, activity, optional description, billability 0-100%)

Functional Requirements

Version 1

  • Master data management (customers, projects, activities, users)
  • Time tracking with start/stop function and parameter inheritance from the last booking
  • Clear dashboard with recent bookings and tracker
  • Aggregated reports by period, project, customer, employee with PDF export
  • Graphical dashboards (diagrams)

Version 2

  • Project management with sprints, tasks
  • Kanban boards for task management
  • Direct linking of tasks with time bookings