blog-post-hero-img
Work in progress
Last updated on

Trakker.ai

After graduating college I was quite excited to go back to coding, this time not only to learn new things but to also build my portfolio and eventually land a job, and the first idea that popped in my mind was to build a job application tracker.

This project showcases the implementation of key web development concepts, including authentication, CRUD operations, debouncing, optimistic updates, and the implementation of a modern, polished user interface.

Features (so far):

  • Authentication (Oauth & Email/Password) and route protection
  • Job and Interview sections displayed in kanban boards and in table form
  • A WYSIWYG editor implemented to add notes to each job application or interview
  • Light/Dark theme switching

Usage:

  • WIP

Tech Stack:

  • Nextjs
  • Shadcn for components
  • React-query for server state and React-pacer for debouncing
  • Supabase for auth and DB management
  • Tailwindcss for styles

What I learned building this project:

  • How proxies and reverse proxies work
  • The concept behind Throttling, Queuing, Batching and Rate Limiting
  • How to implement debouncing with optimistic updates for better UX
  • Using a BaaS (Supabase) with Nextjs
  • How to use middleware for route protection
  • How and when to choose between hosting providers based on factors like runtime, performance, server location and uptime