A detailed and exhaustive list of skills I have and tools I use, told as a journey
It all started with the basics
- As I wanted to be a Frontend Web developer, HTML, CSS, and Javascript became mandatory to learn.
- Typescript felt like a boon for a Javascript developer, and now I prefer to write in Typescript.
Some tooling sprinkled
- To manage code and workflows, I picked up Git. I like to follow conventional commits, and I excel at creating flavors of workflows like GitHub flow based on team needs.
- My toolbelt expanded with Prettier and ESLint to ensure code quality, and PostCSS for advanced CSS processing.
- I used to love the Gulp task runner for automation.
- For package management, I use PNPM (disk efficient!) and often install NVM and Homebrew to manage my environment.
From static pages to apps
- I became proficient with React js and Preact js (a lightweight alternative).
- While I used Gulp before, Vite has become my default build tool for every new project.
- For styling, my goto is Tailwind CSS, a utility-first framework that changed how I write CSS.
Urge to showcase talent
- Building apps is one thing, shipping them is another. I rely on Vercel and Netlify to get my projects live with ease.
Exploring began when the apps I was building didn’t feel production standard
- I moved to meta-frameworks like Next js (and Astro js) depending on the project needs.
- My UI demands grew, leading me to love Radix UI for accessibility, and eventually Shadcn UI for beautiful, re-usable components.
- State and data management became robust with React Query.
- For forms, I integrated React Hook Form paired with Zod for schema validation.
Baby Steps towards full stack apps through services integrations
- I loved the Headless CMS experience with Sanity.
- Database setup was a bottleneck until I found Supabase; chose it over Firebase for its open-source nature.
- Clerk became my goto for user management (generous free tier!).
- For media, Cloudinary handles my image transformations, while Cloudflare R2 stores my static files.
- I integrated Razorpay for payments and Typesense when search needs arose.
Charting the territories
- I’ve built interactive map interfaces using Mapbox and Google Maps JS API.
- This journey exposed me to the world of GIS, handling KML, KMZ, and GeoJSON data, and mastering the nuances of vector and raster tiles.
Filling the gaps of a real product builder, the uncommons
- Resend and React Email modernized my transactional emails.
- Mixpanel helped me understand user behavior.
- Use Postman for API testing and Drizzle as my ORM of choice.
- Added Motion (formerly Framer Motion) for smooth animations.
- I dabbled in Bash scripting long back and am getting back to it to automate the uncommons.
Going with flow, learning the hype
- I’m constantly exploring. Currently looking at Payload CMS for a code-first CMS and PostHog for deeper product analytics.
- Tooling is getting faster with Biome and Ultracite.
- Bruno serves as a lightweight API client.
- Appwrite is on my radar as a robust backend alternative.
The Workshop
- Cursor is my primary editor (loving the AI integration). I’ve tried Zed and Windsurf, and I’m waiting for Kiro.
- For design/wireframing, I use Figma and Excalidraw (or Mermaid when in dev logic mode).
- Operating Systems: I am efficient on Mac and Linux. My Linux distro journey: Ubuntu -> Linux Mint -> Garuda Linux -> Fedora.