Archit OS
~/projects/genifysuite/README.md
← all projects
Full-stack AI Tools·v2.0

GenifySuite

A full-stack rebuild of a student HTML toolkit into a product with accounts, billing and AI.

Role
Full-Stack Engineer
Timeline
Aug 2024 – v2
Team
Solo
Status
v2.0
GenifySuite screenshot
17
tools
7
AI tools
AES-256-GCM
key encryption
⌘K
command palette

The problem

GenifySuite began as a learning-project toolkit in plain HTML, CSS and JavaScript: card validation, fake test data and small developer utilities, with no accounts, nowhere to save work and no backend. Version 2 turns it into a real product.

What it does

Ten classic utilities

Card validator and test-card generator, fake profiles, lorem ipsum, and JSON, password, UUID, colour, QR and IP lookup tools, all usable without an account.

Seven AI tools and an agent

Regex generator, commit message writer, schema-to-fake-data, API mock generator, cron explainer and more, plus a tool-calling agent that streams its replies.

Real accounts

Auth.js email and password with optional Google and GitHub sign-in, email verification and password reset, per-tool history and saved workflows.

BYOK and billing

User API keys encrypted with AES-256-GCM, Stripe billing tiers and database-backed rate limits.

⌘K palette and a live landing page

Jump to any tool from the keyboard, and try a working password generator right on the front page.

How it flows

  1. Next.js App Router
  2. Auth.js session
  3. Prisma + Postgres
  4. AI provider (BYOK)
  5. Streamed response
  6. Saved history

Problems solved

Rebuilding responsibly

ProblemThe original had a second generator that accepted any BIN and produced full card numbers with CVV, expiry and a fake balance, the shape of card-fraud tooling.

SolutionIt was deliberately not carried forward. The new generator only produces Luhn-valid numbers from the generic test prefixes card networks publish for their own docs.

From static pages to a backend

ProblemNo accounts, no persistence and no way to protect paid features.

SolutionPrisma and Postgres for data, Auth.js for sessions, and Stripe plus rate limits to protect usage.

Handling users’ AI keys

ProblemBring-your-own-key means storing secrets.

SolutionKeys are encrypted with AES-256-GCM before they reach the database.

Built with

TypeScriptNext.jsReactPrismaPostgreSQLAuth.jsStripeTailwind CSSClaude APIOllamaNVIDIA NIMTool callingVercel