Free Tool

PWA Navigation Bar Generator

I've built this little tool to help you design a modern bottom navigation bar for your PWA. It's interactive, so try customizing colors, icons, and tabs. You can copy the HTML/CSS generated at the bottom.

1. Configure Tabs
2. Colors
3. Floating Action Button
4. Live Preview
5. Output Code

PWA Navigation Bar FAQ

Why should a PWA use a bottom navigation bar?

Users really expect your Progressive Web App to feel just like a native iOS or Android app. Since modern phones have such tall screens, reaching for a traditional top navigation bar with one hand is a huge pain. Putting your main navigation at the bottom keeps all your core features right where your users' thumbs already are.

How does the CSS mask-image work for the cutout?

Instead of relying on messy SVG paths that break on different screen sizes, this tool uses the CSS mask-image property along with an inline SVG. We use a clever trick by forcing the nested SVG to have zero width and height to avoid weird clipping bugs in Safari. It acts as a stencil that cuts a perfect circle and rounds the edges to give you that premium native look without cluttering up your HTML.

How do I handle the iPhone bottom indicator bar?

Newer iPhones have a horizontal swipe indicator sitting at the very bottom of the screen. If you glue your navigation bar down there, your buttons will awkwardly overlap with it. To fix this, our generated CSS automatically includes a handy property for the safe areas called env(safe-area-inset-bottom). This tells the browser to add a little extra padding only on devices that need the breathing room.

Can I swap out the icons for my own?

Absolutely. The generated code uses standard inline SVG icons, but you are completely free to replace them. Whether you prefer FontAwesome, Heroicons, or your own custom SVGs, just drop them into the anchor tags in the HTML output. The CSS will automatically center them and apply your chosen active and inactive colors.

How should I hide this nav bar on larger desktop screens?

Bottom navigation bars are fantastic for mobile devices, but they can look a bit out of place on a wide desktop monitor. The easiest way to handle this is by wrapping the nav bar wrapper class in a simple CSS media query. You can set it to hide on screens wider than 768 pixels and switch to a standard sidebar or top navigation menu instead.

Why is the SVG mask written directly into the CSS?

We drop the SVG right into the CSS as a Data URI to save your app an extra network request. This means your styling loads instantly without waiting for an external image file to download. Plus, keeping it inline lets the CSS dynamically handle all the complex scaling and positioning for you.

Will this work well with my React or Next.js app?

For sure. The bottom nav bar output this tool generates is just plain HTML and CSS, which means it plays nicely with absolutely any framework you like. If you are using React, Vue, or Next.js, you just need to convert the class attributes to className and drop the HTML right into your main layout component.

Your app here

Adding a nav bar to your PWA?

With Progressier, you'll absolutely nail the installation logic without any dev work.

Generate PWA See plans