{
  "markdown": "# CVin.Bio\n\nCVin.Bio generates web profiles from CV documents using AI. Users upload their CVs, and the application extracts and routes the structured data into an editable profile hosted at a custom URL.\n\n## 🚀 Key Features\n\n*   **📄 AI CV Parsing:** Upload a CV; the backend uses data extraction (`pdf-parse`) to categorize and store the user's personal information, work history, education, and skills.\n*   **🎨 Structural Rendering:** Generates a consistent, monochrome profile mapping without relying on manual themes.\n*   **⚡ OpenGraph Edge Generation:** Next.js uses the Edge Runtime (Satori) to automatically generate dynamic `1200x630` PNG social previews mapping the user's routing URL and avatar metrics.\n*   **🔐 Supabase Integration:** Connects to PostgreSQL using Row Level Security (RLS) and GoTrue Auth to persist user edits.\n*   **✏️ Data Editor:** A client-facing configuration dashboard to mutate work summaries, upload new media, and re-order data arrays.\n\n## 🛠️ Tech Stack\n\n*   **Framework:** [Next.js 15](https://nextjs.org/) (App Router, Server Components)\n*   **Language:** [TypeScript](https://www.typescriptlang.org/)\n*   **UI & Styling:** [Tailwind CSS v3](https://tailwindcss.com/) & [Shadcn UI](https://ui.shadcn.com/)\n*   **Backend & Database:** [Supabase](https://supabase.com/) (PostgreSQL & Auth)\n*   **Image Generation:** [Next/OG](https://vercel.com/docs/functions/og-image-generation)\n\n## 📁 Project Structure\n\n```\n/\n├── src/\n│   ├── app/\n│   │   ├── [slug]/                   # Public Candidate Profile routes\n│   │   │   ├── page.tsx              # Clean Server Component fetching public profiles\n│   │   │   └── opengraph-image.tsx   # Edge rendering script natively drawing the SVG/PNG previews\n│   │   ├── editor/                   # Authorized CV editing interface\n│   │   ├── api/parse-resume/         # Local algorithmic RegEx parsing route\n│   │   ├── opengraph-image.tsx       # Root landing page dynamic fallback preview\n│   │   ├── page.tsx                  # Primary Landing interface\n│   │   └── layout.tsx                # Symmetrical Universal UI boundaries\n│   │\n│   ├── components/                   # Shadcn UI atoms and universal Header elements\n│   ├── lib/                          # Server utilities (Supabase Admin, Heuristics arrays)\n│   ├── utils/                        # Client-side Supabase Browser constructors\n│   └── types/                        # Strict universal TypeScript interfaces\n│\n├── docs/                             \n│   └── design_guidelines.md          # Internal Brand identity and AI Prompts rules\n└── ...\n```\n\n## 🏗️ Getting Started Locally\n\nTo run CVin.Bio perfectly locally, you will strictly only need a Supabase Database instance.\n\n1.  **Install Dependencies**:\n    ```bash\n    npm install\n    ```\n\n2.  **Environment Variables**:\n    Create a new `.env.local` file strictly mapping your keys into the repository root:\n    ```env\n    NEXT_PUBLIC_SUPABASE_URL=your_supabase_project_url\n    NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key\n    NEXT_PUBLIC_SITE_URL=http://localhost:3000\n    ```\n\n3.  **Boot Development Server**:\n    ```bash\n    npm run dev\n    ```\n\nThe application strictly renders natively on `http://localhost:3000`.\n\n---\n*Built with strict mathematical geometry and aggressive minimalism.*\n",
  "bytes": 3301,
  "sha": "a0dc2b97797c3c5ad7a1a29a768c176977a538717c12ee30ca7a4b7e5319bff7",
  "repo_slug": "vedangvatsa123/pdftowebsite",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_vedangvatsa123_cvinbio_90352a59/readme"
}