Skip to content

Feature: Upload cover letter as PDF (like resumes) and select when adding a job #93

Description

@AkshayChikhalkar

Summary

Allow uploading a cover letter as a PDF (similar to resume file attachments), and selecting an existing uploaded cover letter when creating/editing a job — instead of only authoring plain/rich text in a separate Profile tab.

Problem

  • Cover letters today are text-only (title + content) on the Profile Cover Letters tab.
  • Resumes already support uploading/attaching a PDF/DOCX file and assigning that resume on the job form.
  • Users who already have a PDF cover letter must re-enter or recreate it as text, which is inconvenient and can lose formatting.

Proposed solution

Mirror the resume flow for cover letters:

  1. Upload — On Profile, allow uploading a cover letter PDF (and optionally keep the existing text editor for AI-generated / typed letters).
  2. Store — Attach a File (or equivalent) to CoverLetter, similar to Resume.FileId.
  3. Select on job — In Add/Edit Job, keep (or improve) the Cover Letter dropdown so users can pick a previously uploaded cover letter, same pattern as Resume.
  4. Download/view — From Profile (and optionally Job details), download or open the attached PDF.

Acceptance criteria

  • User can upload a PDF cover letter from Profile
  • Uploaded cover letters appear in the Profile documents list with download
  • Add/Edit Job Cover Letter dropdown lists the user’s cover letters (uploaded and/or text)
  • Selecting a cover letter on a job persists coverLetterId correctly
  • Ownership checks apply (user can only use their own cover letters)
  • Existing text-based cover letters continue to work

Out of scope (optional / follow-up)

  • AI generation into PDF
  • Multi-file versions per cover letter
  • DOCX support (unless easy to reuse resume upload path)

Alternatives considered

  • Keep text-only and ask users to paste PDF content — poor UX and loses layout.
  • Store PDFs only as notes/attachments on the job — does not reuse across applications.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions