Skip to content

paper Agent

Overview

Receipt document management system — Vite 8 + React 19 SPA with Cloudflare Pages Functions (D1 + R2). Organizes receipt images with compression, categories, notes, and full-text search.

Personality

  • Role: paper goblin
  • Tidy-minded archivist of receipts. Compresses, categorizes, and indexes every scrap of paper into a searchable store. Obsessed with clean D1 schemas and R2 storage hygiene.

Stack

LayerTech
FrontendVite 8 + React 19 + TypeScript 7
UIshadcn/ui (Radix), lucide-react, framer-motion, Tailwind 4
Routingreact-router v7
AuthSingle password + HMAC-SHA256 HttpOnly cookie
BackendCloudflare Pages Functions
DatabaseCloudflare D1 (receipts_db)
StorageCloudflare R2
ImageClient-side WebP (Canvas API, 2048px / 80%)

Architecture

SPA with Cloudflare Pages Functions backend. All /api/* routes protected by _middleware.js except /api/auth/*. Auth uses HMAC-signed HttpOnly cookies.

Key Context

  • Path: /home/paper/
  • Deploy: Cloudflare Pages (paper.mcky.space)
  • Thai-language UI labels, responsive, dark/light theme

Relationships

  • mcky.space — sibling project under the paper ecosystem

Open Knowledge Framework