# Reactive Resume > A one-of-a-kind resume builder that keeps your privacy in mind. Completely secure, customizable, portable, open-source and free forever. Try it out today! ## Docs - [Auto-tailor resume for a job posting](https://docs.rxresu.me/api-reference/ai/auto-tailor-resume-for-a-job-posting.md): Uses AI to automatically tailor a resume for a specific job posting. Rewrites the summary, adjusts experience descriptions, and curates skills for ATS optimization. Returns structured modifications as a simplified output object. Requires authentication and AI credentials. - [Chat with AI to modify resume](https://docs.rxresu.me/api-reference/ai/chat-with-ai-to-modify-resume.md): Streams a chat response from the configured AI provider. The LLM can call the patch_resume tool to generate JSON Patch operations that modify the resume. Requires authentication and AI provider credentials. - [Parse a DOCX file into resume data](https://docs.rxresu.me/api-reference/ai/parse-a-docx-file-into-resume-data.md): Extracts structured resume data from a DOCX or DOC file using the specified AI provider. The file should be sent as a base64-encoded string along with AI provider credentials and the document's media type. Returns a complete ResumeData object. Requires authentication. - [Parse a PDF file into resume data](https://docs.rxresu.me/api-reference/ai/parse-a-pdf-file-into-resume-data.md): Extracts structured resume data from a PDF file using the specified AI provider. The file should be sent as a base64-encoded string along with AI provider credentials. Returns a complete ResumeData object. Requires authentication. - [Test AI provider connection](https://docs.rxresu.me/api-reference/ai/test-ai-provider-connection.md): Validates the connection to an AI provider by sending a simple test prompt. Requires the provider type, model name, API key, and an optional base URL. Supported providers: OpenAI, Anthropic, Google Gemini, Ollama, and Vercel AI Gateway. Requires authentication. - [Delete user account](https://docs.rxresu.me/api-reference/authentication/delete-user-account.md): Permanently deletes the authenticated user's account, including all resumes, uploaded files (profile pictures, screenshots, PDFs), and associated data. This action is irreversible. Requires authentication. - [List authentication providers](https://docs.rxresu.me/api-reference/authentication/list-authentication-providers.md): Returns a list of all authentication providers enabled on this Reactive Resume instance, along with their display names. Possible providers include password-based credentials, Google, GitHub, and custom OAuth. No authentication required. - [Get feature flags](https://docs.rxresu.me/api-reference/feature-flags/get-feature-flags.md): Returns the current feature flags for this Reactive Resume instance. Feature flags control instance-wide settings such as whether new user signups or email-based authentication are disabled. No authentication required. - [Search for job listings](https://docs.rxresu.me/api-reference/jobs/search-for-job-listings.md): Searches the JSearch API for job listings matching the given parameters. Results are deduplicated and optionally filtered. Requires authentication. - [Test RapidAPI JSearch connection](https://docs.rxresu.me/api-reference/jobs/test-rapidapi-jsearch-connection.md): Validates the RapidAPI key by performing a minimal test search against the JSearch API. Requires authentication. - [Get GitHub star count](https://docs.rxresu.me/api-reference/platform-statistics/get-github-star-count.md): Returns the number of GitHub stars for the Reactive Resume repository. The count is cached for up to 6 hours and falls back to a last-known value if the GitHub API is unavailable. No authentication required. - [Get total number of resumes](https://docs.rxresu.me/api-reference/platform-statistics/get-total-number-of-resumes.md): Returns the total number of resumes created on this Reactive Resume instance. The count is cached for up to 6 hours for performance. No authentication required. - [Get total number of users](https://docs.rxresu.me/api-reference/platform-statistics/get-total-number-of-users.md): Returns the total number of registered users on this Reactive Resume instance. The count is cached for up to 6 hours for performance. No authentication required. - [Export resume as PDF](https://docs.rxresu.me/api-reference/resume-export/export-resume-as-pdf.md): Generates a PDF from the specified resume and uploads it to storage. Returns a URL to download the generated PDF file. If the request is made by an unauthenticated user (e.g. via a public share link), the resume's download count is incremented. Authentication is optional. - [Get resume screenshot](https://docs.rxresu.me/api-reference/resume-export/get-resume-screenshot.md): Returns a URL to a screenshot image of the first page of the specified resume. Screenshots are cached for up to 6 hours and regenerated automatically when the resume is updated. Returns null if the screenshot cannot be generated. Requires authentication. - [Get public resume by username and slug](https://docs.rxresu.me/api-reference/resume-sharing/get-public-resume-by-username-and-slug.md): Returns a publicly shared resume identified by the owner's username and the resume's slug. If the resume is password-protected and the viewer has not yet verified the password, a 401 error with code NEED_PASSWORD is returned. No authentication required for public resumes; if authenticated as the own… - [Remove resume password](https://docs.rxresu.me/api-reference/resume-sharing/remove-resume-password.md): Removes password protection from a resume. After removal, the resume (if public) can be viewed without entering a password. Requires authentication. - [Set resume password](https://docs.rxresu.me/api-reference/resume-sharing/set-resume-password.md): Sets or updates a password on a resume. When a password is set, viewers of the public resume must enter the password before the resume data is revealed. The password must be between 6 and 64 characters. Requires authentication. - [Verify resume password](https://docs.rxresu.me/api-reference/resume-sharing/verify-resume-password.md): Verifies a password for a password-protected public resume. On success, the viewer is granted access to view the resume data for the duration of their session. No authentication required. - [Get resume statistics](https://docs.rxresu.me/api-reference/resume-statistics/get-resume-statistics.md): Returns view and download statistics for the specified resume, including total counts and the timestamps of the last view and download. Requires authentication. - [Create a new resume](https://docs.rxresu.me/api-reference/resumes/create-a-new-resume.md): Creates a new resume with the given name, slug, and tags. Optionally initializes the resume with sample data by setting withSampleData to true. The slug must be unique across the user's resumes. Returns the ID of the newly created resume. Requires authentication. - [Delete a resume](https://docs.rxresu.me/api-reference/resumes/delete-a-resume.md): Permanently deletes a resume and its associated files (screenshots, PDFs) from storage. Locked resumes cannot be deleted; unlock the resume first. Requires authentication. - [Duplicate a resume](https://docs.rxresu.me/api-reference/resumes/duplicate-a-resume.md): Creates a copy of an existing resume with the same data. Optionally override the name, slug, and tags for the duplicate. If not provided, the original resume's name, slug, and tags are used. Returns the ID of the duplicated resume. Requires authentication. - [Get resume by ID](https://docs.rxresu.me/api-reference/resumes/get-resume-by-id.md): Returns a single resume with its full data, identified by its unique ID. Only resumes belonging to the authenticated user can be retrieved. Requires authentication. - [Import a resume](https://docs.rxresu.me/api-reference/resumes/import-a-resume.md): Creates a new resume from an existing ResumeData object (e.g. from a previously exported JSON file). A random name and slug are generated automatically. Returns the ID of the imported resume. Requires authentication. - [List all resume tags](https://docs.rxresu.me/api-reference/resumes/list-all-resume-tags.md): Returns a sorted list of all unique tags across the authenticated user's resumes. Useful for populating tag filters in the dashboard. Requires authentication. - [List all resumes](https://docs.rxresu.me/api-reference/resumes/list-all-resumes.md): Returns a list of all resumes belonging to the authenticated user. Results can be filtered by tags and sorted by last updated date, creation date, or name. Resume data is not included in the response for performance; use the get endpoint to fetch full resume data. Requires authentication. - [Patch resume data](https://docs.rxresu.me/api-reference/resumes/patch-resume-data.md): Applies JSON Patch (RFC 6902) operations to partially update a resume's data. This allows small, targeted changes (e.g. updating a single field) without sending the entire resume object. Locked resumes cannot be patched. Requires authentication. - [Set resume lock status](https://docs.rxresu.me/api-reference/resumes/set-resume-lock-status.md): Toggles the locked status of a resume. When locked, a resume cannot be updated, patched, or deleted. Useful for protecting finalized resumes from accidental edits. Requires authentication. - [Update a resume](https://docs.rxresu.me/api-reference/resumes/update-a-resume.md): Updates one or more fields of a resume identified by its ID. All fields are optional; only provided fields will be updated. Locked resumes cannot be updated. Requires authentication. - [Changelog](https://docs.rxresu.me/changelog/index.md): List of all notable changes and updates to Reactive Resume - [Spotlight](https://docs.rxresu.me/community/spotlight.md): A showcase of articles, videos, and social media posts from the Reactive Resume community - [Project Architecture](https://docs.rxresu.me/contributing/architecture.md): Understand the architecture and codebase structure of Reactive Resume - [Development Setup](https://docs.rxresu.me/contributing/development.md): Set up a local development environment for Reactive Resume - [Contributing Translations](https://docs.rxresu.me/contributing/translations.md): Help translate Reactive Resume into your language using Crowdin - [Introduction](https://docs.rxresu.me/getting-started/index.md): Welcome to the documentation for Reactive Resume, a free and open-source resume builder that simplifies the process of creating, updating, and sharing your resume. - [Quickstart](https://docs.rxresu.me/getting-started/quickstart.md): Get started with Reactive Resume in minutes — use our hosted version or deploy your own instance - [Accessing the Previous Version](https://docs.rxresu.me/guides/accessing-the-previous-version.md): Learn how to access the previous version (v4) of Reactive Resume if you need to retrieve old resumes or prefer the classic experience. - [Adding a cover letter](https://docs.rxresu.me/guides/adding-a-cover-letter.md): Learn how to create a cover letter as a custom section in Reactive Resume, format it professionally, and place it on a separate page. - [Checking Service Status](https://docs.rxresu.me/guides/checking-service-status.md): Learn how to check the status of Reactive Resume's servers and what to do if the service is experiencing issues - [Choosing a template](https://docs.rxresu.me/guides/choosing-a-template.md): Learn how to choose the perfect template for your resume and explore all available template designs in Reactive Resume. - [Creating an account](https://docs.rxresu.me/guides/creating-an-account.md): Learn how to create an account on Reactive Resume and get started on building your resume - [Creating your first resume](https://docs.rxresu.me/guides/creating-your-first-resume.md): Learn how to create your first resume in Reactive Resume, set a name and slug, and open it in the builder. - [Deleting your account](https://docs.rxresu.me/guides/deleting-your-account.md): Learn how to permanently delete your Reactive Resume account and all associated data - [Exporting your resume](https://docs.rxresu.me/guides/exporting-your-resume.md): Learn how to export your resume as a PDF or JSON file, and discover how JSON exports can be used with AI assistants like ChatGPT or Claude. - [Fitting content on a page](https://docs.rxresu.me/guides/fitting-content-on-a-page.md): Learn how to reorganize and format your resume content to fit within a single page, whether you're using A4 or Letter format. - [JSON Resume Schema](https://docs.rxresu.me/guides/json-resume-schema.md): Learn about the Reactive Resume JSON Schema, available at /schema.json, and how it aims to become the gold standard for portable resume data. - [Linking social accounts](https://docs.rxresu.me/guides/linking-social-accounts.md): Learn how to connect or disconnect social sign-in providers like Google and GitHub from your account - [Moving items between sections](https://docs.rxresu.me/guides/moving-items-between-sections.md): Learn how to move resume items from one section to another, or to a different page, to better organize your content and split lengthy sections across multiple pages. - [Selecting the right page format](https://docs.rxresu.me/guides/selecting-page-format.md): Learn about the three page format options in Reactive Resume—A4, Letter, and Free-Form—and choose the best one for your needs. - [Setting up passkeys](https://docs.rxresu.me/guides/setting-up-passkeys.md): Learn how to register passkeys (WebAuthn) to sign in securely using biometrics or your device PIN - [Setting up two-factor authentication](https://docs.rxresu.me/guides/setting-up-two-factor-authentication.md): Learn how to enable two-factor authentication (2FA) to add an extra layer of security to your Reactive Resume account - [Sharing your resume publicly](https://docs.rxresu.me/guides/sharing-your-resume-publicly.md): Learn how to share your resume via a public URL, track views and downloads, and optionally protect your resume with a password. - [Updating your profile](https://docs.rxresu.me/guides/updating-your-profile.md): Learn how to update your profile information including your name, username, and email address in Reactive Resume - [Using Artificial Intelligence](https://docs.rxresu.me/guides/using-ai.md): Learn how to configure an AI provider and API key for AI-assisted features in Reactive Resume - [Using Custom CSS](https://docs.rxresu.me/guides/using-custom-css.md): Learn how to use the Custom CSS panel in the resume builder, which selectors to target, and copy‑paste examples for common tweaks. - [Using Private Notes](https://docs.rxresu.me/guides/using-private-notes.md): Learn how to use the Private Notes section in Reactive Resume to keep track of job applications, company details, and other personal reminders for each resume. - [Using the API](https://docs.rxresu.me/guides/using-the-api.md): Learn how to create API keys and authenticate requests to the Reactive Resume API - [Using the MCP Server](https://docs.rxresu.me/guides/using-the-mcp-server.md): Connect Reactive Resume to AI tools like Claude Desktop, Cursor, and Codex using the Model Context Protocol - [Using the Patch API](https://docs.rxresu.me/guides/using-the-patch-api.md): Learn how to partially update your resume using JSON Patch (RFC 6902) operations - [License](https://docs.rxresu.me/legal/license.md): Reactive Resume is open-source software licensed under MIT. - [Privacy Policy](https://docs.rxresu.me/legal/privacy-policy.md): How Reactive Resume handles personal data, cookies, uploads, and printing. - [Terms of Service](https://docs.rxresu.me/legal/terms-of-service.md): Terms and conditions for using Reactive Resume, including accounts, public resumes, uploads, and exports. - [Self-Hosting with Docker](https://docs.rxresu.me/self-hosting/docker.md): A comprehensive guide to self-host Reactive Resume with Docker (Postgres + Printer), including a detailed environment variable reference and troubleshooting tips. - [Docker Compose Examples](https://docs.rxresu.me/self-hosting/examples.md): A collection of Docker Compose examples for different deployment scenarios. If you have a different setup that works for you, please share it by opening a pull request on GitHub. - [Migrating from v4 to v5](https://docs.rxresu.me/self-hosting/migration.md): A step-by-step guide to migrate your Reactive Resume instance from v4 to v5, including manual and automated migration options. - [Single Sign-On (SSO)](https://docs.rxresu.me/self-hosting/sso.md): A guide to setting up custom OAuth providers like Authentik, Authelia, Keycloak, or any OIDC-compliant identity provider for Single Sign-On (SSO) in your self-hosted instance. ## OpenAPI Specs - [spec](https://docs.rxresu.me/spec.json) - [openapi](https://docs.rxresu.me/api-reference/openapi.json) ## Optional - [Reactive Resume](https://rxresu.me) - [Source Code](https://github.com/amruthpillai/reactive-resume)