Skip to content

An open-source community platform featuring a 3-vouch verification system, social feed, help hub, groups, and events. Built with Next.js 14, Supabase (Postgres with RLS), and Tailwind CSS.

Notifications You must be signed in to change notification settings

stuhamz/SocialConnect

Repository files navigation

SocialConnect

A secure, exclusive community platform for verified people built as a Progressive Web App.

🎯 Features

  • Secure Authentication: Email OTP with optional phone verification
  • Community Vouching: 3-approval verification system
  • Social Feed: Posts, comments, likes, and reactions
  • Help Hub: Community assistance requests and pledge tracking
  • Groups & Forums: Public and private community groups
  • Events: RSVP system with photo galleries
  • Search: Find members by name, city, profession
  • Gamification: Badges, streaks, and trust scores
  • Admin Dashboard: Moderation and user management

🛠️ Tech Stack

  • Frontend: Next.js 14, React Server Components, Tailwind CSS
  • Backend: Supabase (Postgres, Auth, Storage, Realtime)
  • Auth: Email OTP (Brevo/Resend), Passkeys/WebAuthn
  • Hosting: Vercel (free tier)
  • CDN: Cloudflare
  • Analytics: Self-hosted Umami

📁 Project Structure

socialconnect/
├── apps/
│   └── web/              # Next.js 14 PWA
├── packages/
│   ├── db/               # Database schema and migrations
│   └── api/              # Shared API utilities
├── infra/                # Deployment scripts
└── docs/                 # Documentation

🚀 Quick Start

Prerequisites

  • Node.js 18+ and npm
  • Supabase account (free tier)
  • Brevo or Resend account for email OTP

Installation

  1. Clone the repository:
git clone <repository-url>
cd socialconnect
  1. Install dependencies:
npm install
  1. Set up environment variables:
cp apps/web/.env.example apps/web/.env.local
  1. Configure your .env.local with:

    • Supabase URL and anon key
    • Email provider credentials (Brevo/Resend)
    • VAPID keys for web push
  2. Set up the database:

npm run db:setup
npm run db:migrate
npm run db:seed
  1. Run the development server:
npm run dev

Open http://localhost:3000 in your browser.

📚 Documentation

🔒 Security

  • Row Level Security (RLS) on all database tables
  • Email OTP with rate limiting
  • Content moderation and reporting
  • GDPR/DPDP compliant data handling
  • Encrypted PII at rest

💰 Cost Structure

Target: $0-25/month

  • Vercel Hobby: $0 (free tier)
  • Supabase Free: $0 (500MB DB, 1GB storage)
  • Brevo Email: $0 (300 emails/day)
  • Cloudflare: $0 (free tier)

🤝 Contributing

This is a private community project. For contribution guidelines, please contact the maintainers.

📄 License

MIT License - see LICENSE file for details


Built with ❤️ for the community

About

An open-source community platform featuring a 3-vouch verification system, social feed, help hub, groups, and events. Built with Next.js 14, Supabase (Postgres with RLS), and Tailwind CSS.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published