Software Developer & Open Source Enthusiast

Hardik Desai

Crafting digital experiences with modern web technologies.

Stack & Expertise

Technologies I Work With

A carefully chosen frontend and backend stack I use to build fast, scalable, and maintainable products.

HTML5CSS3JavaScriptTypeScriptReactNext.jsTailwind CSSBootstrapSCSSGSAPReduxReact QueryGraphQLNode.jsExpress.jsLaravelPHPMongoDBPostgreSQLGit & GitHubViteWebpackWordpressStrapi CMSSanity CMSJestESLintPrettierREST APIsAuthPerformance

Tools & Packages

npm Packages I Maintain

Every package ships with pragmatic defaults and tiny bundles so you can plug them into new projects without the overhead.

sanity-plugin-seofields

Rich SEO fields for Sanity documents with meta titles, descriptions, and canonical URLs that play nicely with Sanity Studio.

View on npm →
the-tooltip

Tiny tooltip component that gives you accessible, themeable hover/focus helpers with minimal overhead.

View on npm →
react-inline-date-input

Keyboard-first inline date input that keeps forms compact while letting users type, paste, or arrow through dates.

View on npm →
the-recurring-datesDeprecated

Utility helpers for generating recurring date sets so you can focus on scheduling logic instead of math.

👆Click to see the new package
recurring-datesNew

The nextgen recurring-date engine — smaller API, TypeScript-first, tree-shakeable, and built from lessons learned in the-recurring-dates.

View on npm →
quicktoast-js

Minimal toast helper with a small footprint to drop into projects for quick, dismissible notifications.

View on npm →
react-minimal-survey-builder

Lightweight headless survey engine with zero dependencies, full TypeScript support, and complete UI customization via JSON schemas.

View on npm →

About Me

I'm a passionate developer who loves creating beautiful and functional web applications. With expertise in React, Next.js, and modern frontend technologies, I bring ideas to life through clean code and thoughtful design.

I also enjoy building tools and packages that solve real problems and become useful to others, and I actively love contributing to the developer community through open-source work and shared learnings.

Craft With Intent

I design and build with purpose—prioritizing clarity, performance, accessibility, and long-term maintainability over shortcuts.

Build in the Open

I share my process openly—from architectural decisions to hard-earned debugging lessons—so others can learn alongside me.

Ship With Momentum

I focus on practical engineering: React, Next.js, and modern tooling that help turn ideas into polished, production-ready products.

From the Desk

Latest Blog Posts

Tutorials, reflections, and stories from projects in progress.

#03

How Tailwind Builds Arbitrary Classes With Dynamic Values

How Tailwind Builds Arbitrary Classes With Dynamic Values Photo by Peaky Frames on UnsplashTailwind CSS popularized the idea that utility classes can cover almost every styling need. When the framework introduced arbitrary values alongside the Just-In-Time (JIT) engine, it pushed the concept further: you could write a class that never existed before and Tailwind would generate the CSS on demand. This article breaks down how that process works, why it matters, and how to wield it responsibly.

Let's Connect

Ready to collaborate on your next project? Let's create something amazing together.