Building Waktu+ – A Modern Prayer Times Web App

Published on June 12, 2025

A blend of simplicity, responsiveness, and real-world problem solving.

Waktu+ (or Waktu Plus) began not just as a coding project, but as a personal mission—to create a clean, fast, and reliable web app that provides accurate Muslim prayer times, tailored for users in Malaysia. What started as a side idea during an internship quickly evolved into a full-fledged product, pushing my skills in React, responsive design, UX thinking, and API integration. This blog shares the journey of building Waktu+, the challenges faced, and the lessons learned from turning a simple concept into a functional and user-centric web app.

Most prayer time apps available online were either bloated with ads, heavy to load, or lacked proper localization for Malaysian cities. Some required account creation for basic features like setting a location or switching themes. Others displayed prayer times without context—no countdowns, no Qibla direction, no adaptability across devices.

Waktu+ was born from that frustration. The goal was simple: design a minimalist and responsive web app that automatically detects the user's location, fetches accurate prayer times, and displays them in a clean, easy-to-read format—no distractions, no sign-ups, just utility.

Using Figma, I wireframed the core screens: the homepage showing today’s prayer times, a location search modal, and optional features like dark mode and countdowns to the next prayer. Accessibility and simplicity guided every design decision. Fonts were chosen for readability; color contrast was tested for both light and dark modes.

Responsiveness was a key goal—whether users opened Waktu+ on a phone during commutes or on desktop during work, the layout had to feel seamless. Using Tailwind CSS, I implemented a mobile-first design with flexible grids, subtle transitions, and scalable components.

Waktu+ is powered by React, using functional components and hooks to manage state and lifecycle events. For prayer time data, I integrated the Waktu Solat API, which supports global locations and multiple calculation methods—including JAKIM’s standard for Malaysia.

To simplify the user experience, Waktu+ uses the browser’s Geolocation API to auto-detect location. If permission is denied or unavailable, users can manually search using a dropdown filtered for Malaysian cities. Timezone conversion and real-time countdown to the next prayer were handled with day.js for lightweight time manipulation.

One early challenge was ensuring accuracy. Different regions in Malaysia use different calculation methods for prayer times. I had to study the parameters used by JAKIM and cross-check API outputs with official sources to ensure reliability.

Another challenge was optimizing performance and loading times. By keeping the app lightweight—no large libraries, minimal images, and caching API responses where appropriate—Waktu+ loads fast even on slower mobile networks, which is essential for users on the go.

Waktu+ was quietly launched online and shared within a few developer and student communities. The feedback was overwhelmingly positive—users appreciated the speed, the distraction-free interface, and the ability to bookmark the web app like a native one on mobile.

Requests quickly followed: add Qibla direction, integrate Hijri calendar, support azan audio notifications. These are now part of the roadmap as I continue to iterate based on real-world feedback.

Start small, but build with real users in mind: Waktu+ wasn’t built to be everything for everyone. It focused on doing one thing well—and that simplicity is what made it useful. Real projects beat classroom theory: I learned more from debugging timezone issues and handling API edge cases than I ever could in a lecture hall. Design and development are one team: Treating Figma as a live tool, not just a mockup, helped create a seamless flow from design to code.

As Waktu+ continues to evolve, the vision remains the same: a prayer times web app that respects the user’s time, data, and attention. Future updates will focus on offline support (via service workers), expanding beyond Malaysia, and integrating community features like mosque locator or Jumu'ah reminders.

Waktu+ taught me how to merge design thinking, frontend development, and real-world user empathy into a single product. And while it started as a simple prayer time app, it became a milestone in my journey as a web developer—proof that meaningful, impactful software doesn’t have to be complex. It just has to be useful.

View Project