Census of 15 Laravel apps reveals shared schema habits no one explicitly chose
A developer analyzed 811 database tables across 15 real-world open-source Laravel applications to document what production schemas actually look like beyond tutorial projects. The study found that six tables in four projects — Bagisto, Firefly III, Koel, and Twill — lack primary keys, a trait traced back to Laravel's own legacy password-reset scaffold rather than developer oversight. Laravel has since corrected this in version 13 by introducing a properly keyed password_reset_tokens table, but older projects continue carrying the original keyless design forward. The census also revealed wide variation in relational integrity: Bagisto enforces foreign keys on 87% of its tables, while Snipe-IT uses just one foreign key across 58 tables and October CMS uses none, instead relying on PHP-level relationship declarations. The findings highlight how framework-generated defaults quietly shape application architecture long after the original design decision has been forgotten.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.
Discussion (0)
Log in to join the discussion and vote.
Log in