Mahmoud Al-HabashOpen to new projects
  • WorkWork
  • ServicesServices
  • LabLab
  • WritingWriting
  • ContactContact
Amman--:--عربي
All work

In-house tool2026

Client portal

The system my clients use with me, from the first brief to the final invoice. Proposals accepted online, approvals on exact file versions, notes pinned on designs, invoices and reviews, in Arabic and English.

Start a project like this
Role
Design and engineering
Year
2026
Covers
Brief, proposal, project, approvals, files, invoices and reviews
Languages
Arabic and English, right to left and left to right
Tests
137 automated tests, including a permissions test on every data function
Built with
Next.jsTypeScriptSQLitepdf.js
mahmoudalhabash.com/start
The project brief on mahmoudalhabash.com
The project brief on a phone

How it works

  1. 01The brief
  2. 02A private request page
  3. 03The proposal, accepted online
  4. 04The project page
  5. 05Checklist and files
  6. 06Approvals and notes on designs
  7. 07Invoices and receipts
  8. 08A review

Why I built it

Client work usually lives in email threads: a brief in one, the quote in another, feedback on designs in screenshots, and payments in a spreadsheet. I wanted every client to have one private place where the whole project is visible, from the first brief to the last invoice.

What it does

  • A smart brief at /start, with questions that fit the kind of project, saved as you type.
  • A private request page where we talk the project through before it starts.
  • Proposals accepted online. The client types their name; the exact text they accepted is fingerprinted and kept.
  • A project page with phases, progress and payments, updates with comments, and a checklist of what I need from them.
  • Approvals on exact versions. Designs and documents are previewed in the page, Figma files open beside them, and an approval is tied to the exact bytes of the file.
  • Notes pinned on designs. Clients tap a spot on an image, or on any page of a PDF, and leave a numbered note. Open notes follow the file to its next version.
  • Invoices and receipts, with "I've paid", confirmation and gentle reminders.
  • Reviews at the end, shown on this site only if the client allows it.

Built carefully

Every data function checks who is asking, and a test fails if a new one forgets to. Files are checked by their real type, downloads can't run in the browser, and every page sends a strict content security policy. It runs on my own server, beside other apps, without disturbing them.

Try it

The brief is public: start one at /start. Everything after it is private to each client, so the diagram above shows how a project moves through it.

mahmoudalhabash.com/start
The client sign-in page
Clients sign in with a one-time link or an 8-digit code, never a password.

Start a project like this

Tell me about yours: the brief takes a few minutes, and I reply within 24 hours.

Start a project like this

Next project

Developer tools

Small free things for developers, on this site. A focus timer with ambient sound, a typing test that uses real code, and an excuse generator for the bad days.

mahmoudalhabash.com/focus
Focus Zone