Skip to content

Ripplr is a modern social media platform built with React Native, Express, and MongoDB, featuring Google/Apple login, post sharing, comments, follows, notifications, and profile management, powered by Clerk, Cloudinary, and Arcjet.

License

Notifications You must be signed in to change notification settings

EcstaticFly/Ripplr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌊 Ripplr – A Social Media Platform

Ripplr is a modern social media platform built with React Native, Node.js, Express, and MongoDB, designed for seamless cross-platform experiences. It integrates Arcjet, Clerk, Cloudinary, and NativeWind to provide secure authentication, media sharing, and personalized user interactions.

📱 Mobile App: Expo + React Native 🌐 Backend: Express.js API deployed on Vercel


✨ Features

  • 🔑 Authentication – Sign up / Sign in with Google & Apple via Clerk.
  • 📝 Create & Share Posts – Upload text and images with Cloudinary support.
  • 💬 Interactions – Like, comment, and reply on posts.
  • 👥 User Management – Follow / unfollow users and explore user profiles.
  • 🖼 Profile Customization – Edit profile details and profile picture.
  • 🔔 Notifications – Get notified for likes, comments, and follows.
  • 📩 Messaging (Conversations)(in development) – View and manage message threads.
  • 🔍 Search (in development) – Search for users easily.
  • 🗑 Content Control – Delete posts and comments anytime.
  • ⚡ Secure & Scalable – Powered by Arcjet security policies and serverless backend on Vercel.

🛠 Tech Stack

  • Mobile App: React Native, Expo, NativeWind (Tailwind for React Native)
  • Backend: Node.js, Express.js, MongoDB, Arcjet
  • Authentication: Clerk (Google & Apple OAuth)
  • Media Management: Cloudinary
  • Deployment: Vercel (Backend API)

🚀 Installation & Setup

1️⃣ Clone the Repository

git clone https://github.com/EcstaticFly/Ripplr.git
cd Ripplr

2️⃣ Setup Backend (Server)

cd server
npm install

Create a .env file inside server/ and add:

MONGODB_URL=your_mongodb_connection_url
CLOUDINARY_CLOUD_NAME=your_cloudinary_cloud_name
CLOUDINARY_API_KEY=your_cloudinary_api_key
CLOUDINARY_API_SECRET=your_cloudinary_api_secret
CLERK_SECRET_KEY=your_clerk_secret_key
ARCJET_ENV=development
ARCJET_KEY=your_arcjet_key
PORT=5000

Run the server locally:

npm run dev

3️⃣ Setup Mobile App

cd ../mobile
npm install

Create a .env file inside mobile/ and add:

EXPO_PUBLIC_API_URL=http://localhost:5000/api
CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key

Run the mobile app:

npx expo start

🤝 Contributing

Contributions, issues, and feature requests are welcome! Feel free to fork the repo, open issues, and submit a pull request.


📜 License

This project is licensed under the GNU General Public License v3.


📬 Contact

For inquiries, reach out to me at Suyash Pandey.

About

Ripplr is a modern social media platform built with React Native, Express, and MongoDB, featuring Google/Apple login, post sharing, comments, follows, notifications, and profile management, powered by Clerk, Cloudinary, and Arcjet.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published