Zenova - Training Certificate Renewal System icon

Zenova - Training Certificate Renewal System

Hot or Not
Zenova - Training Certificate Renewal System

Description

Zenova – Training Certificate & Renewal Management System

Zenova is a web-based training and certificate management application built with Next.js and Supabase.

Designed for training providers, safety training organizations and businesses, Zenova centralizes clients, learners, training sessions, certificate records and certification renewal workflows.

The Problem

Spreadsheets and disconnected documents make it harder to track multiple clients, employee qualifications and renewal deadlines as an organization grows.

The Solution

Zenova connects training records, fixed-template PDF certificates, expiry tracking and renewal opportunities in one customizable workspace. Manage attendance/results, issue eligible certificates, and follow renewals through contact, booking and completion. QR links provide public certificate status verification.

Who Can Use Zenova?

Training centers, health and safety training providers, HR departments, businesses managing employee qualifications, and developers building specialized training systems.

Technology Stack

Next.js 16.3.7, React 19.3.0, TypeScript, Supabase Auth, PostgreSQL and Tailwind CSS. The source also includes pdf-lib, QR generation, CSV tooling, Zod validation and automated tests.

Customization

The included source can be adapted to your branding and training workflows. Buyers provide their own hosting, database and email services.

What Is Included?

Application source, package.json and npm lockfile, configuration files, 10 SQL migrations, placeholder-only .env.example, bundled PDF font and third-party notices, installation/deployment/usage/security/demo documentation and automated tests.

Scope

Certificates use a fixed layout. Reports export CSV records. Invitations are shared manually. Automatic certificate reminder emails, PDF reports, a visual certificate designer, payments and LMS features are not included. Renewal reconciliation can run manually; scheduling the optional protected worker requires operator configuration.

Live Demo

https://zenovaapp.vercel.app/l...

A designated limited-access account is required to explore authenticated workflows.

Features

Centralized training operations dashboard

Client companies and learner records

Courses, trainers, training sessions and attendance/results

Fixed-template PDF certificate generation and downloads

QR links for public certificate status verification

Certificate expiry tracking, correction and revocation

Renewal contact, booking and completion workflows

CSV imports with mapping, validation and preview

CSV exports for supported records

Company-scoped client portal

Supabase email/password authentication

Role permissions and PostgreSQL row-level policies

Activity history for supported changes

Responsive interface and customizable TypeScript source

Next.js App Router architecture

Requirements

Node.js 22 or newer (checked with Node.js 24.16.0)

npm and the included package-lock.json

A dedicated Supabase project with PostgreSQL and email/password Auth

All 10 included SQL migrations applied in filename order

NEXT_PUBLIC_APP_URL, NEXT_PUBLIC_SUPABASE_URL and NEXT_PUBLIC_SUPABASE_ANON_KEY

A Next.js-compatible SSR host or TLS reverse proxy

A modern web browser and basic development knowledge

Hosting, database and Auth email delivery configured by the operator

Server-only service-role key and CRON_SECRET only if using the optional renewal worker

Instructions

Installation

1. Extract the package and open the Zenova project folder.

2. Install Node.js 22+ and run npm ci.

3. Create a dedicated Supabase project and apply supabase/migrations SQL files 001–010 in filename order.

4. Copy .env.example to .env.local. Set your Supabase URL/publishable key and NEXT_PUBLIC_APP_URL=http://127.0.0.1:3000. Keep service-role keys private.

5. Enable email/password Auth in Supabase. Configure Site URL, the exact /auth/callback allowlist and Auth email delivery.

6. Run npm run dev. Open http://127.0.0.1:3000, create/confirm an account and onboard your organization.

Basic Usage

1. Create client companies, learners, courses and training sessions.

2. Enroll attendees, record attendance/results and complete the session.

3. Issue eligible certificates and download PDFs. Test the QR verification link.

4. Review expiry dates and use Check expiries now. Contact/book renewal opportunities and fulfill them through qualifying new sessions/certificates.

5. Use supported CSV imports/exports and manually shared private portal invitations as needed.

Deployment

Use a Next.js-compatible SSR platform. Configure your canonical HTTPS origin, Supabase public configuration and Auth callbacks. Run npm run check and npm run build. npm start binds to loopback by default; self-hosting needs TLS/reverse proxy. Verify login, access boundaries, PDFs/QRs and backups on the actual host. No reminder email or recurring scheduler is enabled automatically.

See docs/INSTALLATION.md, DEPLOYMENT.md, USAGE.md, DEMO.md, SECURITY.md and LIMITATIONS.md for detailed setup and known limits.

Authorkinnng
CategoryScripts & Code / ReactJS
Price$15
Extended License$45
First ReleaseOct 13, 2026
Last UpdateOct 13, 2026
Files included.css, .ts, .tsx, .json, .svg, .sql, .md, package.json
Software versionNode.js 24
Html/css frameworkTailwind CSS
Software frameworkReact, Next.js
Javascript frameworkReact, Next.js
Programming languageJavaScript, TypeScript

External listing. code.market does not sell this product and does not process payment for it. Pricing, payment, delivery, licensing, refunds, and support are handled by the third-party merchant on its own website. We may earn an affiliate commission from a referral. Details.

Products of the Week.

Submit