Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Bulma Laravel Package

jgthms/bulma

Bulma is a modern, responsive CSS framework based on Flexbox. Build clean layouts and UI components with simple class names and no JavaScript. Includes grid, forms, buttons, navbar, and helpers—easy to customize with Sass and ideal for fast prototyping.

Deep Wiki
Context7

Getting Started

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.

Implementation Patterns

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.

Gotchas and Tips

  • Class bloat: Bulma’s utility-heavy approach can inflate HTML; avoid over-nesting by extracting patterns into Blade components or Tailwind-like abstractions (e.g., @class(['btn', 'btn-primary' => $primary])).
  • Override precedence: Bulma’s styles are not scoped—ensure your custom CSS loads after Bulma and use !important sparingly (prefer specificity via is-* modifiers or additional classes).
  • Flexbox quirks: 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.
  • Extending: Use @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.
  • Mobile-first testing: Always test is-hidden-mobile, is-hidden-tablet, etc., on real devices—these classes rely on media query targets that may not align with your breakpoints.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle
atriumphp/atrium
sandermuller/package-boost-laravel
sandermuller/boost-skills
redaxo/core
yusufgenc/filament-api-forge
l3aro/rating-star-for-filament
leek/filament-subtenant-scope
anil/file-picker
broqit/fields-ai