SocialNext is a full-featured social media platform designed for speed, simplicity, and scalability. Built with the modern web stack, it offers everything you need to launch your own social network in minutes.
| Feature | Description |
|---|---|
| 🔐 Authentication | Secure user auth powered by Clerk |
| 📝 Posts | Create, edit, and delete posts with rich content |
| 💬 Comments | Engage in threaded discussions |
| ❤️ Likes | Like and unlike posts in real-time |
| 👥 Follow System | Follow/unfollow users, build your network |
| 🔔 Notifications | Get notified for likes, comments, and follows |
| 🖼️ Media Upload | Image uploads via UploadThing |
| 👤 Profiles | Customizable user profiles with bios, locations, and more |
| 🎨 Dark Mode | Built-in dark/light theme support |
| 📱 Responsive | Mobile-first, works on all devices |
Next.js 14 (App Router) → React Framework
TypeScript → Type Safety
Tailwind CSS + shadcn/ui → Styling
Prisma + PostgreSQL → Database
Clerk → Authentication
UploadThing → File Uploads
- Node.js 18+
- PostgreSQL database
- Clerk account
- UploadThing account
git clone https://github.com/yourusername/socialnext.git
cd socialnext
npm installCreate a .env.local file:
# Database
DATABASE_URL="postgresql://user:password@localhost:5432/socialnext"
# Clerk Authentication
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_...
CLERK_SECRET_KEY=sk_test_...
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/
# UploadThing
UPLOADTHING_TOKEN=...npx prisma generate
npx prisma db pushnpm run devOpen http://localhost:3000 🎉
The easiest way to deploy is via Vercel. Don't forget to add your environment variables in the Vercel dashboard!
MIT License - feel free to use this for your own projects!
Made with ❤️ using Next.js
