

Keyfinder's ERP (CRM, evaluations, KPIs, tasks, progress tracking and permissions) was built for one client. The company wanted to offer it to other businesses as a SaaS product, which meant one codebase had to serve many separate tenants without their data ever mixing.
I chose to keep one shared Laravel backend and scope every request to a tenant, instead of running a separate copy of the system per customer. One deployment is far easier to maintain, and every tenant gets fixes and features at the same time.
I wrote the migration baseline, then designed how the backend resolves the tenant: each request from the frontends carries an X-Tenant header, and the backend uses it to scope the data it reads and writes.
On top of that, three things had to ship together: a tenant admin portal to manage tenants, a self-serve signup site where a new company can register, and the changes to the ERP itself so it works per tenant.
All three shipped in 5 days, part of it over the Eid weekend. The ERP now has the foundation it needs to become a product, not just a single client's system.