indigo-resume

byRamji Vaghani

1. System OverviewA SaaS platform that leverages AI to instantly tailor a user’s base resume. It operates via two primary data ingestion modes to output highly optimized, ATS-friendly resumes (PDF/DOCX) targeted at specific roles or industry standards.2. Core WorkflowsMode A: LinkedIn URL + Base ResumeUser uploads a base resume (PDF/DOCX) and pastes their LinkedIn profile URL.Backend triggers the Bright Data API to scrape the public LinkedIn profile for recent endorsements, skills, and updated job descriptions.The AI engine cross-references the base resume with the scraped LinkedIn data to fill gaps, update timelines, and modernize the phrasing.Mode B: Job Description (JD) + Base ResumeUser uploads a base resume and pastes the text/URL of a target Job Description.The AI engine extracts hard skills, soft skills, and core requirements from the JD.The AI rewrites the base resume’s bullet points to mirror the JD’s language, optimizing for Applicant Tracking Systems (ATS) without fabricating experience.3. Technical ArchitectureFrontend (User Interface): React.js or Next.js (for fast rendering and easy state management for document previews).Backend (API & Logic): Python (FastAPI) or Node.js (Express). Python is highly recommended for seamless AI and data processing integration.Database: PostgreSQL (relational data for users, transaction history) and AWS S3 / Google Cloud Storage (for securely storing encrypted resume files).External APIs:Bright Data: For bypassing anti-bot measures and scraping LinkedIn profiles.LLM Engine: OpenAI (GPT-4o) or Google Gemini for natural language processing and document restructuring.Document Generation: CloudConvert or standard Python libraries (python-docx, pdfkit) to render the final tailored resume.4. User Authentication & SecurityLogin Methods: Google OAuth, LinkedIn OAuth (reduces friction), and standard Email/Password.Session Management: JWT (JSON Web Tokens) for secure, stateless API communication.Data Privacy: Uploaded resumes must be automatically deleted from servers after 30 days. PII (Personally Identifiable Information) must be encrypted at rest.5. Pricing & Monetization (Stripe Integration)A hybrid credit-based and subscription model works best for this user behavior.TierPriceFeaturesTarget AudienceBasic (Free)$01 Tailored Resume via JD mode, Watermarked output.First-time users testing the AI quality.Pay-As-You-Go$3 / credit1 Credit = 1 Tailored Resume (JD or LinkedIn mode). No watermarks.Passive job seekers applying occasionally.Pro (Monthly)$15 / monthUnlimited JD tailoring, 20 LinkedIn scrapes/mo, Cover Letter generation.Active job seekers applying in high volume.6. The AI Data Pipeline (Step-by-Step)Parsing: Extract raw text from the uploaded PDF/DOCX using OCR or text-extraction libraries.Structuring: The LLM converts the unstructured resume text into a structured JSON format (Experience, Education, Skills).Analysis (The "Tailoring"): * If JD: LLM scores the JSON resume against the JD. It identifies missing keywords and rewrites experience bullets to highlight overlapping skills.If LinkedIn: LLM merges the JSON resume with Bright Data's JSON output, prioritizing the most recent or detailed descriptions.Formatting: The updated JSON is injected back into a standardized, ATS-compliant document template.Delivery: The system compiles the final file and provides a download link to the user interface.

Landing
Landing

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 7

System Requirements Document (SRD)

Project Name: indigo-resume

1. Introduction

The indigo-resume project is a SaaS platform designed to help job seekers create highly optimized, ATS-friendly resumes tailored to specific roles or industry standards. By leveraging AI and external integrations, the platform provides users with instant, professional-grade resume enhancements in real-time. This document outlines the system requirements for indigo-resume, ensuring that the platform meets the needs of its users while maintaining high performance and security standards.

This document has been updated to reflect the decision to process all operations synchronously, ensuring users receive tailored resumes within moments of submission.

Page 2 of 7

2. System Overview

The indigo-resume platform operates as a real-time resume tailoring service. It offers two primary workflows:

  1. Mode A: LinkedIn URL + Base Resume

    • Users upload a base resume (PDF/DOCX) and provide their LinkedIn profile URL.
    • The system scrapes the LinkedIn profile for recent endorsements, skills, and updated job descriptions using the Bright Data API.
    • The AI engine cross-references the base resume with the scraped data to fill gaps, update timelines, and modernize phrasing.
  2. Mode B: Job Description (JD) + Base Resume

    • Users upload a base resume and provide the text or URL of a target job description.
    • The AI engine extracts hard skills, soft skills, and core requirements from the JD.
    • The AI rewrites the base resume’s bullet points to mirror the JD’s language, optimizing for ATS without fabricating experience.

The platform processes all operations synchronously, ensuring users receive their tailored resumes in real-time.

