Bulma
Bulma is a modern CSS framework based on Flexbox.
Quick install
Bulma is constantly in development! Try it out now:
NPM
npm install bulma
or
Yarn
yarn add bulma
Bower
bower install bulma
Import
After installation, you can import the CSS file into your project using this snippet:
@import 'bulma/css/bulma.css'
CDN
https://www.jsdelivr.com/package/npm/bulma
Feel free to raise an issue or submit a pull request.
CSS only
Bulma is a CSS framework. As such, the sole output is a single CSS file: bulma.css
You can either use that file, "out of the box", or download the Sass source files to customize the variables.
There is no JavaScript included. People generally want to use their own JS implementation (and usually already have one). Bulma can be considered "environment agnostic": it's just the style layer on top of the logic.
Browser Support
Bulma uses autoprefixer to make (most) Flexbox features compatible with earlier browser versions. According to Can I use, Bulma is compatible with recent versions of:
- Chrome
- Edge
- Firefox
- Opera
- Safari
Internet Explorer (10+) is only partially supported.
Documentation
The documentation resides in the docs directory, and is built with the Ruby-based Jekyll tool.
Browse the online documentation here.
Related projects
Project | Description |
---|---|
Bulma with Attribute Modules | Adds support for attribute-based selectors |
Bulma with Rails | Integrates Bulma with the rails asset pipeline |
BulmaRazor | A lightweight component library based on Bulma and Blazor. |
Vue Admin (dead) | Vue Admin framework powered by Bulma |
Bulmaswatch | Free themes for Bulma |
Goldfish (read-only) | Vault UI with Bulma, Golang, and Vue Admin |
ember-bulma | Ember addon providing a collection of UI components for Bulma |
Bloomer | A set of React components for Bulma |
React-bulma | React.js components for Bulma |
Buefy | Lightweight UI components for Vue.js based on Bulma |
vue-bulma-components | Bulma components for Vue.js with straightforward syntax |
BulmaJS | Javascript integration for Bulma. Written in ES6 with a data-* API |
Bulma-modal-fx | A set of modal window effects with CSS transitions and animations for Bulma |
Bulma Stylus | Up-to-date 1:1 translation to Stylus |
Bulma.styl (read-only) | 1:1 Stylus translation of Bulma 0.6.11 |
elm-bulma | Bulma + Elm |
elm-bulma-classes | Bulma classes prepared for usage with Elm |
Bulma Customizer | Bulma Customizer – Create your own bespoke Bulma build |
Fulma | Wrapper around Bulma for fable-react |
Laravel Enso | SPA Admin Panel built with Bulma, VueJS and Laravel |
Django Bulma | Integrates Bulma with Django |
Bulma Templates | Free Templates for Bulma |
React Bulma Components | Another React wrap on React for Bulma.io |
purescript-bulma | PureScript bindings for Bulma |
Vue Datatable | Bulma themed datatable based on Vue, Laravel & JSON templates |
bulma-fluent | Fluent Design Theme for Bulma inspired by Microsoft’s Fluent Design System |
csskrt-csskrt | Automatically add Bulma classes to HTML files |
bulma-pagination-react | Bulma pagination as a react component |
bulma-helpers | Functional / Atomic CSS classes for Bulma |
bulma-swatch-hook | Bulma swatches as a react hook and a component |
BulmaWP (read-only) | Starter WordPress theme for Bulma |
Ralma | Stateless Ractive.js Components for Bulma |
Django Simple Bulma | Lightweight integration of Bulma and Bulma-Extensions for your Django app |
rbx | Comprehensive React UI Framework written in TypeScript |
Awesome Bulma Templates | Free real-world Templates built with Bulma |
Trunx | Super Saiyan React components, son of awesome Bulma, implemented in TypeScript |
@aybolit/bulma | Web Components library inspired by Bulma and Bulma-extensions |
Drulma | Drupal theme for Bulma. |
Bulrush | A Bulma-based Python Pelican blog theme |
Bulma Variable Export | Access Bulma Variables in Javascript/Typescript in project using Webpack |
Bulmil | An agnostic UI components library based on Web Components, made with Bulma & Stencil. |
Svelte Bulma Components | Library of UI components to be used in Svelte.js or standalone. |
Bulma Nunjucks Starterkit | Starterkit for Nunjucks with Bulma. |
Bulma-Social | Social Buttons and Colors for Bulma |
Divjoy | React codebase generator with Bulma templates |
Blazorise | Blazor component library with the support for Bulma CSS framework |
Oruga-Bulma | Bulma theme for Oruga UI |
Code copyright 2021 Jeremy Thomas. Code released under the MIT license.
Add spacing helper
I'm using Bulma for my recent projects. Really like the framework! One feature that would be really helpful is a 'spacing' helper. See e.g. https://github.com/inuitcss/inuitcss/blob/develop/utilities/_utilities.spacings.scss
With this option, you can easily add a padding or margin to specific elements like: .u-margin-top {} .u-padding-left-large {} .u-margin-right-small {} .u-padding {} .u-padding-right-none {} .u-padding-horizontal {} .u-padding-vertical-small {}
Perhaps we can also include the breakpoints into it, like the current 'responsive helpers'. That way we can e.g. set no padding on mobile devices and a top padding on desktops.
If others think this might be a useful addition, I can create a pull request to incorporate this feature.
Support for sticky footer
It would be nice if Bulma had built-in support for "sticky footers" as described in https://philipwalton.github.io/solved-by-flexbox/demos/sticky-footer/.
please namespace all classes
Please namespace all your classes with the prefix "bulma-" or "b-", because there are a lot of conflicts when using other css frameworks as well. For example, common css-class names such as .card, .panel etc are in conflict. So please namespace all the classes with "b-" ("b-card", "b-panel", etc.).
Thanks.
Document how to use bulma media query mixins
This is about the Docs.
Overview of the problem
This is about the Bulma Docs I'm using Bulma version [0.7.1]
Description
Bulma's media query mixins could be useful for styling custom components while using Bulma. It would be helpful to document this feature (ideally with side-by-side
sass
/scss
examples).Thx!
Problem with columnGap property
Hello Bulma'ers!
Just catched this WARNING message when compiling my Sass with Webpack
(Emitted value instead of an instance of Error) postcss-custom-properties: /<project-path>/node_modules/bulma/sass/grid/columns.sass:328:6: Custom property ignored: not scoped to the top-level :root element (.columns.is-variable.is-8 { ... --columnGap: ... })
Form: add file/upload input
Checklist
Description
Please add form file/upload input styles.
Button sizes, could be responsive
These sizes are great, but useless if we need them to be responsive. Would be great if there was a Bullma-way to make them responsive. Right now I did it myself, but it feels hacky.
Docs:
Hacky code: (not a suggestion)
Unable to get hero nav hamburger menu to work
Bulma Version: 0.28 Browser: Tested Chrome & Safari
Description
I'm unable to get the hamburger menu to work in hero->nav
I originally used the example under
hero
, and have tried mimicking the html used on https://github.com/jgthms/bulma-websiteSteps to Reproduce
Any help would be appreciated. I ran through the examples a couple times and checked everything to make sure I wasn't missing a tag or something. The result is that the hamburger menu appears, but clicking it has no effect.
I put a sample page in index.html of https://github.com/rudedogg/bulma
PLEASE! - use SCSS by default on bulma or implement 2 filetypes...
Is it about Bulma
Overview of the problem
I'm using Bulma version [0.6.1]
Description
Hello, I'm starting to study the bulma to apply in a project but I'm having difficulties to use only the SASS framework. is there any way to create it for SCSS? I think it would be interesting to convert since the build API already keeps this native ...
Add list element feature [Fixes #772]
This is a new feature. How to update the docs/changelog?
Proposed solution
It adds a list element which was missing of the most of users
Testing Done
I checked in browser how it looks
Ease the way to change global font size
Hi,
why not defining a $html-size variable in order to define a global html text size and then all body text will depend on it.
for example: $html-size : 10px $body-size: 1.4rem
Regards
Am I supposed to ignore these vulnerabilities?
This is about Bulma.
Overview of the problem
This is about the Bulma CSS framework
I'm using Bulma version [0.9.4]
Description
I had a site from a couple of years ago working, but my computer died and I had to reinstall Gridsome and Bulma from scratch.
I seem to finally have this working, but I'm worried about the "58 vulnerabilities (15 moderate, 38 high, 5 critical)".
It keeps saying:
But if they do not require attention, why bother?
When I've tried that I get in a never ending loop like:
Seems no escape from that loop, so I quit trying and just ignore the vulnerabilities for now.
What am I risking? The site it builds seems to work, at least on my machines...
Steps to Reproduce
While I'm reporting this, are these bugs, or things I'm supposed to know I need to add?
Create a site folder:
--> Test page worked
Install Bulma:
Copy in my site files...
--> Copied 5 files from previous backup:
And it works!
Expected behavior
Seems "npm install bulma" should install those missing files I had to add one-by-one.
And they should not add even more vulnerabilities.
Actual behavior
Rather frustrating for someone who is not an expert at this!
Also, in case anyone else sees lots of these all over their terminal:
egrep: warning: egrep is obsolescent; using grep -E
https://bbs.archlinux.org/viewtopic.php?id=279614
Mine was here: node_modules/physical-cpu-count/index.js 2 KB JavaScript File 11/30/2022 5:20:55 PM const output = exec('lscpu -p | egrep -v "^#" | sort -u -t, -k 2,4 | wc -l')
--> Only called by Linux systems...
Changed to grep -E Warning gone!
[question]How can we achieve this Horizontal Scrollable Menu with bulma?
This is about Bulma | the Docs.
Bulma
Overview of the problem
Can't find any example building a Horizontal Scrollable Menu with Bulma in the doc. wonder we can build Horizontal Scrollable Menu with Bulma also does Bulma support PWA?
Horizontal Scrollable Menu
Firefox
Sass 0.9.4
Bulma Documentation PDF
Overview of the problem
This is about the Bulma Docs
I am sure this issue is not a duplicate
Description
An idea would be to add a pdf of all the docs so that offline coding is made easier, similar to the Django documentation.
Customizing Vite project variables
This is about the Docs. It is a question
Overview of the problem
This is about the Bulma Docs I am sure this issue is not a duplicate
Description
Hi, I have a simple question about Cutomize section in docs: I see that it is possible to customize the variables with different tools, but not with Vite.
Will this feature be implemented in the future and also the corresponding section?
Actual behavior
https://bulma.io/documentation/customize/
Importing bulma in Nuxt 3 config css property causes super slow Vite startup
This is about Bulma.
Overview of the problem
This is about the Bulma CSS framework I'm using Bulma version [0.9.4] My browser is: NA This is a Sass issue: I'm using version [0.9.4] I am sure this issue is not a duplicate?
Description
When adding bulma to Nuxt modules, vite server starts up really slowly, up to a minute for some users. It has already been raised as Nuxt and Vite github issues but devs there have said bulma is the cause.
One interesting comment (https://github.com/nuxt/framework/issues/4613#issuecomment-1339379663) says bulma uses old division code from Bootstrap, which is the underlying cause. Please investigate and issue fix if that is the case.
Steps to Reproduce
npx nuxi init nuxt-test
code nuxt-test
yarn install
vite
server, it starts up within a few secondsyarn add bulma
bulma
tocss
property:vite
server usingyarn dev -o
now it takes anywhere from 20 seconds to a minutebulma
from css property andvite
will start up in 3 seconds.Please see https://github.com/vitejs/vite/issues/11221 and https://github.com/nuxt/framework/issues/4613
Expected behavior
Vite should start up quickly, as that is one of its major features.
Actual behavior
Vite starts up real slow (possibly due to some division loops within bulma code -- see description)
With bulma:
Without:
Progress bar uses default color instead of -invert/-light/-dark variants of colors
This is about Bulma. It is a bug It is not a browser bug as far as I can tell.
Overview of the problem
This is about the Bulma CSS framework I'm using Bulma [0.9.4] My browser is: Firefox 107.0.1 (64-bit) I am sure this issue is not a duplicate
Description
I have found that the invert/light/dark versions of colours do not work specifically on the bulma progress bar. The color primary-invert/-light/-dark works in other places however coloring the progress bar with any of these it reverts to the default gray colour.
Steps to Reproduce
<progress class="progress is-primary-dark" value="15" max="100"></progress>
Expected behavior
I would expect the bar to be of the color primary-dark
Actual behavior
The bar was colored it's default grey colour. As can be seen in the following example image both the title and section are able to take on the primary-dark color while the bar does not.