ABDULKADERSAFI.COM
Back to Projects
Laravel Blade Tailwindcss AlpineJS

LaralCN-UI: A shadcn-style copy-and-own Blade component system for Laravel

A shadcn-style copy-and-own Blade component system for Laravel. Instead of a runtime library, you pull pure Blade and Tailwind v4 components into your own source tree via an Artisan CLI or one-click copy from the docs site. Every component is fully owned and editable, with no version coupling.

LaralCN-UI: A shadcn-style copy-and-own Blade component system for Laravel

Project Overview

LaralCN-UI is a shadcn-style copy-and-own Blade component system for Laravel. It is not a runtime library. Instead of depending on a package you cannot edit, you pull individual components into your own source tree as plain .blade.php files that you fully own. Components are pure Blade and Tailwind v4, with Alpine.js used only when interactivity is unavoidable. There are two install channels: an Artisan CLI (composer require, ui:init, ui:add) and one-click copy from the documentation website. A registry is the single source of truth, and the docs site dogfoods that registry so the CLI install and the copy-from-site output are guaranteed identical.

The Challenge

The reason this project exists is simple. shadcn/ui changed how the React world builds interfaces. You do not take on a dependency you cannot see into. You copy clean, accessible, themeable components into your own codebase and they become yours. That model is loved because it removes version lock-in, makes every component fully editable, and keeps the design system honest and in your control. The Laravel ecosystem has nothing equivalent. The available options are runtime component libraries that you depend on, that hide their markup behind a package, and that couple your UI to a library version. There was no real copy-and-own, Blade-native answer to shadcn/ui for Laravel. LaralCN-UI exists to fill exactly that gap, bringing the shadcn philosophy (own your components, theme with tokens, no runtime coupling) to pure Blade and Tailwind v4.

The Solution

LaralCN-UI delivers the shadcn model natively for Laravel. A single registry holds every component as a JSON manifest plus its Blade source. A small dev-only Composer package ships an Artisan CLI (ui:init, ui:add, ui:list, ui:diff) that resolves dependencies recursively and copies components into resources/views/components/ui as files the developer owns. A second channel needs no CLI at all: the documentation site renders the exact registry files with live previews and one-click copyable source, which is the supported path for plain Blade and Statamic projects. Components use Tailwind v4 CSS-first theme tokens only, with tailwind-merge so consumer classes correctly override defaults. The documentation site is built in the shadcn documentation style, with a Preview and Code toggle, an Installation section (Command and Manual), and a Usage section for every component. Because the site dogfoods the same registry the CLI installs from, the CLI output and the copy-from-site output are always identical.

Project Info

ROLE Creator & Solo Developer
TIMELINE 2026
YEAR 2026
STATUS
In Progress

Tech Stack

Laravel
Blade
Tailwindcss
AlpineJS
NEXT PROJECT Portfolio MCP Server: Giving AI a Safe, Typed API Into My Portfolio
View Project
FAQ

Frequently Asked Questions

What is LaralCN-UI?

LaralCN-UI is a shadcn-style copy-and-own Blade component system for Laravel. Rather than being a runtime library you depend on, it lets you pull individual components into your own source tree as plain .blade.php files that you fully own and can edit freely. The components are pure Blade and Tailwind v4, with Alpine.js used only where interactivity is genuinely needed.

How is this different from a normal Laravel component library?

Most Laravel UI options are runtime component libraries that hide their markup behind a package and couple your UI to a specific library version. LaralCN-UI brings the shadcn philosophy of owning your components instead, you copy clean, themeable components into your codebase and they become yours, which removes version lock-in and keeps every component fully editable. It was built specifically because the Laravel ecosystem had no real copy-and-own, Blade-native answer to shadcn/ui.

How do I install components, and do I need the CLI?

There are two install channels backed by a single registry that acts as the source of truth. You can use an Artisan CLI shipped as a small dev-only Composer package, with commands like ui:init, ui:add, ui:list, and ui:diff that resolve dependencies recursively and copy components into your views directory. Alternatively, the documentation site offers one-click copyable source with live previews and needs no CLI at all, which is the supported path for plain Blade and Statamic projects. Because the docs site dogfoods the same registry the CLI installs from, both paths produce identical output.

What is the tech stack and how does theming work?

Components are built with Laravel, Blade, and Tailwind CSS v4, with Alpine.js added only when interactivity is unavoidable. Theming uses Tailwind v4 CSS-first theme tokens, and tailwind-merge is used so that classes you add as a consumer correctly override the component defaults. The documentation site follows the shadcn documentation style with Preview and Code toggles, Command and Manual installation sections, and a usage section for every component.

Is it open source and where can I find it?

Yes, LaralCN-UI is an open source project. The code is available on GitHub at github.com/Abdulkader-Safi/LaralCN-UI, and there is a live documentation site at laralcn-ui.abdulkadersafi.com. It was created by Abdulkader Safi as the creator and solo developer, and the project is currently In Progress.

GET IN TOUCH

Let's Build Something Together

Have a project in mind, want to collaborate on a web or mobile app, or just want to say hi? My inbox is open.

Get in Touch
safi.abdulkader@gmail.com +965 60787763 Based in Kuwait & Lebanon