Rafid CRM
Not a marketing site — a working application with authentication, roles, and a client portal.
- Category
- Web application
- Year
- 2026
- Role
- Product design & full-stack build

Overview
An internal system for a medical and lab supply distributor: quotations, purchase orders, service tickets, daily reports, and a separate portal where client contacts raise and track their own requests.
The challenge
The commercial flow and the service flow are usually two different systems that never meet, so nobody can see that the client asking for a repair is the same client waiting on a quote.
Approach
One data model covering the whole lifecycle — quotation to purchase order to delivery to maintenance — with the client record as the spine rather than the document.
Design
Density without noise. Status is carried by a pill and a word, never colour alone, so a list of forty requests can be read at a glance and still works for a colour-blind user.
Development
Next.js with a PostgreSQL database through Prisma, session auth, and a scoping helper that constrains every query by role — so a client contact cannot reach another company's records even if a route is guessed.
Responsive
Tables become stacked records below the tablet breakpoint rather than scrolling sideways, because a horizontally scrolling table on a phone is a table nobody reads.
Gallery



Want something like this?
Tell us what you're building and we'll come back with a view on scope, timeline and budget.
