Multi-tenancy is the economic engine of SaaS. Sharing infrastructure across customers reduces cost and simplifies operations. But it introduces a risk that can end your business overnight: tenant data leakage. When one customer can see another customer's data — even accidentally — the consequences are severe. Regulatory fines, contract termination, public disclosure requirements, and irreparable t
Tbh I had no idea this was even a thing until recently. I've been working with Rails for a while now and somehow never came across it. So let me explain it the way I understood it. You know how we normally do associations in Rails, User has many Posts, Post belongs to User. Two different models, two different tables. Simple. But what if a model needs to reference itself? Like same table, same mode
Originally published at hafiz.dev Every SaaS app eventually hits the same question: how do you make one application serve multiple customers with separate data? If you're building with Filament, the answer is closer than you think. Filament ships with a built-in tenancy system that handles tenant switching, automatic resource scoping, registration, and profile management out of the box. But here's
The API Rate Limit Catastrophe In modern B2B SaaS development at Smart Tech Devs, your application rarely lives in isolation. You constantly communicate with external services: billing via Stripe, CRM syncing via Salesforce, or email campaigns via Resend. The architectural trap occurs when you combine the immense speed of Laravel Queues with the strict rate limits of these third-party APIs. If you
Comments
Why I built another Ruby test runner inspired by Playwright Test Ruby already has great testing tools. If you are building Rails applications today, you probably use one of these combinations: RSpec + Capybara Minitest + Capybara Rails system tests Maybe Selenium, Cuprite, Ferrum, or Playwright through Ruby bindings These tools are mature, battle-tested, and widely used. So the natural question
The Problem I Was Trying to Solve When I started building VMMS — a voucher management system It was the workflow routing. A voucher request doesn't just go to one office. It goes And at any point, a department can: Complete their step and pass it forward Reject the entire request Flag it for missing documents and pause processing I needed a system that could handle all of that cleanly. Every v
Vaultic: WebAuthn Authentication for Laravel The Death of Passwords is Here ** Passwords are dead.** We all know it. You know it. Your users know it. Yet here we are in 2026, still storing password hashes like it's 2016. The future is passwordless. And it's not coming—it's already here. But implementing WebAuthn (FIDO2) is a nightmare: challenges, assertions, public-key cryptography,