/PAW-sitive

Hack4Bengal 3.0 winning project

Primary LanguageTypeScript


PAWsitive

Visit and Support us at - www.bepawsitive.xyz

Project Inspiration

The inspiration for PAWsitive came from the need to create a centralized platform that connects pet owners with essential services such as blood donors, veterinary clinics, and rescue centers. Our goal is to ensure the well-being of pets by making it easier for their owners to find and access the necessary resources.

Project Description

PAWsitive is a comprehensive web application designed to help pet owners find blood donors, veterinary clinics, and rescue centers with ease. The platform features:

  • Blood Donors Directory: Search and filter blood donors based on specific criteria.
  • Veterinary Clinics Locator: Find nearby veterinary clinics and get detailed information about their services.
  • Rescue Centers Directory: Access a directory of rescue centers with information on ambulance services.
  • Registration Portals: Register as a blood donor, veterinary clinic, rescue center, or event host.
  • Spotlight Section: Highlight ongoing projects and campaigns to encourage community participation.
  • Voice Assistant Section: Provide customer support and educational resources for pet owners through voice assistant calls powered by Callchimp.AI.
  • Fully Customized AI Chatbot: Gemini powered AI chatbot to tackle all animal-related queries of users and provide customized answers through puns for other doubts.

Tech Stacks Used

  • React: For building the user interface.
  • Next.js: For server-side rendering and building static websites.
  • TypeScript: For static type checking to improve code quality.
  • MongoDB: For the database to store and retrieve data.
  • Tailwind CSS: For styling the application with a dark theme.
  • Node.js: For backend development and handling server-side operations.

Third-Party Technologies Used

Kinde Authentication Service

image

For user authentication using OTP, login, and signup.

UploadThing

image

To upload images of certificates for dog vaccination certificate status.

Callchimp.ai

image

To integrate a calling service that tackles user doubts related to pet-related queries. The architecture of the API Calls is explained below.

Integration Steps:

  1. Authentication:
    const apiKey = 'your-api-key';
  2. Create Supervisor:
    callchimp.createSupervisor({
      name: 'Supervisor Name'
    }).then(response => {
      // Handle create supervisor response
    });
  3. Send OTP to Supervisor by ID:
    callchimp.sendOtpToSupervisor({
      supervisorId: 'supervisor-id'
    }).then(response => {
      // Handle OTP sent response
    });
  4. Verify Supervisor OTP by ID:
    callchimp.verifySupervisorOtp({
      supervisorId: 'supervisor-id',
      otp: '123456'
    }).then(response => {
      // Handle verified response
    });
  5. List Subscribers:
    callchimp.listSubscribers().then(response => {
      // Handle list subscribers response
    });
  6. Create Call:
    callchimp.createCall({
      leadId: 'lead-id'
    }).then(response => {
      // Handle create call response
    });

Gemini API

image

To create a custom chatbot for solving animal-related user queries.

.xyz Domain

image

To host the Website on a custom domain name.

How to Start and Run the Project

Follow these steps to start and run the PAWsitive project locally:

  1. Clone the repository:

    git clone https://github.com/Parthiba-Mukhopadhyay/BongO.n
  2. Navigate into the project directory:

    cd BongO.n
  3. Create a .env.local file: Add your API keys for Kinde Auth, Next.js, MongoDB, Gemini, and UploadThing in the .env.local file.

  4. Install dependencies:

    npm install
  5. Run the development server:

    npm run dev
  6. Open your browser: Navigate to http://localhost:3000 to see the application running.

Walkthrough of the Project

Here are the steps to navigate through the PAWsitive application:

  1. Landing Page: The homepage of the PAWsitive application.
  1. Login/Sign Up: Authenticate users via Kinde for secure access.

  2. Dashboard: The main interface with access to all features.

  • Spotlight Section: Highlight ongoing projects and campaigns.
  • Call Support: Access voice assistant support powered by Callchimp.AI.
  • Services:
    • View Donors: Search and filter through blood donors.
    • View Veterinary Clinics: Locate nearby veterinary clinics.
    • View Rescue Centers: Find rescue centers and ambulance services.
  • Collaborations:
    • Register as Donor: Sign up as a blood donor.
    • Register as Vet Clinic: Register a veterinary clinic.
    • Register as Rescue Center: Enroll a rescue center.
    • Register Events and Campaigns: Organize events and campaigns.
  1. AI Chatbot: Use the Gemini-powered chatbot for animal-related queries.

Detailed Working of the Project

For a comprehensive understanding of how the PAWsitive project works, you can watch our video walkthrough on youtube:

Watch the Detailed Video Walkthrough

Team

  • Parthiba Mukhopadhyay: Full Stack Developer
  • Mainak Chattopadhyay: Full Stack Developer
  • Aritro Saha: Full Stack Developer

Built at Hack4Bengal - Eastern India's Largest Hackathon

image