Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A powerful, client-side bulk certificate generation tool built with Next.js. Generate hundreds of custom certificates with QR codes directly in your browser. No server uploads, total privacy.

License

Notifications You must be signed in to change notification settings

codeIntrovert/certify

Repository files navigation

Certify - Bulk Certificate Generator

A powerful, client-side bulk certificate generation tool built with Next.js. Generate hundreds of custom certificates with QR codes directly in your browser. No server uploads, total privacy.


πŸš€ Features

  • ⚑ Bulk Generation: Process hundreds of records from a single CSV file in seconds.
  • 🎨 Custom Designs: Upload any image as your certificate template.
  • πŸ”— Smart QR Codes: Automatically generate and embed QR codes for verification links.
  • πŸ–±οΈ Drag & Drop Editor: Intuitive UI to position text and QR codes on your template.
  • πŸ”’ Privacy First: All processing happens locally in your browser. Your data never leaves your device.
  • πŸ“¦ One-Click Zip: Download all generated certificates as a neatly organized ZIP archive.

πŸ› οΈ Tech Stack

🏁 Getting Started

Prerequisites

  • Node.js 18.17 or later
  • npm or yarn

Installation

  1. Clone the repository

    git clone https://github.com/yourusername/certify.git
    cd certify/web
  2. Install dependencies

    npm install
  3. Run the development server

    npm run dev
  4. Open the app Visit http://localhost:3000 in your browser.

πŸ“– Usage Guide

1. Upload Data

Prepare a CSV file with your participant details. The file should have headers (e.g., Name, Email, VerifyLink).

Tip: The system automatically detects columns named "Name" or "Link".

2. Map Fields

Select which columns from your CSV correspond to the Recipient Name and Verification Link. You can skip the link if you don't need QR codes.

3. Design Certificate

  • Upload your certificate template (PNG or JPG).
  • Use the controls to adjust the Position (X, Y), Font Size, and Color of the recipient's name.
  • Position and resize the QR Code.
  • The preview updates in real-time!

4. Generate & Download

Click Generate. The app will process each row in your CSV, create a PDF, and bundle everything into a ZIP file for download.

πŸ“‚ Project Structure

web/
β”œβ”€β”€ app/ # Next.js App Router
β”‚ β”œβ”€β”€ page.tsx # Main application page
β”‚ └── layout.tsx # Root layout
β”œβ”€β”€ components/ # UI Components
β”‚ β”œβ”€β”€ UploadStep.tsx # CSV file upload
β”‚ β”œβ”€β”€ MappingStep.tsx # Column mapping logic
β”‚ β”œβ”€β”€ DesignStep.tsx # Visual editor for certificate
β”‚ └── GenerateStep.tsx # PDF generation & Zip logic
β”œβ”€β”€ lib/ # Utilities (cn, etc.)
└── types/ # TypeScript interfaces

🀝 Contributing

Contributions are always welcome!

  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.

About

A powerful, client-side bulk certificate generation tool built with Next.js. Generate hundreds of custom certificates with QR codes directly in your browser. No server uploads, total privacy.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 98.9%
  • Other 1.1%

AltStyle γ«γ‚ˆγ£γ¦ε€‰ζ›γ•γ‚ŒγŸγƒšγƒΌγ‚Έ (->γ‚ͺγƒͺγ‚ΈγƒŠγƒ«) /