Create a project
Your next idea starts right here.
The clean, considered feel of shadcn/ui. The simplicity of Bootstrap. Drop in two files and make something yours.
Copy dist/ into your PHP project's public assets directory. Bootstrap and its JavaScript dependencies are already included.
<link rel="stylesheet"
href="/assets/bootstrapcn/bootstrapcn.css">
<script type="module"
src="/assets/bootstrapcn/bootstrapcn.js"></script>Ten palettes. Light, dark, or system mode. Your preference, remembered.
No matching components. Try another search.
Clear actions, with just the right emphasis.
A little structure for your next big idea.
Your next idea starts right here.
Simple fields that belong in any form.
We’ll only use this for account updates.
Room for a little more context.
Plain HTML fields work with standard PHP POST requests.
Native selects or a keyboard-friendly menu.
Small decisions, familiar interactions.
A concise status, at a glance.
A human touch, with text fallbacks.
A focused moment, with native focus management.
Supporting detail, one slide away.
Related content, neatly organized.
Manage your public profile and preferences.
Keep your password and recovery information up to date.
Progressive disclosure. No JavaScript required.
Useful information, without the noise.
Your workspace is ready for its first project.
Please check the highlighted fields.
Timely feedback that stays out of the way.
A little extra explanation, when it’s needed.
Your data, with room to breathe.
| Invoice | Status | Method | Amount |
|---|---|---|---|
| INV-001 | Paid | Credit card | $250.00 |
| INV-002 | Pending | Bank transfer | $150.00 |
| INV-003 | Overdue | Credit card | $350.00 |
Native controls, thoughtfully styled.
A quiet placeholder while content loads.
A pressed state, with an accessible announcement.
Help people find their place.
Give an empty space a useful next step.
Small details that bring everything together.
A home for your ideas.
Confirm a consequential action before continuing.
Keep media in a consistent frame.
A native file input ready for a multipart PHP form.
Related actions presented as one control.
Inline date selection with a named ISO form value.
Swipe, scroll, or use previous and next. No autoplay.
A theme-aware bar chart backed by an accessible data table.
| Month | Signups |
|---|---|
| Jul | 120 |
| Aug | 180 |
| Sep | 150 |
| Oct | 240 |
One disclosure, using semantic HTML.
A small project with a clear next step.
Filter actions and navigate with arrow keys or Enter.
No commands found.
Client-side filtering, sorting, selection, and pagination.
| Alex Morgan | Admin | 12 | |
| Sam Lee | Editor | 3 | |
| Taylor Kim | Viewer | 2 | |
| Jordan Patel | Editor | 10 | |
| Casey Jones | Viewer | 5 | |
| Riley Chen | Admin | 8 |
No matching people.
Choose a single date or a range.
Display format follows the browser locale. Use getSelectedDates() for ISO values.
Native dir attributes support right-to-left layouts.
المظهر والإشعارات
Connect labels, descriptions, and error messages.
Use your company email address.
Enter a valid email address.
Non-interactive information on hover or keyboard focus.
Prefixes, suffixes, and actions around a native input.
One real input supports paste, autofill, and form submission.
Composable list content, with an optional action.
jamie@example.com
Drag the divider, or focus it and use arrow keys.
A flexible first panel.
20–80% resize bounds.
Native scrolling remains keyboard and touch accessible.
A reusable collapsible sidebar, separate from the docs.
A small loading indicator with an accessible status.
Single or multiple pressed states within a named group.
A readable foundation for long-form content.
Good interfaces help people focus on what matters.
Make the useful thing easy to find.
Plain code, safe text rendering, and a copy action.
<?php
echo htmlspecialchars($name, ENT_QUOTES, 'UTF-8');Presentation primitives for a conversation interface.
Group native form controls into a clear question.
Expandable steps for a process or activity log.
The form passed initial validation.
Render the page with the validated values.
The response is ready to send.