About
Who makes it
Tabletop is built by DiVotek, a Laravel and React team in Ukraine. We build and run client applications on the same stack the builder targets — e-commerce catalogues, orders, marketing campaigns, imports — and Tabletop is the tool those projects made us write. It is maintained as part of that work, not beside it.
Where it came from
The first projects started on a ready-made Laravel admin, and that was the right call: a working back office in days, and enough of a CMS to check the idea in front of real users.
Then the products grew. Catalogues, variants, collections, filters, orders, marketing contacts, campaigns, imports and exports are not a handful of standard resources, and customising a runtime that treats every screen as one has a ceiling. The projects filled up with overrides, custom pages, vendor patches and components mounted after the admin had already rendered. Effort moved from the business problem to negotiating with the framework: the interface kept getting more specific, while the admin runtime kept insisting it was generic.
The next attempt went the other way — a separate React admin, with its own fields, form slots, routes, media and dashboard screens, and a block editor with live preview beside the form. The interface freedom was real, and that block editor is still the clearest demonstration of what a React admin can be. But it drifted away from the Laravel side that owns the models, auth, queues, mail and the business rules, and keeping the two in step became its own project.
Tabletop is the synthesis of those two stages:
- PHP-first authoring — pages, tables, forms and actions described in a PHP DSL.
- Laravel keeps what it owns: validation, models, policies, queues and mail.
- React gets what it is good at: interface state, instant feedback, complex composition, and live UI over unsaved form values — a subtotal or a preview that updates without a round-trip.
- One typed contract between them — a JSON Schema grammar, mirrored in zod on the client and checked by both test suites — so neither side has to guess what the other rendered.
None of this is an argument against the tools we started with: a ready-made admin was the right instrument for the first release. The problem showed up later. Tabletop is the framework we needed after the prototype became a real product.
Where it stands
tbtop/admin— public beta, MIT, on GitHub. Pre-1.0, so a minor release may still change an API.tbtop/cms— closed beta in a private repository; join the waitlist for a seat.tbtop/spatie-media-library— a gallery field for admin forms, MIT.
To see the builder without installing anything, open the live demo. The roadmap lists what comes next and roughly when.
Try the demo, or read the code.
tbtop/admin is MIT and in public beta, for PHP 8.4 and Laravel 11–13. The quickest way to judge the approach is to click through the live demo, read the source, or install it in an app you already have.