$ account titraio
titra is a full-stack, open-source time tracking and project management web application designed for freelancers and small teams. It is built on Meteor.js 3.x with a monolithic architecture spanning server/client/imports directories, using MongoDB as its primary data store, Blaze templates for the UI, and Rspack for bundling. The application provides core time tracking features (day/week/month calendar views, timeline, timers, bulk entry), project/task management with Gantt charts, dashboards with password-protected sharing and slug URLs, CSV import/export, and rich reporting tables. While primarily an application, it includes significant data-analytics tooling through extensive MongoDB aggregation pipelines (e.g., projectStats, timecard totals) used to power its charts and reporting views, giving it a hybrid nature. The architecture relies heavily on Meteor's reactive publication/subscription model and ValidatedMethod mixins for authenticated, transaction-logged server methods. A standout feature is its integration layer: it supports sandboxed JavaScript execution via Node's VM module for inbound/outbound data interfaces and webhook verification, alongside LDAP, OIDC, Google Workspace (Gmail/Calendar), and OpenAI integrations. The UI is polished with a custom SCSS theming system (dark/light modes) built on Bootstrap, wrapping Frappe charts, datatables, and Gantt charts. External dependencies include MongoDB, Google APIs, LDAP, and multiple third-party SaaS tools (Wekan, Zammad, GitLab). Maintenance is active with a recent commit and zero Dependabot alerts, but technical drift is medium due to reliance on deprecated Blaze templates, a monolithic ~1200-line SCSS file with heavy !important usage, and known minor bugs (e.g., an inverted OpenAI API key guard, an undefined variable in projectlist.js, and duplicated dashboard components). The codebase mixes older callback styles with async/await, indicating ongoing modernization. Despite these issues, the core architecture is solid, well-separated by domain (projects, timecards, users), and offers several genuinely reusable, well-crafted utility components, making it a strong candidate for teams seeking a self-hosted time tracking solution or studying Meteor best practices.