Table of Contents
Some of our key features are:
-
Sign in with GitHub, Google, or Facebook OAuth. Rest easy knowing that your pet's safety and privacy are our priorities too!
-
Curate your pet's story and your own, showcasing cherished moments and forming connections within our vibrant community of pet enthusiasts!
-
Show off all of your furry or feathered friends! Have new information about your pet? No problem! Edit and personalize their details effortlessly to keep their records up-to-date. Feel free to remove pets as your circumstances change. Our pet management feature offers a comprehensive and user-friendly platform for all your pet-related needs.
-
Stay connected with fellow pet lovers through our intuitive realtime messaging system.
-
Step into our lively community forum, where the joy of connecting with fellow pet lovers knows no bounds! Our dynamic group browsing feature makes exploring and joining diverse groups effortless, and allows you to discover and join diverse groups tailored specifically to your furry friend's needs with a simple click of a button. Find communities that resonate with your pet's unique interests and quirks and dive deeper into compelling conversations on dedicated forum pages, where each thread serves as a gateway to in-depth exchanges, creating a haven for sharing experiences and valuable advice.
-
Utilize our friendly friend-finding feature to connect with local pet owners! If you both match, you are friends! Find friends within a selectable radius to show friends near you. This is built to filter the database for users within a selected distance range, that you have not already sent a friend request to, and that you are not already friends with. Additionally it will also return users who have sent you a friend request regardless of distance to facilitate more matches. Adding a friend will add a request to the datatabase and trigger a custom animation mangaged by state.
-
Create posts to your profile or a forum with images, vote and comment!
-
Filter through groups and posts for dynamically rendered content.
Before getting started with PetCentral please ensure that you have a database set up to work with Prisma. We highly recommend Supabase
npm install npm@latest -g
Node version is expected to be v20.10.0 or higher
nvm install --lts
node --version
- Clone the repo
git clone https://github.com/SA-BlueOcean/PetCentral.git
- Install NPM packages
npm install
- Rename
.env.example
to.env
and fill in the following fields:Check NextAuth.js documentation for more information on how to set up OAuth providersDATABASE_URL NEXTAUTH_URL NEXTAUTH_SECRET (use # openssl rand base64 32 to generate) GITHUB_CLIENT_ID GITHUB_CLIENT_SECRET GOOGLE_CLIENT_ID GOOGLE_CLIENT_SECRET FACEBOOK_CLIENT_ID FACEBOOK_CLIENT_SECRET NEXT_PUBLIC_SUPABASE_URL NEXT_PUBLIC_SUPABASE_ANON_KEY
- Run Prisma generate to generate the Prisma client
npx prisma generate
- Push schema to the database
npm run db:push
Optionally, seed the database
npm run db:seed
- Run the development server
npm run dev
Feel free to join in! Whether its fixing bugs, improving documentation, or simply spreading the word! Please see Contributing Guidelines for further guidance. If you require assistance please don't hesitate to reach out!
Distributed under the MIT License. See LICENSE for more information.
Project bootstrapped with T3 Stack
Animal Shelter icon by Icons8