Job Application Tracker

by Jim Nuzzi
5
4
3
2
1
Score: 50/100

Description

Reviews

No reviews yet.

Stats

2
stars
410
downloads
0
forks
22
days
3
days
3
days
5
total PRs
0
open PRs
0
closed PRs
5
merged PRs
0
total issues
0
open issues
0
closed issues
46
commits

Latest Version

4 days ago

Changelog

🚀 What's New in Version 1.1.0

📋 Data Integrity & Real-Time Note Synchronization

  • Interview Debrief Sync: Logging interview outcomes now updates the ## 📅 Interviews & Stages section in the Markdown note body from (Scheduled) to (Completed) or (Cancelled) in real time.
  • Note Overview & Title Sync: Editing application details (company, role, salary, location, workplace model, source) keeps the # Company - Role title and ## 📋 Overview note body section in sync with frontmatter.
  • Backlink-Safe File Renaming: Modifying an application's company or role automatically renames the note file on disk via Obsidian's fileManager.renameFile, preserving all Obsidian backlinks.
  • Debrief Note Bleed Fix: Switching interview rounds in LogInterviewOutcomeModal cleanly resets outcome notes and status, preventing feedback from bleeding across rounds.
  • Sanitization Fallback: Added safe filename fallback ("Untitled Application") and escaped double quotes in frontmatter templates to prevent YAML parsing errors.

🎯 Workflow & UX Enhancements

  • Non-Destructive Modal Navigation: Canceling or closing child modals (Edit Details, + Add Contact, + Schedule Interview, Log Outcome) safely returns to the active tab in ManageApplicationModal instead of ejecting users to the dashboard.
  • Native Localized Date Pickers: Replaced plain-text date inputs with native HTML5 <input type="date">, rendering localized calendar pickers and clean, locale-neutral descriptions.
  • Workspace Tab Integration: Newly created applications and generated interview prep notes now open in dedicated workspace tabs (getLeaf("tab")) rather than staying hidden behind the tracker.
  • Kanban Drop Deduplication: Dropping a card within its current column short-circuits immediately, preventing redundant status transitions and duplicate activity history entries.
  • Smart Table Sorting: Table sorting by Status now respects natural pipeline lifecycle order (WishlistAppliedScreeningInterviewingOfferAccepted), and sorting by Salary compares parsed numeric values ($20k sorts before $150k).

♿ Visual Polish & Accessibility (WCAG 2.1 AA)

  • Keyboard Menu Anchoring: Fixed context menus jumping to (0, 0) when activated via keyboard (Enter/Space), correctly anchoring them below the focused button.
  • Accepted Indicator & Custom Status Fallback: Added missing green .status-accepted activity dot and provided default styling for user-defined custom status badges.
  • Responsive Sankey Diagram in Sidebars: Added min-width: 720px to ensure the Sankey diagram remains crisp and triggers smooth horizontal scrolling when docked into narrow sidebars.
  • Light Theme Contrast: Optimized yellow ("Offer") and green ("Accepted") badges to meet WCAG AA contrast standards (>= 4.5:1) in light themes.

⚙️ Obsidian Compliance & Settings

  • Configurable Pipeline Stages: Added a settings tab control allowing users to view, customize, reorder, and reset pipeline statuses with live dropdown updates.
  • Workspace Leaf Preservation: Removed leaf detachment on onunload(), ensuring custom leaf placement and docking arrangements are preserved when reloading or disabling the plugin.
  • Modern Settings API: Replaced deprecated this.display() invocations with in-place dropdown updates.

What's Changed

Full Changelog: https://github.com/cruisencode/obsidian-job-application-tracker/compare/1.0.6...1.1.0

README file from

Github

Job Application Tracker

An all-in-one job application pipeline and career search command center for Obsidian. Track applications across customizable stages, manage key contacts and recruiters, schedule multi-round interview pipelines, generate rich interview prep & debrief notes from customizable templates, attach and view job description PDFs/MD files in collapsible callouts, track follow-up deadlines & workplace models (Remote/Hybrid/On-site), and visualize your search pipeline with Kanban, Table, List, and Metrics views (including a pure native SVG Sankey diagram).

License Obsidian


✨ Features

📊 Visual Dashboard with 4 View Modes

  • Kanban Board: Drag-and-drop cards across pipeline stage columns (WishlistAppliedScreeningInterviewingOfferAccepted / Rejected / Withdrawn / Ghosted). Moving cards instantly updates note frontmatter and logs timestamped status activity.
  • Table View: Sortable columns (Company, Role, Status, Applied Date, Location, Workplace Model, Salary, Source), clickable status badges, and quick action menus.
  • List View: Compact card layout highlighting workplace type, compensation, follow-up deadlines, and next scheduled interviews.
  • Metrics & Conversion Analytics:
    • Sankey Pipeline Diagram: Pure native SVG vector Sankey diagram charting the flow from application sources through screening and interview stages to final outcomes (zero external dependencies, zero permission prompts).
    • Key KPI Cards: Total Applications, Active Pipeline, Response Rate (%), Interview Rate (%), Offer Rate (%), Total Contacts, and Interview Rounds.
    • Pipeline Stage Breakdown: Real-time distribution and progress bars of applications currently sitting in each stage.
    • Source Performance: Breakdown analyzing which platforms yield the highest interview and offer conversion rates.
    • Recent Activity Timeline: Timestamped audit trail of recent status transitions across all applications.

