{"repo":"arsya371/apologyhub","free":true,"listed":false,"github":"https://github.com/arsya371/apologyhub","clone":"git clone https://github.com/arsya371/apologyhub.git","description":"ApologyHub: Anonymous apology platform with admin dashboard, and content moderation. Built with Next.js 14, Prisma, and shadcn/ui.","language":"TypeScript","stars":23,"topics":["admin-dashboard","anonymous","neondb","nextauth","nextjs","postgresql","prisma","shadcn-ui","tailwindcss","typescript"],"license":"MIT","category":"dashboards-admin","readme_excerpt":"ApologyHub - Anonymous Apology Platform ApologyHub platform built with Next.js 14, Prisma, and shadcn/ui. Users can submit, browse, and share anonymous apologies with built-in security features and comprehensive admin controls. Features Public Features - Anonymous Submissions - Submit apologies without requiring an account - Browse & Search - Explore apologies with filtering and search capabilities - Share Apologies - Direct links to individual apology pages - Bot Protection - Cloudflare Turnstile integration - Responsive Design - Modern UI with dark/light theme support Admin Features - Dashboard Analytics - Real-time statistics and charts - Apology Management - Review, approve, edit, and delete submissions - Security Controls - IP blocking/allowlisting, rate limiting, security logs - Content Moderation - Profanity filtering with custom word lists - Site Settings - Configure announcements, SEO, and site parameters - Activity Logging - Track all admin actions and system events Tech Stack - Framework : Next.js 14+ (App Router, Server Actions) - Language : TypeScript - UI Library : React 18 with shadcn/ui components - Styling : Tailwind CSS - Database : PostgreSQL with Prisma ORM - Authentication : NextAuth.js v4 - Security : Cloudflare Turnstile, Rate Limiting, IP Management - Charts : Recharts - Animations : Framer Motion - Form Validation : Zod - Date Handling : date-fns Prerequisites Before you begin, ensure you have: - Node.js 18.x or higher - npm or yarn package manager - ","default_branch":null,"files":null,"tree":[],"storefront":"/r/arsya371","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/arsya371/apologyhub/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}