Tech Verse Logo
Enable dark mode
Resume Canvas - Open Source Resume Builder

Resume Canvas - Open Source Resume Builder

Md. Mostafijur RahmanMMd. Mostafijur Rahman

Md. Mostafijur Rahman

2 min read

Overview

Resume Canvas is a modern, open-source resume builder designed to be simple, fast, and privacy-focused. Build your professional resume in minutes with a real-time preview and export it as a high-quality PDF.

Unlike other resume builders, Resume Canvas runs entirely in your browser. Your data never leaves your device unless you choose to share it. No sign-ups, no paywalls, no tracking.

✨ Features

  • 👀 Real-time Preview: See your changes instantly as you type.

  • 🔒 Privacy First: All data is stored locally in your browser (Local Storage).

  • 📄 PDF Export: High-quality, selectable, and ATS-friendly PDF generation using @react-pdf/renderer.

  • 🎨 Customization:

  • Multiple fonts (Google Fonts integration).

  • Custom theme colors.

  • Adjustable font sizes and document margins.

  • 🌗 Dark/Light Mode: Fully supported dark mode for late-night editing.

  • 📱 Responsive Design: Edit your resume on the go with a mobile-friendly interface.

  • 🧩 Drag & Drop: Reorder sections easily (Coming Soon).

📸 Screenshots

Light ModeDark Mode

Press enter or click to view image in full size

Press enter or click to view image in full size

🛠️ Tech Stack

🏁 Getting Started

Follow these steps to set up the project locally on your machine.

Prerequisites

  • Node.js 18+ installed

  • pnpm (recommended), npm, or yarn

Installation

Installation

  1. Clone the repository:

git clone https://github.com/kstmostofa/resume-canvas.git cd resume-canvas

2. Install dependencies:

pnpm install
# or
npm install

3. Run the development server:

pnpm dev # or npm run dev

Open your browser: Navigate to http://localhost:3000 to see the application running.

🤝 Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project

  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)

  3. Commit your Changes (git commit -m 'Add some AmazingFeature')

  4. Push to the Branch (git push origin feature/AmazingFeature)

  5. Open a Pull Request

📄 License

Distributed under the MIT License. See LICENSE for more information.

🙏 Acknowledgments

  • Shadcn/UI for the beautiful component library.

  • React PDF for the powerful PDF rendering engine.

  • Lucide for the clean icons.

Made with ❤️ by Md Mostafijur Rahman

Md. Mostafijur RahmanMMd. Mostafijur Rahman

WRITTEN BY

Md. Mostafijur Rahman

    Latest Posts

    View All

    Next.js Image Optimization: Sizes and Remote Patterns

    Next.js Image Optimization: Sizes and Remote Patterns

    Next.js Route Handlers vs Server Actions: The Real Boundary

    Next.js Route Handlers vs Server Actions: The Real Boundary

    Optimizing nextjs generatestaticparams at Scale

    Optimizing nextjs generatestaticparams at Scale

    Refactoring Laravel Fat Controllers Without Over-Engineering

    Refactoring Laravel Fat Controllers Without Over-Engineering

    Laravel Action Classes & DTOs: Clean Code vs Ceremony

    Laravel Action Classes & DTOs: Clean Code vs Ceremony

    Safe, resumable data backfills for Laravel

    Safe, resumable data backfills for Laravel

    Query Builder vs Eloquent: Real Cost in Laravel

    Query Builder vs Eloquent: Real Cost in Laravel

    Laravel Signed URLs and One-Time Download Links

    Laravel Signed URLs and One-Time Download Links

    Laravel Timezone Handling: UTC, Users, and DST Bugs

    Laravel Timezone Handling: UTC, Users, and DST Bugs

    Laravel Login Throttle: Rate Limiting and Credential Defense

    Laravel Login Throttle: Rate Limiting and Credential Defense