Page 3 of 7

3. Functional Requirements

  • As a User, I should be able to upload my base resume in PDF or DOCX format.
  • As a User, I should be able to paste my LinkedIn profile URL for Mode A processing.
  • As a User, I should be able to paste a job description (text or URL) for Mode B processing.
  • As a User, I should receive a tailored, ATS-compliant resume within moments of submission.
  • As a User, I should be able to download the tailored resume in PDF or DOCX format.
  • As a User, I should be able to log in using Google OAuth, LinkedIn OAuth, or Email/Password.
  • As a User, I should be able to securely store my tailored resumes for up to 30 days.
  • As an Admin, I should be able to monitor system performance and user activity.

4. User Personas

1. Job Seeker

  • Description: Individuals actively or passively seeking employment.
  • Goals: Create tailored resumes quickly and efficiently to improve job application success rates.
  • Pain Points: Lack of time, difficulty tailoring resumes for ATS, and ensuring resumes align with job descriptions.

2. Admin

  • Description: Platform administrators responsible for managing system performance and user activity.
  • Goals: Ensure the platform runs smoothly, monitor user activity, and address any technical issues.
  • Pain Points: Maintaining system uptime, ensuring data security, and managing user feedback.
Page 4 of 7

5. Visuals Colors and Theme

The indigo-resume platform will feature a professional and modern design, reflecting its purpose as a career-enhancing tool. The color palette is designed to evoke trust, clarity, and sophistication.

  • Background: #F5F7FA (soft, neutral white for readability)
  • Surface: #FFFFFF (pure white for cards and modals)
  • Text: #2C3E50 (deep navy for high contrast and professionalism)
  • Accent: #4A90E2 (vivid indigo-blue for interactive elements like buttons and links)
  • Muted: #B0BEC5 (soft gray for secondary text and borders)

6. Signature Design Concept

The indigo-resume homepage will feature an interactive timeline interface that visually represents the user’s career journey.

Key Features:

  • Dynamic Career Timeline: Users can drag and drop milestones (e.g., job roles, skills, certifications) onto a timeline. Each milestone dynamically updates the resume preview in real-time.
  • 3D Animations: The timeline will have subtle 3D effects, with milestones "popping" as users interact with them.
  • Live Preview Panel: A split-screen design will show the timeline on one side and a live preview of the tailored resume on the other.
  • Micro-Interactions: Buttons and icons will have smooth hover effects, and transitions between sections will feature subtle fades and slides.
  • Color Shifts: The background will subtly shift between shades of indigo and white as users scroll, creating a calming and engaging experience.

This design ensures that users feel in control of their resume-building process while enjoying a visually stunning and intuitive interface.

Page 5 of 7

7. Non-Functional Requirements

  • Performance: The system must process resume tailoring requests within 5 seconds to ensure a seamless user experience.
  • Scalability: The platform must handle up to 10,000 concurrent users without performance degradation.
  • Security: All user data must be encrypted at rest and in transit. Uploaded resumes must be automatically deleted after 30 days.
  • Availability: The system must maintain 99.9% uptime.
  • Compliance: The platform must comply with GDPR and CCPA regulations.

8. Tech Stack

Frontend

  • React.js for a responsive and interactive user interface.

Backend

  • Python with FastAPI for robust AI and data processing.

Database

  • PostgreSQL for relational data (e.g., user accounts, transaction history).
  • AWS S3 for securely storing encrypted resume files.

AI Models

  • GPT 5.4 for user-friendly resume tailoring.
Page 6 of 7

External APIs

  • Bright Data for LinkedIn scraping.
  • CloudConvert for document generation.

Orchestration

  • Docker and docker-compose for local development.
  • Kubernetes for server-side orchestration.

9. Assumptions and Constraints

Assumptions

  • Users will primarily access the platform via desktop or laptop devices.
  • Users will have stable internet connections to ensure smooth operation.
  • The majority of users will upload resumes in English.

Constraints

  • Processing must occur synchronously, requiring optimized API and AI response times.
  • The platform must comply with data privacy regulations, limiting data retention to 30 days.
Page 7 of 7

10. Glossary

  • ATS (Applicant Tracking System): Software used by employers to filter and rank job applications.
  • PII (Personally Identifiable Information): Data that can identify an individual, such as name, email, or phone number.
  • Synchronous Processing: Operations that occur in real-time, providing immediate results to the user.
  • LLM (Large Language Model): AI models trained on vast amounts of text data to perform natural language processing tasks.

This concludes the updated System Requirements Document for indigo-resume.

Landing design preview
Login: Authenticate
Admin Dashboard: View System Stats
Admin Dashboard: Monitor User Activity
Users: Review User Accounts
Performance: View API Metrics
Logs: Inspect Error Logs