Skip to content

acm-projects/DocBranch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DocBranch 📄🌿

A version-control tool for documents where “the latest might not be the greatest.” DocBranch helps users manage and visualize variations of their resumes (or other documents) over time. By offering side-by-side comparisons, branching history, and AI-driven summaries, it allows users to efficiently reuse past work and adapt documents to new opportunities.

Summary ✍️

Many college students—especially in fields like Computer Science, Computer Engineering, and other broad STEM areas—must tailor dozens of resumes for internships and jobs.
The details matter: one small tweak to a bullet point could mean the difference between an interview and rejection.

Traditional file systems make it easy to lose track of changes, overwrite good versions, or waste time rewriting from scratch.
DocBranch solves this by providing a structured, visual version-control system for resumes and documents, making it easy to branch, merge, compare, and refine documents across many applications. Serving as a tool to augment the process of writing, tailoring, or editing a resume (or any document for that matter), DocBranch's intuitive user flow, integral tools, and additional A.I. insight keep you focused on the most important pieces of the puzzle.


MVP 🏆

  • Resume Cloud Upload
    Bulk upload all resume versions into secure cloud storage, accessible on any device.
  • Offline Access
    Local SQLite database stores and syncs file states for offline use.
  • File Relationship Tracker
    Parent/child file tracking with branching support (resume “lineages”).
    • Stretch: Support for multiple parents (merged documents).
  • Branching System
    Users can define and label branches either at a split (multiple children) or along any lineage.
  • Side-by-Side Resume Display
    Compare any two resumes across branches.
  • Parent-Child Resume Visualization
    View document history with AI-generated notes summarizing meaningful differences between versions.
  • Drag-and-Drop Interface
    Rearranging files directly updates their lineage relationships.
  • Resume Search
    Search by:
    • Date
    • Company/Position (via tags)
    • Branch name
    • Job description (AI returns most relevant resumes)

Stretch Goals 🌟

  • Built-in LaTeX Editor for advanced editing.
  • AI-Driven Resume Editing that generates resumes based on user instructions.
    • Support for LaTeX and Word documents.
  • Generalized Document Support beyond PDFs.
  • Resume Quality Scoring to help users prioritize strong drafts.

Milestones ☀️

Week 1-2: Setup & Onboarding 🌱
  • Align on project goals and refine the app vision.
  • Team Setup
    • Install VS Code, Electron, Node.js, React, TypeScript, Git, SQLite.
    • Tutorials on React + TypeScript for beginners.
    • Tutorials on Electron for the full team.
    • Git workflows: branching, pull requests.
  • Integration
    • Build a sample Electron + React project (tutorial app).
  • Frontend
    • Initial Figma designs.
  • Backend
    • Define SQL schema and file system access.
    • Practice CRUD operations with local database.
Week 3-4: Local Storage & UI Foundations ⚙️
  • Backend
    • Implement local storage and file selection.
    • Track relationships in SQL database.
    • Test CRUD functionality.
  • Frontend
    • Begin UI for browsing files.
    • Integrate React Flow for visualizing file relationships.
Weeks 4-6: Core Features 🔑
  • Side-by-side resume comparison and search.
  • Drag-and-drop interactions to rearrange branches (reflected in DB).
  • Begin bug testing.
  • Backend
    • Integrate OpenAI API for summarization, comparisons, and search.
    • Handle REST requests through Node.js.
Weeks 7-8: Cloud Integration ☁️
  • Add Supabase for cloud storage and syncing.
  • Integrate local + cloud systems.
  • Connect AI summarization with database and UI.
  • Improve drag-and-drop interactions and branch visuals.
  • Begin UI/UX polish.
Weeks 8-9: Stabilization & Testing 🧪
  • Finalize integrations (frontend ↔ backend ↔ databases).
  • Eliminate bugs and optimize performance.
  • Streamline user flow and UI responsiveness.
Week 10: Final Prep 🎬
  • Optimize for live demo.
  • Presentation prep (slides, script, demo).

Tech Stack 💻

Frontend

Backend


Resources 🔎

Frontend

Backend + Electron