Skip to content

PetSphere connects pet enthusiasts with a marketplace to buy and sell pets. Users can create profiles, share pet content, follow others, and explore nearby services like vets and pet stores. The platform offers role-based access and an admin panel for managing users and content.

Notifications You must be signed in to change notification settings

pvaswindas/PetSphere

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Petsphere - Social Media & Marketplace for Pet Lovers

Petsphere Logo

🐾 Overview

Petsphere is a unique social media plus marketplace designed exclusively for pet lovers. It allows users to connect, share, and interact through engaging social features while also providing a dedicated space for buying, selling, or adopting pets. Users can create profiles and share updates, message other pet enthusiasts, engage in one-on-one video calls, and explore pet listings. Petsphere fosters a fun and interactive community while making pet adoption and pet-related transactions seamless and secure.

🌟 Features

💬 Social Interaction

  • User profiles with pet galleries
  • Like, comment, and share posts
  • Follow other pet owners
  • Direct messaging with WebSocket-based real-time chat

🎥 Communication & Media

  • One-on-one video calling using WebRTC
  • Seamless image and video uploads through chat
  • Interactive paw stories (similar to Instagram Stories)

🛍 Pet Listings

  • Buy, sell, or adopt pets through verified listings
  • Filter listings by breed, location, and availability
  • Contact sellers directly via chat

🔐 Security & Moderation

  • Role-based access control (Users, Admins, Moderators)
  • JWT authentication for secure login
  • Rate limiting & CSRF protection

🛠 Admin Dashboard

  • User and post moderation
  • Community management tools
  • Announcements management
  • Analytics and engagement tracking

🏗 Tech Stack

Backend

  • Django (ASGI) & Django REST Framework – API and backend logic
  • Django Channels – Real-time WebSocket chat
  • PostgreSQL – Database storage
  • Redis – Caching and async task management
  • Celery & Celery Beat – Background task processing
  • Stripe – Payment integration (future feature)

Frontend

  • React & Redux Toolkit – Modern UI with state management
  • Tailwind CSS – Efficient and responsive styling
  • Axios – API communication
  • WebSocket for real-time features
  • WebRTC – Video calling support

DevOps & Deployment

  • Docker & Docker Compose – Containerized development
  • GitHub Actions – CI/CD for testing and deployment
  • AWS EC2 – Cloud hosting
  • Nginx (within Docker) – Reverse proxy setup

🚀 Getting Started

Prerequisites

# Required installations
- Python 3.10+
- Node.js 18+
- PostgreSQL
- Redis
- Docker & Docker Compose

Development Setup

  1. Clone the repository
https://github.com/pvaswindas/PetSphere.git
cd Petsphere
  1. Backend Setup
cd Server
python -m venv venv
source venv/bin/activate  # Linux/Mac
venv\Scripts\activate     # Windows
pip install -r requirements.txt
python manage.py migrate
daphne petsphere.asgi:application
  1. Frontend Setup
cd Client
npm install
npm run dev
  1. Run using Docker
docker-compose up --build

📁 Project Structure

Petsphere/  
├── Server/                  # Django backend  
│   ├── apps/                # Django applications  
│   │   ├── accounts/        # User authentication & profile management  
│   │   ├── announcements/   # Community announcements management  
│   │   ├── messaging/       # WebSocket-based real-time chat  
│   │   ├── notifications/   # User notifications & alerts  
│   │   ├── pets/            # Pet & breed management  
│   │   ├── posts/           # Posts, media sharing, and interactions  
│   │   ├── seller/          # Seller functionalities (future feature)  
│   │   ├── socials/         # Followers & following logic  
│   │   ├── subscriptions/   # Stripe integration for premium features (future)  
│   │   ├── videocall/       # WebRTC-based one-on-one video calling  
│   ├── config/              # Django settings & configurations
│   ├── Dockerfile           # Dockerfile for backend containerization  
│   ├── docker-compose.yml   # Docker Compose setup for backend services  
└── Client/                  # React frontend  
    ├── src/  
    │   ├── api/             # API service handlers  
    │   ├── assets/          # Images and static assets  
    │   ├── axios/           # Axios interceptor for API requests  
    │   ├── components/      # Reusable UI components  
    │   ├── hooks/           # Custom React hooks  
    │   ├── pages/           # Page components  
    │   ├── redux/           # Redux store and slices  
    │   ├── routes/          # Route handling and authentication logic  
    │   ├── utils/           # Utility functions  
    └── public/              # Static public assets  
├── .github/workflows/       # GitHub Actions CI/CD workflows  

🔍 API Overview

  • RESTful architecture
  • JWT authentication
  • WebSocket support for chat
  • API rate limiting

🛡 Security Measures

  • Secure authentication & authorization
  • CORS protection
  • Input validation & rate limiting
  • CSRF protection

📊 Monitoring & Analytics

  • Error tracking & logging
  • Database performance monitoring
  • Web traffic analytics

🤝 Community & Support

📬 Contact

For any queries or contributions:


Made by Aswin Das

About

PetSphere connects pet enthusiasts with a marketplace to buy and sell pets. Users can create profiles, share pet content, follow others, and explore nearby services like vets and pet stores. The platform offers role-based access and an admin panel for managing users and content.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published