projects / kfix
KFix
Repair Shop Management System
Product planning, research, architecture, implementation, verification, deployment, and documentation
What it is
KFix is a self-hosted repair-shop work-order system. It covers device intake, estimates, approvals, repair status, parts and labor, inventory, warranties, payments, receipts, and delivery.
The problem
Repair shops often keep device details, approvals, repair status, parts, payments, and customer communication in separate places. KFix brings that workflow into one system while preserving the history of each device and visit.
What I worked on
- Defined the repair lifecycle from intake to delivery.
- Designed the data model and work-order relationships.
- Built bilingual Arabic/English behavior with RTL and LTR support.
- Added estimates, approvals, repair states, parts and labor, stock handling, warranties, payments, and printable receipts.
- Worked on roles, permissions, tenant boundaries, history, and deletion guards.
- Added operational documentation, browser-level checks, and deployment support.
- Used Claude Code and Codex inside a spec-driven workflow with scoped tasks, isolated worktrees, implementation and review passes, and browser-level verification.
Decisions
One bilingual product
A single application with Arabic and English support rather than separate language-specific apps.
Server-enforced permissions
Authorization is enforced on the server. Hiding a button alone is not authorization.
History preservation
Device and work-order history is preserved instead of overwriting old facts.
Additive schema changes
Schema changes are additive unless a controlled migration is planned.
Separate inventory models
Customer-owned devices are kept separate from serialized shop inventory.
Progressive disclosure
Important history stays accessible while reducing noise in the default view.
Testing and verification
- Browser-level end-to-end checks for core repair workflows.
- Accessibility review for bilingual RTL and LTR layouts.
- Manual acceptance criteria for agent-assisted changes before merge.
Stack
Application
Next.js · React · TypeScript · pnpm
Data and persistence
Drizzle · PostgreSQL · Docker Compose
Operations
Caddy · VPS operations · RTL/i18n
Quality
Playwright · Browser verification · Accessibility review