Because spending hours formatting a resume is for people who don't know better.
ResumeFlow is a modern, web-based resume editor that combines the power of rich text editing with LaTeX compilation to create professional, beautifully formatted resumes. Built with Next.js for the frontend and FastAPI for the backend, it offers a seamless editing experience with real-time PDF generation.
- Rich Text Editor: Intuitive WYSIWYG editor with support for formatting, links, and custom styling
- LaTeX Integration: Direct LaTeX editing for advanced formatting and mathematical expressions
- Real-time PDF Generation: Compile your resume to PDF instantly with professional LaTeX templates
- Section Management: Organize your resume with collapsible sections and items
- Bullet Point Editor: Rich text editing for bullet points with formatting options
- Authentication: Secure login system with GitHub OAuth integration
- Docker Support: Easy deployment with Docker and Docker Compose
- Node.js 20+
- Python 3.8+
- Docker (optional, for containerized deployment)
- LaTeX distribution (for PDF compilation)
-
Clone the repository
git clone https://github.com/oktagonia/ResumeFlow.git cd ResumeFlow -
Set up the backend
cd backend pip install -r requirements.txt -
Set up the frontend
cd ../resume-editor npm install # or pnpm install
-
Configure environment variables
Create a
.envfile in theresume-editordirectory:NEXTAUTH_URL=http://localhost:3000 NEXT_PUBLIC_API_URL=http://localhost:8000 AUTH_SECRET=your-secret-key-here AUTH_GITHUB_ID=your-github-oauth-id AUTH_GITHUB_SECRET=your-github-oauth-secret
-
Start the development servers
Backend (from the
backenddirectory):uvicorn main:app --reload --host 0.0.0.0 --port 8000
Frontend (from the
resume-editordirectory):npm run dev # or pnpm dev -
Open your browser
Navigate to http://localhost:3000 to start using ResumeFlow.
-
Build and run with Docker Compose
docker-compose up --build
-
Or build individual images
# Build frontend cd resume-editor docker build -t resume-flow/frontend:latest . # Build backend cd ../backend docker build -t resume-flow/backend:latest .
-
Create a new resume section
- Click the "Add Section" button to create a new resume section
- Choose between regular text sections or LaTeX sections
-
Add content to sections
- Use the rich text editor for formatted content
- Add items within sections for structured information
- Include bullet points with rich text formatting
-
Edit LaTeX sections
- Switch to LaTeX mode for advanced formatting
- Write LaTeX code directly for mathematical expressions or custom styling
-
Generate PDF
- Click the "Generate PDF" button to compile your resume
- Download the professionally formatted PDF
- Section Management: Collapse/expand sections, toggle visibility
- Item Organization: Add multiple items within sections with organization details
- Bullet Point Editing: Rich text editing for bullet points with formatting
- Real-time Preview: See changes as you type
GET /sections- Get all resume sectionsPOST /sections/add-section- Add a new text sectionPOST /sections/add-latex- Add a new LaTeX sectionPATCH /sections/{id}/title- Update section titleDELETE /sections/{id}- Delete a sectionPOST /sections/{id}/items- Add an item to a sectionPOST /pdf- Generate PDF from resume data
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Run tests (if available)
npm run test # or pnpm test
- Commit your changes
git commit -m 'Add some amazing feature' - Push to the branch
git push origin feature/amazing-feature
- Open a Pull Request
- Follow the existing code style
- Add tests for new features
- Update documentation as needed
- Ensure all tests pass before submitting
This project is actively maintained and accepting contributions. We're working on:
- Enhanced LaTeX templates
- More export formats (DOCX, HTML)
- Template library
- Collaborative editing features
- Mobile app version
If you encounter any issues or have questions:
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Special thanks to:
- Next.js for the amazing React framework
- FastAPI for the high-performance API framework
- TipTap for the rich text editor
- LaTeX for professional document formatting
This project is licensed under the MIT License - see the LICENSE file for details.
Q: Do I need to know LaTeX to use ResumeFlow? A: No! The rich text editor handles most formatting needs. LaTeX sections are optional for advanced users.
Q: Can I export my resume in other formats? A: Currently, PDF export is supported. We're working on DOCX and HTML export options.
Q: Is my data stored securely? A: ResumeFlow runs locally by default, so your data stays on your machine. For cloud deployments, ensure proper security measures.
Q: Can I use custom LaTeX templates? A: Yes! You can modify the LaTeX template in the backend to match your preferred style.