Building Plus Ultra: How Antigravity Helped Me Bring Material Design to Bulma CSS šØ
Source: Dev.to
Overview
Hey everyone š
Today I want to share something Iāve been working on that combines two things I love: clean CSS frameworks and Material Design aesthetics. I just launched Plus Ultra, an openāsource CSS library that brings Material Design components to Bulma CSS while keeping all the flexbox goodness that makes Bulma so powerful.
And hereās the kicker: I built most of it using Google Antigravity, which turned out to be an absolute beast for frontend work. If youāre wondering whether Antigravity is any good for UI development, let me tell youāitās incredible.
Letās start! š¤
What is Plus Ultra and why did I build it?
-
Bulma is one of my favorite CSS frameworks. Itās lightweight, pure CSS (no JavaScript), based on flexbox, and incredibly easy to use.
-
Problem: Its default aesthetic is pretty basic. The components work great, but they look⦠well, vanilla.
-
Material Design is gorgeous. Googleās design system is polished, modern, and has that clean āpremiumā feel.
-
Problem: Most Material Design implementations (e.g., MaterialāUI) are tied to specific JavaScript frameworks, which defeats the purpose of Bulmaās simplicity.
Solution: Combine the best of both worldsāBulmaās flexbox power and simplicity with Material Designās visual polish. Thatās Plus Ultra.
Features (Pure CSS / Sass)
- Material buttons ā proper elevation, CSSāonly ripple effects, Material color schemes
- Material cards ā signature shadow system and hover states
- Material form inputs ā floating labels and Materialāstyle validation
- Material navigation components ā following Material guidelines
- Material modals & dialogs ā proper transitions and backdrops
The key is that Plus Ultra is built on top of Bulma, not instead of it. You still get all of Bulmaās flexbox utilities, grid system, and helper classes; Plus Ultra simply makes everything look like Material Design.
The name comes from one of my allātime favorite anime series: My Hero Academia š
Tech Stack
Core
- Bulma CSS ā foundation (obviously)
- Sass/SCSS ā for all Material Design styling
- Pure CSS ā animations & transitions
- No JavaScript dependencies ā keeping Bulmaās philosophy
Build Tools
pnpmā package management- Sass compiler ā builds the final CSS
Material Design System
- Follows Googleās Material DesignāÆ3 guidelines
- Custom color system matching Material palettes
- Elevation system with proper shadows
- Material motion & transitions
The beauty is that itās just CSS. No complicated build process, no JavaScript runtime, no framework lockāin. Install it, import it, and your Bulma components instantly look like Material Design.
Development with Google Antigravity
I could have built Plus Ultra the oldāfashioned wayāmanually writing Sass, testing in the browser, iterating on designs. Instead, I used Google Antigravity, and it transformed the entire development process.
Why Antigravity shines for frontend work
| Aspect | How Antigravity Helps |
|---|---|
| Visual Feedback Loop | ⢠Write initial Sass ā compile & render in the browser ā visually compare to Material specs ā adjust colors/shadows/spacing ā show final result. |
| Material Design Knowledge | Saves countless hours of referencing docs; the agent knows the specs. |
| Rapid Iteration | āMake the button shadow more subtleā ā adjusts values, shows result ā revert/modify in seconds, not minutes. |
Concrete Examples
ExampleāÆ1 ā Material Cards
Task: āCreate a Material Design card component that works with Bulmaās .card class.ā
Antigravityās actions:
- Analyzed Bulmaās existing card structure.
- Added Material elevation (boxāshadow) with proper values.
- Implemented hover state with elevation increase.
- Applied borderāradius matching Material specs.
- Created transition animations for smooth hover effects.
- Ensured responsive behavior on mobile.
Result: The component was productionāready on the first attempt; I only tweaked spacing.
ExampleāÆ2 ā Floating Label Inputs
Task: āImplement Material Design floating labels for Bulma form inputs.ā
Challenges:
- Label starts inside the input.
- On focus/filled, label floats up & shrinks.
- Smooth transitions, color changes, accessibility.
Antigravityās output:
- Wrote the necessary CSS logic.
- Generated test cases showing:
- Empty input (label inside)
- Focused input (label floating)
- Filled input (label stays floating)
- Error state (red accent)
- Success state (green accent)
- Visually validated each state before delivering the final component.
ExampleāÆ3 ā Material Color System
Task: āImplement Material Design color palette with Sass variables compatible with Bulmaās color system.ā
Antigravityās actions:
- Created Sass maps for Material palettes (primary, secondary, error, etc.).
- Integrated them with Bulmaās existing color variables.
- Generated utility classes (
.has-background-primary,.has-text-secondary, ā¦). - Ensured proper contrast ratios for accessibility.
- Produced documentation listing all available colors.
What would have taken me hours was done in minutes.
Planning Mode
I used Planning mode extensively for Plus Ultra. Before implementing each component, the agent would produce a plan outlining:
- Which Material Design specs it would follow.
- How it would integrate with existing Bulma classes.
- What Sass variables and mixins it would create.
- What the final output would look like.
This structured approach kept the project organized and ensured consistency across all components.
Thatās Plus Ultra in a nutshell. If youāre interested in trying it out, check out the repository, install via pnpm, import the CSS, and enjoy Material Design on top of Bulmaāno JavaScript required. Happy coding! š
Overview
I could review the plan, suggest adjustments (e.g., āuse Bulmaās existing spacing variables instead of creating new onesā), and then approve. This ensured consistency across all components.
Takeaways from Building Plus Ultra with Antigravity
Antigravity shines for:
- Componentābased UI development
- Designāsystem implementation
- CSS/Sass architecture
- Responsive design work
- Visual consistency across components
- Rapid prototyping & iteration
The visual feedback loop is critical.
Material Design knowledge is builtāin.
Planning mode prevents inconsistency.
Current Status
Plus Ultra is in early development. The foundation is thereācore Material components on top of Bulmaābut thereās still work to do.
Whatās working now
- Material buttons with elevation and states
- Material cards with proper shadows
- Basic floatingālabel inputs
- Material colorāpalette integration
- Foundation Sass architecture
Whatās coming next
- Complete form component library
- Material navigation components
- Modal and dialog components
- Material tables and lists
- Comprehensive documentation
- Live demo site
- npm package for easy installation
Iām building this in the open under Domenico Tenace Open Labs, so anyone can follow along, contribute, or use whatās already there.
And yes, Iāll continue using Antigravity for developmentāitās simply too effective not to.
Why Open Source?
The best tools I use every day are open source:
- Bulma is open source.
- Material Design specs are open.
- The entire web is built on open technologies.
Plus Ultra stands on the shoulders of giants. The least I can do is give back to the ecosystem thatās given me so much.
If other developers find it useful ā awesome.
If someone wants to contribute improvements ā even better.
If it helps people build betterālooking websites with Bulma ā thatās the whole point.
Community Questions
If you use Bulma
- Would a Material Design version interest you?
- What components would be most valuable?
- What design systems would you like to see integrated with Bulma?
If you use Material Design
- Do you prefer Reactābased Material UI or pure CSS solutions?
- What features are nonānegotiable in a Material Design implementation?
If youāve used Antigravity for frontend
- How has your experience been with UI development?
- Did you find the browser integration as useful as I did?
- What tricks or workflows have you discovered?
If youāre considering trying Antigravity
- What questions do you have about using it for frontend work?
- What kinds of projects are you thinking about building?
Drop a comment below! Iām genuinely curious to hear if others are using Antigravity for frontend work and what your experiences have been. The tool is still new, and community knowledge sharing helps everyone.
Final Thoughts
Building Plus Ultra has been a blast, and Antigravity made the process significantly faster and more enjoyable than traditional development would have been.
- The combination of Bulmaās simplicity and Material Designās aesthetics feels like a natural fit.
- Having an AI assistant that understands both design systems, can write clean Sass, and can visually validate the results is incredibly powerful.
If youāre doing frontend work and havenāt tried Antigravity yet, I highly recommend giving it a shot. The browser integration alone makes it worth exploring.
If youāre a Bulma user looking for a Material Design aesthetic, keep an eye on Plus Ultraāweāre just getting started.
- Check out the repo, star it if youāre interested, and feel free to contribute or provide feedback.
- This is a community project; the more input we get, the better it becomes.
Happy coding! āØ
Connect with Me
Hi šš»
- š² Linktree: https://linktr.ee/domenicotenace
- GitHub: https://github.com/Domenico-Tenace-Open-Labs
- Follow me on dev.to for more articles
Domenico Tenace
- Passionate about the IT world and everything related to it āš»
- Openāsource enthusiast š¦
If you like my content or want to support my work, you can make a small donation. I would be grateful š„¹