jgthms/bulma
Bulma is a modern, responsive CSS framework based on Flexbox. Build clean layouts and UI components with a simple class system and no JavaScript required. Easy to customize, modular, and great for fast prototyping or production sites.
Install via Composer: composer require jgthms/bulma. Bulma is a CSS-only framework—no JavaScript is required for core functionality. Start by including the compiled CSS (bulma/css/bulma.min.css) in your layout, typically via a CDN for rapid prototyping or publishing assets for production. The official documentation at bulma.io is the primary resource—begin with the columns, buttons, and navbar components to build a responsive layout quickly. A minimal Laravel Blade layout would enqueue Bulma and use its semantic HTML classes without any extra build tooling initially.
Use Bulma’s modifier classes (e.g., is-primary, is-fluid, is-centered) directly in Blade templates for rapid UI development. Integrate with Laravel’s Blade components for reusable UI patterns—e.g., create @component('partials.card', ['title' => '...', 'body' => '...']). Leverage Bulma’s SASS source files (in bulma/sass/) to customize variables (e.g., $primary: #ff3860;) and rebuild CSS using Laravel Mix or Vite—define a custom bulma.scss that imports Bulma after overriding variables. For SPA workflows (e.g., Livewire or Inertia), Bulma’s class-based design avoids JS hook dependencies, making it compatible with reactive rendering without side effects.
@class(['btn', 'btn-primary' => $primary])).!important sparingly (prefer specificity via is-* modifiers or additional classes).box, columns, and tile containers behave predictably only when direct children follow Bulma’s structural rules (e.g., column inside columns). Missing the wrapper divs breaks layout silently.@extend in SASS for reusable Bulma behaviors (e.g., .btn-outline { @extend .button; ... }). Avoid direct !important hacks for theme tweaks—modularize changes in a custom.scss imported at the end.is-hidden-mobile, is-hidden-tablet, etc., on real devices—these classes rely on media query targets that may not align with your breakpoints.How can I help you explore Laravel packages today?