Skip to content

Releases: reactive-resume/app

v5.3.0

Choose a tag to compare

@amruthpillai amruthpillai released this 06 Sep 15:55
86a72be

Highlights

  • Manage cover letters in one shared library. Create, import, search, edit, duplicate, preview, download, and reuse cover letters from the dashboard or resume builder. Letters now keep their own template while still letting you copy sender details and content from a resume. (#3255) 1d4194a20, df2e21ef9, a3784558b
  • MCP connections now use a complete OAuth consent flow. Dynamic client registration works again, signed authorization requests survive login and two-factor authentication, and a new screen asks users to explicitly Allow or Deny access. (#3392) fe9b59e11
  • Import PDF resumes without configuring an AI provider. PDFs with readable text are now parsed locally in the browser and turned into an editable resume, while the existing AI-assisted path remains available when a provider is connected. Thanks to @Syed-Ali-Abbas-Zaidi. (#3334) cce6d64af
  • Do more from the application tracker. Export the current filtered view to CSV, save contact email and phone details, and turn a generated cover letter into a PDF attachment. Thanks to @emanuelet. (#3393) a3585a24e, 1f0844b39, bf27792ca
  • Recover and reorganize resume sections more safely. Restore hidden printable sections, sort dated entries on demand, and choose whether each section heading appears in the exported resume. (#2725, #3060) 5850230f8, b85d285b6, 368858a56
  • Choose how profile photos fit. Cover fills the frame, Contain keeps the whole image visible, and the crop dialog can now upload the original file without cropping. Upload limits are clearer and crop compression is preserved. (#3305) ab67831e4, fa4115072, 40c997a39
  • Resume previews expose a clearer outline to screen readers. Entries and nested roles use consistent heading levels, while paragraphs, lists, emphasis, and safe links retain their meaning in the accessible view. 9f0202eac, acd2a9cfe
  • Public sharing is more configurable. Hide the PDF download button per resume, count successful public downloads correctly, or serve one configured public resume directly from your self-hosted root URL. (#3360, #3366) 14c7c0651, cddb01f03, 744eaa902

Cover Letters & Applications

  • Added a persistent cover-letter library with ownership-safe saves, revision checks, search, import, duplication, PDF preview and download, resume-content copying, and application attachment snapshots. (#3255) 1d4194a20
  • Separated cover-letter templates from resume-based sender details. Refreshing sender information no longer changes the selected letter template, and the resume builder now links directly to its cover letter. df2e21ef9, a3784558b
  • Added one-click PDF generation and attachment for Application Copilot cover letters, with retryable progress states. Thanks to @emanuelet. bf27792ca
  • Added contact email and phone fields to applications. Thanks to @emanuelet. 1f0844b39
  • Added CSV export for the current filtered application list. (#3393) a3585a24e
  • Fixed saved application notes not appearing in the detail view. (#3391) 00a1357de
  • Fixed cover-letter copy failures so errors are reported without leaving stale content behind. Thanks to @emanuelet. ef47baf24
  • Fixed Application Copilot provider failures returning an internal-server error instead of a useful upstream-provider error. Thanks to @santhiprakash. (#3312) c4eb9d860

Resume Builder & Editing

  • Added a Compact resume-library view alongside Grid and List, with the selected view remembered for the browser session. (#3247) 1f308af72
  • Added local PDF resume import for users without an AI provider. Scanned PDFs without readable text now receive a clear error instead of entering a blocked import path. Thanks to @Syed-Ali-Abbas-Zaidi. (#3334) cce6d64af
  • Added hidden-section recovery so printable sections missing from the layout can be restored without disturbing authored placement. 5850230f8
  • Added one-shot ascending or descending date sorting for supported sections. Sorting is explicit and does not keep rearranging later edits. (#2725) b85d285b6
  • Added per-section heading visibility, allowing repeated or unnecessary headings to be hidden without hiding section content. (#3060) 368858a56
  • Added Inline and List presentation options for skill keywords, including controlled line breaks for long skill lists. Thanks to @diego-vega-centeno. (#2785) 8df1b2555, 870388192
  • Added whole-paragraph indentation and kept authored spaces intact through editing and export. (#3397) f468651c7, ea97de5ec
  • Preserved imported tables as editable rich-text tables instead of flattening or losing their structure. 999cd618c
  • Saved pending resume edits before navigation, preventing the last change from being lost when leaving the builder. a4bdc54b2
  • Removed empty custom sections and their now-unused pages after moving the final item elsewhere. (#3180) 97ccb4ba0
  • Preserved explicitly entered http:// links instead of silently rewriting them to HTTPS. (#2735) 2cbb0f63e
  • Kept the color picker preview synchronized with the stylesheet source. (#3291) 735e70092
  • Rendered resume thumbnails at their displayed pixel density for clearer cards without unnecessary work. 2e711fd14
  • Added clearer explanations for content that intentionally overflows an authored page and for unsupported CSS gradients. 0fbeeeb4c, [3883201](https://github.com/amruthpillai/reactive-r...
Read more

v5.2.9

Choose a tag to compare

@amruthpillai amruthpillai released this 27 Aug 01:43
c288675

Highlights

  • A free ATS checker that never uploads your resume. Drop a PDF on rxresu.me/ats-checker and it opens the file the way a parser would, pulls the text out, and reports what survived: whether the file carries real text or a picture of one, whether a multi-column layout scrambles the reading order, and whether your name, email, phone, links and dates come through intact. Everything runs in your browser — the file is never uploaded, nothing is stored, and no account is needed. Paste a job description and it will also tell you which of the posting's terms already appear in your resume. #3382
  • A score you can actually audit. The report gives one number from 0 to 100 across readability, layout, sections, contact details and dates — and shows its working. Every finding cites the text that triggered it and the page it sits on, and the report states how many checks ran and how many were honestly skipped rather than quietly counting them as passes. Employment gaps, writing style and length are reported as unscored tips; they never move the score. #3382
  • Resume analysis has been replaced by the ATS check. The old AI-scored analysis is gone, along with its stored results, its get_resume_analysis MCP tool, and the POST /ai/analyze-resume endpoint. What replaces it is deterministic and evidence-backed, with an optional AI second opinion on your writing that deliberately returns no score of its own. Self-hosters: read the upgrade note below. #3382
  • Bold text finally looks bold. Most resumes pair Regular with SemiBold, which rendered <strong> almost indistinguishably from body text. Bold now resolves to the font family's true Bold face, so emphasis reads as emphasis — existing resumes will export with visibly stronger bold text. Thanks to @santhiprakash. e065a1082

Resume Builder

  • The right sidebar's ATS Check section now runs live checks against your resume as you type — missing dates, malformed links, prose stranded in a narrow sidebar — before you export anything. #3382
  • Run deep check renders your current resume to a PDF in your browser and runs the full file check against those exact bytes, which is the same file a recruiter receives. #3382
  • Once a report exists, you can ask your own AI provider to review the writing — weak phrasing, bullets that describe duties rather than outcomes, and where a rewrite would land better. It sends only the extracted text, never the PDF. #3382
  • Section detection understands more of the headings people actually use, so conventional sections are recognized across a wider range of resumes. #3382
  • Toasts no longer slide underneath dialogs and sheets. #3382

AI Agent

  • Picking a provider when starting a thread now uses the same provider picker as the rest of the app, showing the label, provider and model consistently instead of one long concatenated line. #3382

PDF Export & Fonts

  • Bold text now uses the font family's true Bold face. Most resumes store their typography as Regular plus SemiBold, which rendered <strong> almost indistinguishably from body text on faces like Open Sans; bold now resolves to the family's 700 weight where it has one, and to its heaviest bold-class face where it does not. Existing resumes will export with visibly stronger bold text. Thanks to @santhiprakash. e065a1082
  • Long bullet-list lines no longer spill past the page margin. Thanks to @santhiprakash. a416d0111
  • Emoji render instead of dropping out as blank boxes. They are drawn as monochrome outlines, because the color emoji format cannot be embedded in a PDF, and the fallback font is only loaded when your resume actually contains emoji. Thanks to @santhiprakash. b47f80532
  • Vazirmatn is available in the font catalog again, so Persian and Arabic resumes that ask for it no longer fall back to a Latin serif and lose their glyphs on export. Thanks to @santhiprakash. 2761bd671

Self-Hosting & Maintenance

  • A migration drops the resume_analysis table. Any saved analyses are deleted when you upgrade; they have no equivalent in the new report, which is computed on demand rather than stored. No action is needed beyond the usual upgrade. #3382
  • Two API surfaces were removed. MCP clients calling get_resume_analysis and API clients calling POST /ai/analyze-resume will start failing; the replacement is POST /ai/ats-review, which reviews extracted resume text and returns qualitative feedback without a score. #3382
  • /ats-checker is listed in the sitemap and carries its own preview card, so the page is indexable and shares cleanly. #3382
  • Routine dependency updates across the workspace, including the AI SDK providers, Better Auth, TipTap, TanStack Query, Hono and the build toolchain. All patch and minor releases; no breaking upgrades.
  • Translations synced from Crowdin, with the new ATS checker strings covered across every supported language. 7fac6f29c

Full Changelog: v5.2.8...v5.2.9

v5.2.8

Choose a tag to compare

@amruthpillai amruthpillai released this 24 Aug 19:50
3c195dc

Highlights

  • The AI agent now asks before it edits your resume. Changes arrive as a proposal you approve or reject, so you see what the assistant wants to touch before anything is written. Once you trust a conversation, you can turn the review step off for that thread alone. The agent also survives a server restart mid-reply instead of leaving the thread stuck, and long conversations are trimmed as they grow so they keep working past the point they used to stall. c8081ac2f
  • Custom Styles can finally reach every item header. item-header used to match only some sections, and on stacked headers only the first row — certifications, awards, projects, publications and references quietly ignored it. It now covers the full header row of every section on every template, and a new item-header-row part lets you stop a long title from pushing its trailing date onto a line of its own. 4d53a6d1d, 00be67f70
  • Self-hosters using a custom OAuth provider must update one URL. The callback path changed from /api/auth/oauth2/callback/custom to /api/auth/callback/custom. Update the redirect URI registered with your identity provider before upgrading, or custom sign-in will fail. Installs that use OAUTH_DISCOVERY_URL need one additional SQL statement — both steps are written up in the SSO documentation. bdac806c7

AI Agent

  • Resume edits are gated behind an approval step, with a per-conversation setting to skip it once you are comfortable. Tool activity, token usage, and each step the assistant takes are now visible in the thread. c8081ac2f
  • Copying a conversation as JSON no longer embeds full resume documents, so the file stays small and your resume content does not travel with a transcript you might paste elsewhere. 8ce899a04
  • Resume analysis is told today's date, so it no longer misjudges how recent your most recent role is. Thanks to @emanuelet. #3353
  • Agent edits to a newly created resume no longer fail permanently with a version conflict. 39f36b4ac

Custom Styles

  • item-header now applies to the whole header row of every section on every template, instead of being silently dropped on sections whose header did not start with the one element it looked for. Rendered output is unchanged apart from the rows that should have been styled all along. 4d53a6d1d
  • Added template-part[name="item-header-row"], the split row holding a title and its trailing date. Set flex-wrap: nowrap on it to keep the date pinned right down a long list of certifications. 00be67f70
  • Under nowrap, long item titles no longer overlap the date beside them. ebcaa4729

Accounts & Sign-in

  • Disconnecting a linked provider works again. Sessions last a week, but the unlink endpoint rejected any session older than a day, so the button failed for nearly everyone. 39590eaff
  • Sign-in and account errors now show the actual reason instead of collapsing to a generic message. 39590eaff
  • Sign-in failures that happen before your provider can redirect you now land on a proper page explaining what went wrong, translated into every supported language, rather than a wall of JSON. bdac806c7, b960e3273

Self-Hosting & Maintenance

  • Upgraded to Better Auth 1.7. Beyond the callback URL change above, accounts are now identified by the issuer your provider advertises; the startup migration backfills existing accounts and refuses to proceed if the backfill would merge two accounts together. bdac806c7
  • The DeepSeek Harness plugin now lives in this repository and is published from it. It reads MCP tool names directly from the server, so a renamed tool breaks its prompt guide in the same pull request rather than days later through a scheduled job. 65618a82a
  • Routine dependency updates across the workspace, including the AI SDK providers, the PDF renderer, and the build toolchain. 8ffe50a58

Full Changelog: v5.2.7...v5.2.8

v5.2.7

Choose a tag to compare

@amruthpillai amruthpillai released this 17 Aug 21:21
5392728

Highlights

  • Custom Styles now compile in your browser. Semantic CSS is compiled and resolved locally for the editor, preview, public resumes, and exports, so diagnostics appear as you type instead of after a save and a server round-trip. Self-hosted servers no longer run a stylesheet preflight worker on every edit, and server-side PDF generation stays available as a fallback when a browser cannot render locally. 9509b5bc2
  • Shared resume links now unfurl with a preview card. Posting a public resume link to X, LinkedIn, Slack, or any chat app shows the name, headline, and template preview instead of a bare URL. The homepage's own card and structured data reach crawlers again — the static file handler had been answering the root request before the code that injects them could run. 9d0dc3670, 36c35c9bd
  • The AI agent asks instead of guessing. When a request is ambiguous, the assistant now offers a short set of choices inline in the chat rather than picking an interpretation and running with it. eedf2faf0

Sharing & Search

  • Twitter card tags are declared with the attribute X actually reads, so the title, description, and banner image appear in link previews again. 1e23a453a
  • Resume preview cards are built only for resumes that are public and not password-protected, and generating one no longer counts as a visit in your statistics. 9d0dc3670
  • Shortened the site description so it is no longer cut off in mobile search results. d0fa9ae8d

AI Agent

  • Added inline questions with selectable answers, along with a clearer empty state when a thread has no messages yet. eedf2faf0
  • The message box keeps focus after you send, so you can keep typing while a reply streams in instead of clicking back into it. 7c7dbaf21
  • Fixed a rendering bug that could duplicate or drop parts of a long, multi-step reply as it streamed. 762b999d1

Job Applications

  • Application auto-fill now works from a pasted job posting instead of a URL. Fetching arbitrary URLs from the server meant owning redirect, size, and private-address defences plus per-site scraping quirks, so the URL field has been removed — paste the posting text and the fields below it are filled in as before. Auto-fill is offered only when an AI provider is configured and tested, and only for a paste long enough to be a real posting. da2f1f824

Settings & Interface

  • Danger Zone is now Account, at /dashboard/settings/account, since the page covers account-level actions rather than only destructive ones. 7a14b0dfb
  • API keys created without an expiry date are listed again instead of disappearing from the key list. 8affc567e
  • Testing an AI provider is now time-bounded and reports why it failed, so a rejected key, a wrong model name, and an unreachable host are no longer indistinguishable from a connection that appears stuck. Thanks to @MrTig-afk. #3319
  • Rebuilt the notification toasts on the same component library as the rest of the interface, for consistent styling, stacking, and screen-reader behaviour. 170550ed5, 23ceee214, e2554c9be

Reliability, Self-Hosting & Maintenance

  • The server no longer carries the stylesheet control plane — apply state, preflight, revisions, render-data versions, and mismatch negotiation are gone, along with the unused resume columns that backed them. Expect lower memory and CPU use on instances where Custom Styles are in active use. 9509b5bc2
  • The conflict-marker pre-commit check now runs correctly on Windows. Thanks to @MrTig-afk. #3320
  • Test suites are isolated from one another and the OpenAPI specification is built once per suite, removing a class of order-dependent failures and timeouts that made local runs unreliable. e8508e6d0, 60d044076, bfdd29f94, ac062bbcb
  • Organized GitHub issue triage. #3325
  • Synced the latest Crowdin translation catalogs. #3327, #3328, #3330
  • Refreshed workspace dependencies and development tooling. 9dc2aade4

Full Changelog: v5.2.6...v5.2.7

v5.2.6

Choose a tag to compare

@amruthpillai amruthpillai released this 14 Aug 03:24
409d098

Highlights

  • Check your resume's ATS parseability as you edit. The builder now runs a deterministic, private check in your browser for contact details, dates, section structure, reading order, font size, line height, and margins. Findings explain what to change and can jump directly to the affected field. Thanks to @Syed-Ali-Abbas-Zaidi. #3314
  • Download cover letters through MCP. AI clients can now request a short-lived PDF download URL for either a resume or its visible cover letter. The selected document is cryptographically bound to the URL, so it cannot be switched after signing. Thanks to @ignaciocarre. #3304
  • Clearer JSON imports. Reactive Resume, Reactive Resume v4, and JSON Resume files are detected and routed to the correct parser, while malformed files now produce concise, readable validation messages instead of raw error dumps. Thanks to @MrTig-afk. #3296
  • Semantic CSS is now the standard Custom Styles experience. New resumes use it by default, the legacy feature flag and banner have been removed, and explicit activation no longer fails on an obsolete legacy-renderer parity check. 3589b534f, #3316

Resume Builder & PDF Exports

  • Fixed missing spaces around bold rich text in PDF exports without changing quoted HTML attributes. Thanks to @shehraan. #3273
  • Added Noto punctuation fallbacks so bullets and other punctuation render correctly when the selected Latin font does not contain those glyphs. Thanks to @santhiprakash. #3294
  • Stopped empty or whitespace-only skill proficiency values from producing phantom PDF text nodes in the Gengar template. Thanks to @santhiprakash. #3289
  • The icon picker once again lets you choose the empty option to remove an icon. Thanks to @garudaccs. #3298
  • Panning the builder canvas now releases focus from the active field, preventing accidental edits while navigating the preview. Thanks to @Syed-Ali-Abbas-Zaidi. #3303
  • The template gallery now uses fast, stable preview images instead of rendering every template live. #3302
  • Moving from the import dialog to AI provider settings now asks for confirmation before discarding the current import. Thanks to @Syed-Ali-Abbas-Zaidi. #3308

AI, Authentication & Integrations

  • Stopping or archiving an AI agent run now cancels it cleanly instead of surfacing an unhandled stream error that could terminate the server. 04100aa9e
  • Social sign-in can create an account directly when registration is enabled, removing the need to visit the registration screen first. 2d6ea9ce8
  • MCP OAuth JWT verification now uses the server's loopback JWKS endpoint, fixing verification on deployments whose public URL cannot be reached from inside the container. Thanks to @santhiprakash. #3297

Reliability, Accessibility & Self-Hosting

  • Semantic CSS PDF preflight now warms and reuses one worker instead of cold-starting a renderer for every edit, making style activation reliable on slower or CPU-constrained servers. e6a31aab9
  • Unhandled promise rejections are logged without taking down the entire Node.js process; uncaught exceptions continue to use Node's fail-fast behavior. efd950bd9
  • Restored consistent PDF line metrics after the React PDF dependency update, preserving the established browser-to-PDF layout. b4f245a38
  • Added an accessible label to the two-factor secret copy button, restored visible keyboard focus in the template gallery, and prevented duplicate API keys from double submission. ba1f46995
  • Production and development containers now use the official pnpm image, and the contributor guide documents the matching Docker and dotenvx workflows. 28d698635

Documentation & Localization

  • Corrected the development guide's environment, migration, and app-name instructions. Thanks to @santhiprakash. #3286, #3287
  • Clarified the Redis URLs and Compose startup order used by repository automation and development agents. Thanks to @santhiprakash. #3288
  • Synced the latest Crowdin translation catalogs. #3280, #3281, #3315
  • Refreshed workspace dependencies and development tooling.

Full Changelog: v5.2.5...v5.2.6

v5.2.5

Choose a tag to compare

@amruthpillai amruthpillai released this 30 Jul 10:59
ae8d48b

What's Changed

  • fix: clamp page margin values to [0, 100] to prevent crash on paste by @Emran-Y in #3277
  • feat: add semantic CSS stylesheets by @amruthpillai in #3274
  • Sync Translations from Crowdin by @github-actions[bot] in #3279
  • docs: align pnpm version with packageManager field by @santhiprakash in #3278

Full Changelog: v5.2.4...v5.2.5

v5.2.4

Choose a tag to compare

@amruthpillai amruthpillai released this 28 Jul 05:04
822d6f9

What's Changed

New Contributors

Full Changelog: v5.2.3...v5.2.4

v5.2.3

Choose a tag to compare

@amruthpillai amruthpillai released this 08 Jul 17:17
90105cb

Highlights

  • More AI provider choices. The AI settings page now supports Mistral AI, Cohere, xAI Grok, Groq, DeepSeek, Together.ai, Fireworks, Cerebras, and Perplexity, with provider defaults filled in for each. Ollama is now labeled as Ollama Cloud to make the hosted integration clearer.
  • Cleaner cover-letter exports. Cover-letter PDF, DOCX, and Markdown downloads now export the letter without resume header chrome by default, and PDF downloads include a new toggle for adding the resume header back when needed. 8570c1c70
  • More accurate public resume statistics. Rapid repeat views from the same client are now de-duplicated before incrementing public resume view counts. 97ab3c973

AI & Integrations

  • Added first-class AI SDK support for Mistral AI, Cohere, xAI, Groq, DeepSeek, Together.ai, Fireworks, Cerebras, and Perplexity across saved provider settings and AI service calls.
  • Made AI provider connection tests work with OpenAI-compatible models that do not support structured output, with a clearer error when a model returns too much text during the test.
  • Published Reactive Resume MCP registry metadata so MCP clients and directories can discover the hosted remote server. 73daf22b2

Resume Builder & Exports

  • Fixed cover-letter-only exports across PDF, DOCX, and Markdown so they no longer include resume contact details or a redundant cover-letter heading. 8570c1c70
  • Added an Include resume header option for cover-letter PDF downloads.
  • Improved the layout page header so the Full Width and Delete Page controls fit better in narrow builder sidebars.
  • Simplified the current-template card by removing its hover live preview; template switching still opens the full template gallery.

Reliability & Self-Hosting

  • Added report-only CSP, frame blocking, nosniff, and stricter referrer headers to web app shell responses, and tightened public upload headers to rely on same-site resource policy instead of an unconditional CORS header. 9bde7d544
  • Limited application bulk update and delete requests to 200 selected items per operation to avoid oversized bulk actions. c9b3fa5c1
  • Resume lock and password mutations now return NOT_FOUND when the resume is missing instead of silently succeeding. e47cf6e77
  • Reduced repeated work in the font picker by computing the font family options once per app process. 7e0657946
  • Refreshed workspace dependencies, including AI SDK provider packages, Lingui, oRPC, Hono, Tiptap, and test tooling.

Documentation & Localization

  • Tightened SEO titles and descriptions across the documentation site. 5270a2a9a
  • Corrected the README feature list to describe structured Style Rules instead of custom CSS. 66078609a
  • Synced Crowdin translation catalogs and added locale strings for the new AI providers and cover-letter export option. b87a9d828, 25021507a

Full Changelog: v5.2.2...v5.2.3

v5.2.2

Choose a tag to compare

@amruthpillai amruthpillai released this 07 Jul 15:05
46afc65

Highlights

  • Application Tracker REST and MCP parity. The job application pipeline is now available outside the web app through authenticated REST endpoints and MCP tools, so agents can create records, import rows, move stages, add notes, manage follow-ups, attach sent PDFs, and inspect pipeline health. 2dad27da5, bf2dc5bbd
  • Agent-only application tracking. MCP clients can now operate the Application Tracker end to end, including Application Copilot actions for job auto-fill, match scoring, tailored resume copies, cover letters, and recruiter follow-ups. bf2dc5bbd, 93abb1102
  • New application MCP guide. The docs now include a dedicated guide with practical prompts for using Reactive Resume MCP to manage applications from an AI client.

Application Tracker API

  • Added public REST coverage for listing, reading, creating, updating, importing, bulk-updating, bulk-deleting, tagging, and summarizing job applications. 2dad27da5
  • Added authenticated document endpoints for attaching and removing the resume or cover-letter PDF sent with an application. 2dad27da5, fb3f40244
  • Added REST endpoints for Application Copilot actions: job posting auto-fill, resume match scoring, tailored resume creation, and message drafting. 2dad27da5
  • Updated the OpenAPI reference so application endpoints, multipart document uploads, statistics, and tags are visible in the docs. fb3f40244

MCP & Agent Workflows

  • Added MCP tools for every Application Tracker workflow available in the app, including create, update, note, import, bulk action, archive, delete, document attachment, document removal, tag, statistics, and Application Copilot tools. bf2dc5bbd
  • Improved MCP tool metadata so clients can distinguish safe reads, mutating actions, destructive actions, and AI-powered workflows more reliably. 93abb1102
  • Updated the resume-builder skill instructions so agents are told that Reactive Resume MCP can also manage job applications, not only resumes. ac8734be3

Documentation & Reliability

  • Added a parity design note for the Application Tracker REST and MCP surfaces. 3868429ce
  • Documented application MCP automation in the MCP guide, including available tools, prompt examples, and troubleshooting for PDF attachments. ed83a3f5e
  • Preserved shared application documents when one application removes or replaces a file also referenced by another application. 3c9c5c8c2

Full Changelog: v5.2.1...v5.2.2

v5.2.1

Choose a tag to compare

@amruthpillai amruthpillai released this 05 Jul 21:53
c721fe5

Highlights

  • Application Tracking is here. Track every opportunity from saved role to offer with board, table, and insights views; search, filter, sort, tag, archive, and bulk-update applications without keeping a separate spreadsheet. 893df25af, e99c1665d, 00a972155
  • Application Copilot. Link a resume and job description to score your fit, create a tailored resume copy, draft a cover letter, or draft a recruiter follow-up from the application detail panel. 893df25af
  • Markdown export for resumes. Export a resume as clean Markdown for docs, websites, AI workflows, or any place where plain text is easier to reuse than a PDF. 20c803e93
  • A cleaner export flow. Resume and cover-letter downloads now live in a dedicated dialog, with separate PDF, DOCX, JSON, and print actions. 20c803e93

Application Tracking

  • Added the application data model, API routes, database schema, migrations, and service tests for storing applications, contacts, documents, follow-ups, timeline activity, tags, sources, salaries, and stages. 893df25af, 4ae6d8476
  • Added the dashboard Applications page with kanban board, table, insights dashboard, detail sheet, create/edit sheet, actions menu, file attachments, CSV import, and archived view. 893df25af, 00a972155
  • Added CSV import from uploads or pasted rows, with header recognition, row validation, stage parsing, tag splitting, and importer tests. 893df25af
  • Added application insights for pipeline counts, response rate, interviews, offers, funnel drop-off, weekly application volume, and source breakdowns. 893df25af, 00a972155
  • Added an end-to-end Application Tracker test covering the main application workflow. af751e4f

Import & Export

  • Added Markdown export support for resumes, powered by new shared resume-section and Markdown helpers so exports preserve the resume's core structure in a portable text format. 20c803e93
  • Split resume and cover-letter download behavior so each export path uses the right file and filename. 20c803e93
  • Updated PDF download URL handling and export tests for the new download dialog. 20c803e93

Documentation

  • Added guides for tracking job applications and importing applications from CSV, including screenshots and troubleshooting notes. 540796cd6
  • Refreshed the resume export and cover-letter guides to match the new download flow. be43b455

Reliability & Performance

  • Improved Application Tracker rendering, tile colors, file-attachment handling, and dashboard responsiveness. 00a972155
  • Cut builder per-keystroke render cost by tightening the builder header, dock, design panel, and section form updates. 5c75147d
  • Improved mobile layouts across the agent pages, builder header, dashboard resume list, and dashboard resume grid. 8416a921
  • Eliminated layout shift from the homepage hero video by reserving its rendered space. be1acbc2
  • Fixed server-side rendering for auth email templates by importing React where the template runtime needs it. af751e4f

Self-Hosting & Maintenance

  • Added the Better Auth two-factor schema migration. 9f9268f3
  • Added design-sync inputs and preview files for Reactive Resume UI components. a28e3baa, 6e7fc680
  • Synced translation catalogs for the new Application Tracking and export copy. e99c1665, 0d1bfd4e
  • Addressed React Doctor findings, cleaned up Knip issues, updated dependencies, and refreshed TypeScript native preview versions. 5a1cc658, 5c1845b1, 91b4c1e6

Full Changelog: v5.2.0...v5.2.1