Blog
Building a Chrome Extension for LinkedIn Job Import in Talior.me
A new Chrome extension for talior.me makes it possible to import LinkedIn job postings directly into the tailoring pipeline. It extracts job data, starts resume generation from the browser, and keeps each generated resume connected to its source, making the application workflow much smoother.
What I’ve Built So Far With Tailor.me
Tailor.me started as a way to automate the repetitive work of tailoring resumes for every application. Over time, it has grown into something much broader: a system for managing the entire job-application workflow, from generating tailored resumes to tracking jobs, reusing appearance presets, and even measuring resume views. This post is a look at how the project has evolved so far and the product direction that is starting to take shape.
Adding Resume View Tracking to Talior.me
I built this update to make talior.me more useful during the job application grind. Instead of sending tailored resumes into a black box, I wanted a way to track which companies were actually viewing them and get some feedback on whether an application was getting attention. This PR adds resume-level tracking to the workflow by generating trackable links, embedding them during resume processing, and laying the groundwork for better application insights.
Adding Appearance Presets to Talior.me
I built appearance presets in Talior.me to solve a problem I kept running into while job hunting: I needed different resume formats for new grad and experienced roles, but did not want to keep redoing the same styling decisions by hand. This update turns font choices, section order, and default layouts into reusable presets that plug directly into the resume generation workflow.
Turning Resume Tailoring Into a Job-Application Workflow
I just pushed an update to talior.me that makes my job hunt feel a lot more organized and a lot less chaotic. Instead of juggling spreadsheets, bookmarks, and scattered notes, I can now track roles in one place—from “ready to apply” to “applied,” and beyond. The biggest change is that it’s built for momentum: once a resume is ready, I can apply, mark it done, and immediately move to the next role without losing context. It’s a small shift, but it turns the process from “lots of busywork” into a clear, repeatable workflow.
Building Tailor.me: Automating the Resume Tailoring Process with AI
Tired of spending hours customizing resumes for each job application? I built Tailor.me, an AI-powered full-stack app that transforms the tedious resume tailoring process into a 30-second automated workflow. Using Next.js, NestJS, OpenAI, and real-time WebSockets, it intelligently parses job descriptions, selects relevant experiences, rewrites bullet points, and generates professional PDFs—all while processing up to 10 jobs concurrently. Here's how I turned resume fatigue into a production-ready TypeScript monorepo that works smarter, not harder.
Building a Unified Calendar, Notes, and Reminders Hub
I’m building a cross-platform app that brings calendar events, tasks, and notes into a single, realistic planning view, without replacing the calendar providers people already rely on. The goal is to eliminate the friction of bouncing between tools and losing context: meetings should include prep notes and outcomes, tasks should live alongside scheduled commitments, and everything should be linkable and searchable in one place. The MVP focuses on a clean end-to-end loop: connect providers, sync and normalize events, manage tasks in the same timeline, attach notes directly to events, and deliver reliable reminders.
From User to Contributor: How I Added a Global Feature to Typebot
Contributing to open source had always felt like a far-off goal—until I decided to dive into a project I already knew and loved. My first pull request to Typebot, a tool I had used for lead generation, was more than just a technical enhancement. It was my entry into a global community where a few lines of code can have a far-reaching impact. In this post, I share my journey from user to contributor, walking through the technical steps I took to add a search indexing toggle to Typebot’s settings, and the lessons I learned along the way. If you’ve ever felt hesitant about contributing to open source, I hope this story inspires you to take the plunge.
Breaking the Mold: Enabling Client-Driven Layouts on a Next.js Static Site
Static site generation provides fast content delivery but often limits customization, unlike platforms like WordPress. This project combines Next.js's speed with the flexibility of traditional content management systems. By integrating Sanity CMS's live preview, clients can easily adjust page content and layout, resulting in a performant static website that still offers adaptability.
How I fetch data in React
Fetching and managing data in React can be tedious, but Redux Toolkit Query changes the game. With built-in caching, type safety, and automatic state management for loading and errors, RTK Query simplifies the entire process. In this blog, I’ll share my go-to setup for scalable and maintainable data fetching, complete with type-safe queries, modular structure, and advanced features like revalidation of stale data. Discover how to elevate your React projects effortlessly!
Shrink, Track, Conquer: The Ultimate DIY URL Shortener Adventure!
Tired of juggling unwieldy URLs that clutter your messages? Dive into my latest side project: an open-source URL Shortener that not only trims those lengthy links but also tracks their performance with granular analytics. Whether you're running a large-scale campaign or just want a cleaner way to share, this DIY tool is here to help. Plus, it's fully customizable for personal or commercial use—so why not make it your own? Read on to explore the tech stack, implementation process, and exciting plans!
How to Create a Next.js Blog with Sanity as a Headless CMS
Elevate your blogging experience with the dynamic duo: Next.js and Sanity! This guide empowers you to craft a modern, high-performance blog using Next.js's server-side rendering and headless CMS flexibility from Sanity. Discover step-by-step instructions on connecting Next.js to Sanity, creating dynamic post components, and enhancing your blog with features like pagination, search, and more. Unleash the full potential of your content and engage your audience like never before!