Recred

Recred is a CLI tool written in Rust for generating certificates in bulk from PDF templates. It reads participant data from a CSV file and automatically places the fields like name, achievement, etc at configurable positions on your certificate template. Text color, font size, and output filenames can be customized per field or globally.

GitHub


Background

This project is a remake of AutoCred a similar Python tool. AutoCred became unusable due to a critical dependency crash. Recred brings the same functionality to Rust, with even more features like a json file for configuring the certificate generation.


Features


Installation

If you have cargo installed on your system, simply run:

bash
cargo install recred

Otherwise, follow the next steps depending on your OS.

Linux

bash
curl -fsSL https://raw.githubusercontent.com/aether-flux/recred/main/scripts/linux/install.sh | bash

Windows

bash
curl -L https://raw.githubusercontent.com/aether-flux/recred/main/scripts/windows/install.bat -o install.bat && install.bat

Configuration

Recred uses a JSON config file to define:

Example config.json:

json
{
  "template": "template.pdf",
  "font_size": 30,
  "text_color": [0, 0, 0],
  "output_name": "{name}.pdf",
  "fields": {
    "name": { "x": 220.0, "y": 350.0, "color": [34, 139, 34] },
    "achievement": { "x": 220.0, "y": 300.0, "size": 20 }
  }
}

Note: There is no restriction on the name of the JSON config file, as it needs to be specified manually when running the CLI. Details on the CLI usage are provided below.


Usage

bash
recred generate --config config.json --data data.csv

Communicate

Find me on
Mail me atamartya96@proton.me
Pokeball vector art