📝 Native Markdown Notes & Data Storage

  • Each application is saved as a Markdown note with clean YAML frontmatter in your designated applications folder (Job Applications/ by default).
  • Zero vendor lock-in; fully compatible with Obsidian Search, Dataview, and graph view.
  • Automatically generated note sections:
    • 📋 Overview: Role, Salary, Location, Workplace Model (Remote/Hybrid/On-site), Employment Type, Source, Follow-up Date, Job Posting link, Applied Date.
    • 👥 Key Contacts: Dynamic list of hiring managers, recruiters, coordinators.
    • 📅 Interviews & Stages: Chronological list of interview rounds linked to prep notes.
    • 📝 Notes & Activity Log: Timestamped audit trail of status updates and feedback.
    • 📄 Job Description: Native embedded PDF viewer or Markdown notes wrapped in default-collapsed callouts.

📎 Job Description PDF & Markdown Attachments

  • Upload or Link Files: Attach PDFs or Markdown job postings directly from your local computer or link existing vault files when creating or editing an application.
  • Auto-Storage: Automatically saved into your designated attachments folder (Job Applications/Attachments/).
  • Collapsible Callout Embedding: Embedded inside notes with > [!abstract]- 📎 Job Description (PDF) so large files don't clutter your notes until you click to expand.
  • 1-Click Badges: Interactive badges on Kanban cards, Table rows, and List items open the attached PDF/MD file immediately.

👥 Contacts & Recruiter Management

  • Track recruiters, recruiting coordinators, hiring managers, teammates, executives, or custom roles.
  • Record email addresses (clickable mailto:), phone numbers, LinkedIn profiles, and conversation notes.
  • Seamlessly updates note frontmatter and the markdown body in real time.

🎯 Multi-Round Interview Tracker & Intelligence Hub

  • Schedule multiple rounds per application (Recruiter Screen, Technical Screen, Hiring Manager, System Design, Coding Challenge, Behavioral, Onsite / Panel, Executive / Final, Other).
  • Auto-Status Advancement: Scheduling a new interview automatically advances the application status to Interviewing (for active early-stage applications in Wishlist, Applied, or Screening, while preserving finalized outcomes like Accepted, Rejected, Withdrawn, or Ghosted).
  • Automated Prep Note Generator: Instantly generates a dedicated prep note based on an editable template containing:
    • 🏢 Company Intelligence & Team Context
    • 🎯 Key Strengths & Role Alignment
    • 💡 STAR Stories (Situation, Task, Action, Result & Metric)
    • 🛠️ Technical & Architecture Focus Areas
    • 💰 Target Compensation & Range
    • ❓ Tailored Questions for Hiring Managers, Peers, and Recruiters
    • 📝 Post-Interview Debrief & Action Items
  • Automatically links prep notes inside the main application note and opens them for immediate prep.
  • Interview Debrief Modal: Log interview outcomes (Completed or Cancelled), record debrief notes, and advance the application stage.

🔍 Live Search, Filtering & Follow-ups

  • Search across company names, roles, locations, workplace types, sources, compensation, and contact names with instant, debounced results.
  • Filter by specific application stages.
  • Track follow-up dates and application deadlines.

♿ Accessibility & Mobile Support

  • Full Keyboard Navigation: Navigate view switcher tabs, Kanban cards, sortable Table headers, and status badges with Tab, Enter, and Space.
  • ARIA Standards: Complete ARIA roles, aria-selected, and aria-sort indicators across all views.
  • Sidebar & Mobile Responsive: Uses CSS Container Queries to seamlessly adapt layout when docked in sidebars or on mobile screens.

⌨️ Commands & Shortcuts

Open the Obsidian Command Palette (Cmd + P or Ctrl + P) to access:

Command Description
Job Application Tracker: Open tracker dashboard Opens the dashboard in your preferred default location
Job Application Tracker: Open tracker dashboard in Main Center Tab Opens full-width in the central workspace (recommended for Kanban)
Job Application Tracker: Open tracker dashboard in Sidebar Opens compact view in the right sidebar
Job Application Tracker: Add new job application Opens modal to create a new job application note & attach JD
Job Application Tracker: Edit application details & attachments Edit application fields & attach/replace PDF/MD job descriptions
Job Application Tracker: Update application status Fast status picker & activity log updater
Job Application Tracker: Add contact to application Add recruiter/hiring manager info to an application
Job Application Tracker: Add interview to application Schedule an interview round & create prep note
Job Application Tracker: Log interview outcome / debrief Record debrief feedback and advance stage
Job Application Tracker: Manage application (Contacts, Interviews & Details) Comprehensive overview & management modal
Job Application Tracker: Delete application note Safely delete an application note and move to trash

Tip: When viewing any job application note, running these commands automatically pre-selects the active application.


⚙️ Settings & Customization

Under SettingsJob Application Tracker, you can configure:

  • Applications Folder: Target folder where application notes are created (default: Job Applications).
  • Interview Notes Folder: Subfolder for generated prep and debrief notes (default: Job Applications/Interviews).
  • Attachments Folder: Subfolder where uploaded PDF and Markdown job descriptions are stored (default: Job Applications/Attachments).
  • Default View Location: Main Tab (Center) or Sidebar when opening via ribbon icon or command.
  • Default Initial Status: Default stage for new applications (default: Applied).
  • Application Sources: Comma-separated list of sources (e.g. LinkedIn, Referral, Company Website, Indeed, Wellfound, Otta).
  • Interview Prep Note Template: Full Markdown template supporting placeholders:
    • {{company}}
    • {{role}}
    • {{roundName}}
    • {{date}}
    • {{time}}
    • {{interviewers}}
    • {{applicationNoteTitle}}

📄 License

MIT © cruisencode