Meet bestax-bulma: Modern React Components for Bulma CSS v1
Hey React developers! ๐ Are you looking for a modern, actively maintained component library for Bulma CSS? Let me introduce you to bestax-bulma (pronounced "bee-stacks"), a TypeScript-first React component library that brings the full power of Bulma v1 to your React applications.
Why Another Bulma React Library?โ
Great question! While there are other Bulma React libraries out there, many haven't been updated for Bulma v1 or are no longer actively maintained. bestax-bulma fills this gap with:
- ๐ฏ Full Bulma v1 Support: Built specifically for the latest Bulma version
- ๐ 99% Test Coverage: Every component thoroughly tested with React Testing Library
- ๐ท TypeScript-First: Complete type safety with comprehensive TypeScript definitions
- ๐ Modern Build: Tree-shakeable ESM and CJS builds for optimal bundle sizes
- ๐ Rich Documentation: Interactive Storybook and comprehensive API docs
- โก Active Development: Regular updates and responsive maintenance
Quick Start in 2 Minutesโ
Getting started is as simple as:
npm install @allxsmith/bestax-bulma bulma
Then import and use components:
import { Button, Card, Hero } from '@allxsmith/bestax-bulma'; import 'bulma/css/bulma.min.css'; function App() { return ( <Hero color="primary" size="fullheight"> <Hero.Body> <Card> <Card.Header> <Card.Header.Title>Welcome to bestax-bulma!</Card.Header.Title> </Card.Header> <Card.Content> <p>Modern React components for Bulma CSS v1</p> <Button color="success">Get Started</Button> </Card.Content> </Card> </Hero.Body> </Hero> ); }
Showcasing Bulma v1's New Featuresโ
๐ฆด Skeleton Loading Statesโ
Bulma v1 introduced the Skeleton component for beautiful loading states:
import { Skeleton, Card } from '@allxsmith/bestax-bulma'; function LoadingCard({ isLoading }) { return ( <Card> <Card.Content> {isLoading ? ( <> <Skeleton lines={2} /> <Skeleton width="60%" /> </> ) : ( <p>Your content here!</p> )} </Card.Content> </Card> ); }
๐จ CSS Grid Supportโ
Take advantage of Bulma's new CSS Grid components for modern layouts:
import { Grid, Cell } from '@allxsmith/bestax-bulma'; function Dashboard() { return ( <Grid> <Cell columnStart={1} columnEnd={4}> <Card>Sidebar Content</Card> </Cell> <Cell columnStart={4} columnEnd={13}> <Card>Main Content</Card> </Cell> </Grid> ); }
๐ Dynamic HSL Themingโ
Bulma v1's HSL color system enables dynamic theming:
import { Theme, Button } from '@allxsmith/bestax-bulma'; function ThemedApp() { return ( <Theme primary={{ h: 271, s: 100, l: 71 }} // Custom purple link={{ h: 217, s: 71, l: 53 }} // Custom blue > <Button color="primary">Themed Button</Button> </Theme> ); }
Why Developers Love bestax-bulmaโ
1. Compound Components Patternโ
We use the compound components pattern for intuitive, readable code:
<Modal isActive={showModal}> <Modal.Background onClick={closeModal} /> <Modal.Card> <Modal.Card.Head> <Modal.Card.Title>Intuitive API</Modal.Card.Title> <Modal.Close onClick={closeModal} /> </Modal.Card.Head> <Modal.Card.Body>Components that make sense!</Modal.Card.Body> </Modal.Card> </Modal>
2. TypeScript Autocomplete Heavenโ
Every prop is fully typed, giving you incredible IDE support:
// Full autocomplete for colors, sizes, and more
<Button
color="primary" // 'primary' | 'link' | 'info' | 'success' | ...
size="large" // 'small' | 'normal' | 'medium' | 'large'
isLoading
isOutlined
/>
3. Zero Configurationโ
Unlike many CSS-in-JS solutions, bestax-bulma works with standard Bulma CSS. No build configuration, no CSS extraction, just import and go!
Try It Liveโ
Want to see bestax-bulma in action? Check out our interactive playground where you can experiment with components in real-time, or browse our Storybook to see every component and variation.
Comparison with Alternativesโ
Feature | bestax-bulma | react-bulma-components | rbx | bulma-react |
---|---|---|---|---|
Bulma v1 Support | โ | โ | โ | โ |
TypeScript | โ Built-in | โ ๏ธ Separate | โ | โ |
Test Coverage | 99% | ~70% | ~80% | Unknown |
Active Maintenance | โ 2025 | โ ๏ธ 2023 | โ 2021 | โ 2020 |
Tree Shaking | โ | โ | โ | โ |
Compound Components | โ | โ | โ | โ |
Get Started Todayโ
Ready to modernize your Bulma React experience?
- Install:
npm install @allxsmith/bestax-bulma bulma
- Explore: Check our documentation
- Build: Start creating beautiful UIs with modern React patterns
- Contribute: Join us on GitHub
What's Next?โ
This is just the beginning! In the next parts of this series, we'll dive deep into:
- Part 2: Building Beautiful UIs with Core Components
- Part 3: Forms, Data Display, and Advanced Patterns
Follow me for updates and feel free to star the repository if you find it helpful!
Have questions or feedback? Drop a comment below or open an issue on GitHub. Let's build something amazing together! ๐