Materializr
Open-source parametric 3D CAD for makers — constraint sketches, solid modeling, threads, SVG & text engraving, STL/STEP export. Android, iPad, Linux, Mac, Windows. Vibe coded.
Turn static PDFs into interactive editions with hotspots, analytics, and one-line embeds.
DesignTypeScript · JavaScriptGitHub @I-N-SILVAOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Turn a PDF or a blank page into an interactive, trackable edition you can publish and share. QLICO pairs a drag-and-drop editor with a polished public reader, lead-gating, living "data" blocks, AI-assisted import, and per-book analytics.Read the full README ↗Turn a PDF or a blank page into an interactive, trackable edition you can publish and share. QLICO pairs a drag-and-drop editor with a polished public reader, lead-gating, living "data" blocks, AI-assisted import, and per-book analytics.
AGENTS.md: this Next.js has breaking changes, read node_modules/next/dist/docs/ before writing framework code.supabase/migrations/).npm ci
cp .env.example .env.local # fill in Supabase / Stripe / AppSumo / Gemini keys
npm run dev # http://localhost:3000
Apply the database schema by running the SQL in supabase/migrations/ (in order) against your Supabase project.
| Script | What it does |
|---|---|
npm run dev | Start the dev server |
npm run build | Production build |
npm start | Serve the production build |
npm run typecheck | tsc --noEmit |
npm run lint | ESLint (Next core-web-vitals + TypeScript) |
npm run format | Prettier write (format:check to verify only) |
npm test | Vitest unit tests (test:watch for watch mode) |
app/ App Router routes, grouped by surface
(reader)/ Public book viewer (SSG/ISR)
(studio)/ Authenticated dashboard + editor + account
(analytics)/ Per-book analytics dashboard
api/ Route handlers (books, upload, billing, webhooks, events…)
components/ UI by domain: viewer/, studio/, blocks/, landing/
lib/ Schemas, editor store, integrations, entitlements
supabase/migrations/ Database schema + row-level security policies
createServerSupabase) so RLS applies; the service-role client
(supabaseAdmin) is reserved for operations RLS can't express — webhooks,
license redemption, profile/plan mutations, and storage writes.lib/plans.ts (single source of truth) and
are enforced via lib/entitlements.ts.lib/uploads.ts; abuse-prone
endpoints are throttled via lib/rate-limit.ts..github/workflows/ci.yml runs typecheck, lint, tests, and a production build
on every pull request.