🧑‍💻 JP

Building Bumwash with Shopify Hydrogen & Remix

By

John Phung

Shopify Hydrogen Bumwash

Last year, I used a bidet for the first time and was blown away by how much cleaner and more refreshing it felt compared to traditional hygiene methods. This experience sparked an idea: I wanted to make bidets more accessible to others by building an ecommerce store dedicated to selling them. What started as a personal revelation turned into a passion project, where I poured my spare time into creating a modern, high-performing online storefront.

Website -> Bumwash

To bring this vision to life, I built a custom ecommerce platform using Shopify’s Hydrogen, a headless commerce framework optimised for fast, scalable online stores. My tech stack included:

  • Remix: For server-side rendering and routing, ensuring smooth navigation and efficient data handling.
  • React: To create dynamic, interactive user interfaces that enhance the shopping experience.
  • TypeScript: For type safety and maintainability, keeping the codebase robust as it grew.
  • Cloudflare Workers: For edge computing, delivering fast load times by caching content closer to users worldwide.
  • Tailwind CSS: For rapid, utility-first styling, enabling a sleek, responsive design with minimal effort.
  • ShadCN: For its accessible, reusable component library, speeding up UI development while maintaining quality.
  • Jotai: For advanced state management, offering a lightweight yet powerful way to manage complex state logic across the app.

This stack allowed me to leverage Shopify’s backend while crafting a fully customised frontend tailored to my goals.

Challenges and Solutions

The project wasn’t without its hurdles. Integrating Hydrogen with Shopify’s backend was tricky, as it required mastering Remix’s routing and data-loading patterns alongside Shopify’s APIs. I dove into the documentation, tested different setups, and refined the integration until it worked seamlessly—boosting my skills in complex framework interoperability.

Another challenge was ensuring fast performance for a global audience. Slow load times could deter customers, so I used Cloudflare Workers to implement edge caching, slashing latency and improving the experience for users everywhere. This highlighted my ability to apply cutting-edge solutions to practical problems.

State management was also a puzzle, given the need for real-time features like cart updates and personalised data. I chose Jotai for its simplicity and power, allowing me to manage intricate state across components without the overhead of traditional libraries. This kept the codebase clean, performant, and easy to scale.

Motivation and Impact

My drive came from a belief that bidets could transform hygiene for others, just as they did for me. This passion pushed me through technical challenges and kept me focused on delivering a store that meets both customer and business needs. The result is a polished, high-performing platform that showcases my skills in Remix, React, TypeScript, Cloudflare Workers, Tailwind CSS, ShadCN, and Jotai, while proving my ability to turn inspiration into action.