Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/PloutusLab/krafta-web/llms.txt

Use this file to discover all available pages before exploring further.

Krafta is a Venezuelan print-on-demand SaaS platform that lets customers design and order personalised stationery and apparel, routes production jobs to a network of allied workshops, and handles the full payment lifecycle — including Pago Móvil and bank transfers — without relying on international payment processors that are unavailable in Venezuela. It is built for four distinct user groups: customers (CLIENTE) who browse the catalog and place orders, creators (CREADOR) who run their own storefronts selling pre-made designs, workshop operators (TALLER) who receive and fulfil production assignments, and platform administrators (ADMIN) who verify payments, manage the catalog, and oversee the entire order pipeline.

What Krafta does

Krafta brings together every layer needed to run a local print-on-demand business in Venezuela:
  • Product catalog — a category-based catalog of physical products (stationery, textiles, accessories), each with one or more ProductVariant SKUs carrying their own base price, attributes, and print template.
  • SVG-based design editor — a Fabric.js canvas rendered inside /editor and /product/[id]/customize that overlays customer artwork on interactive SVG mockups, detecting the printable area via an element with the reserved ID krafta-print-area.
  • Four user rolesCLIENTE, CREADOR, TALLER, and ADMIN, enforced at the edge by JWT middleware and reinforced inside API routes via a requireRole() helper.
  • Manual Venezuelan payment flow — customers submit proof of payment (Pago Móvil or bank transfer) with a receipt image; an admin reviews and confirms or rejects each submission before the order advances to production.
  • Allied workshop network — admins assign confirmed orders to workshops that have registered offers for specific variants; workshops track assignment status from PENDING_ASSIGNMENT through IN_PRODUCTION to COMPLETED.
  • Creator storefront program — approved creators get a public store at /creator/[slug], upload their own designs as CreatorDesign records, and list them against product variants at a retail price they control (subject to the platform’s basePrice floor).

Tech stack

Krafta is a full-stack JavaScript application with no separate backend service.
LayerTechnology
FrameworkNext.js 16 (App Router)
UI libraryReact 19
StylingTailwind CSS 4
ORMPrisma 6 with @prisma/adapter-libsql
DatabaseSQLite (local dev) / libSQL (Turso, production)
File storageSupabase Storage (private buckets) with local filesystem fallback
Design editorFabric.js 7
Image processingSharp, canvas, ag-psd
ValidationZod 4
AuthCustom HMAC-SHA256 JWT, verified in Edge Runtime

Explore the docs

Quickstart

Clone the repo, configure environment variables, run migrations, and place a test order in under ten minutes.

Architecture

Understand how the storefront, editor, REST API, Prisma models, Supabase Storage, and workshop pipeline connect end-to-end.

Roles & Permissions

Deep-dive into the CLIENTE, CREADOR, TALLER, and ADMIN roles and how middleware and API guards enforce them.

Order Lifecycle

Trace an order from cart and quote creation through payment submission, admin verification, workshop assignment, and delivery.

Build docs developers (and LLMs) love