# 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