{"id":50845921,"url":"https://github.com/wayne2604/originshield","last_synced_at":"2026-06-14T09:30:50.286Z","repository":{"id":357323290,"uuid":"1235486393","full_name":"wayne2604/originshield","owner":"wayne2604","description":"AI Content Detection Platform built with Next.js, Tailwind CSS, and Supabase. Verifies text, images, and URLs for AI-generated content.","archived":false,"fork":false,"pushed_at":"2026-05-23T09:22:49.000Z","size":314,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-05-23T10:30:56.501Z","etag":null,"topics":["ai-detection","content-verification","nextjs","react","supabase","tailwind-css","typescript"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wayne2604.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-05-11T11:22:25.000Z","updated_at":"2026-05-23T09:22:53.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/wayne2604/originshield","commit_stats":null,"previous_names":["wayne2604/originshield"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wayne2604/originshield","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wayne2604%2Foriginshield","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wayne2604%2Foriginshield/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wayne2604%2Foriginshield/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wayne2604%2Foriginshield/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wayne2604","download_url":"https://codeload.github.com/wayne2604/originshield/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wayne2604%2Foriginshield/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34316823,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-14T02:00:07.365Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-detection","content-verification","nextjs","react","supabase","tailwind-css","typescript"],"created_at":"2026-06-14T09:30:49.660Z","updated_at":"2026-06-14T09:30:50.280Z","avatar_url":"https://github.com/wayne2604.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://readme-typing-svg.herokuapp.com?font=Fira+Code\u0026size=32\u0026pause=1000\u0026color=F7F7F7\u0026center=true\u0026vCenter=true\u0026width=900\u0026lines=🛡️+OriginShield+—+AI+Content+Detection+Platform\" alt=\"Title\" /\u003e\n\u003c/div\u003e\n\nA powerful AI content detection platform built with Next.js and Supabase. It enables users to verify the authenticity of text, images, and web content through cutting-edge deep learning models.\n\n---\n\n### 📦 Stack\n- Next.js 16 (App Router)\n- React 19\n- Tailwind CSS 4\n- Supabase (Auth \u0026 Database)\n- Stripe (Payments)\n- Sapling AI (Text \u0026 URL Detection)\n- Sightengine (Image/Deepfake Analysis)\n\n---\n\n### ✨ Quick start\n```bash\n# Clone the repository\ngit clone https://github.com/wayne2604/originshield.git\n\n# Navigate to the directory\ncd originshield\n\n# Install dependencies\nnpm install\n\n# Copy the example config and add your credentials\ncp .env.example .env.local\n\n# Start the development server\nnpm run dev\n```\nEnsure you have Node.js 18+ installed and a Supabase project with the required schema to get started.\n\n---\n\n### ⚙️ Features\n- **Multi-Format Scanning** — Analyze text, images, and URLs for AI-generated content.\n- **Secure Auth** — Login and registration via Supabase with Google \u0026 Facebook OAuth.\n- **Freemium Model** — 3 free guest scans with IP-based tracking, then upgrade via Stripe.\n- **Admin Dashboard** — System-wide oversight and user management for administrators.\n- **Scan History** — Authenticated users can view and revisit past scan results.\n- **Password Recovery** — Secure reset flow powered by Supabase email templates.\n\n---\n\n### 🛠️ How it works\nThe system follows a modular Next.js App Router architecture designed for security and scalability:\n- **Server-Side API Routes**: All detection calls go through `/api/verify/*` routes so provider credentials (Sapling, Sightengine) never reach the client.\n- **Content Provenance**: Checks image metadata and C2PA signals to verify content origin.\n- **Rate Limiting**: In-memory per-IP quota protection prevents abuse on detection endpoints.\n- **Stripe Integration**: Webhook-driven subscription management for Pro tier upgrades.\n\n---\n\n### 📁 Project structure\n```text\n/\n├── public/                     # Static assets and brand mark\n├── src/\n│   ├── app/\n│   │   ├── api/\n│   │   │   ├── checkout/       # Stripe checkout session creation\n│   │   │   ├── verify/\n│   │   │   │   ├── text/       # Text AI detection via Sapling\n│   │   │   │   ├── media/      # Image/deepfake analysis via Sightengine\n│   │   │   │   └── url/        # URL content fetching and detection\n│   │   │   └── webhooks/       # Stripe webhook handlers\n│   │   ├── admin/              # Admin dashboard pages\n│   │   ├── auth/               # Login, signup, and password recovery\n│   │   ├── profile/            # User scan history and settings\n│   │   ├── privacy/            # Privacy policy page\n│   │   ├── terms/              # Terms of service page\n│   │   └── layout.tsx          # Root layout with metadata and fonts\n│   ├── components/\n│   │   ├── admin/              # Admin-specific UI components\n│   │   ├── auth/               # Auth forms and OAuth buttons\n│   │   ├── landing/            # Landing page sections\n│   │   ├── layout/             # Shared layout components (Navbar, Footer)\n│   │   ├── scanner/            # Scanner hub and result display\n│   │   └── ui/                 # Reusable UI primitives\n│   ├── lib/                    # Supabase clients, Stripe, rate limiter, utils\n│   ├── services/               # Business logic and external API wrappers\n│   ├── hooks/                  # Custom React hooks\n│   ├── context/                # React context providers\n│   ├── types/                  # TypeScript type definitions\n│   └── middleware.ts           # Auth and route protection middleware\n├── .env.example                # Template for environment variables\n├── package.json                # Dependencies and scripts\n└── README.md                   # Project documentation\n```\n\n---\n\n### 👤 Author\n**Wayne** — [github.com/wayne2604](https://github.com/wayne2604)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwayne2604%2Foriginshield","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwayne2604%2Foriginshield","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwayne2604%2Foriginshield/lists"}