A full-stack web application for pet adoption, built with the MERN stack (MongoDB, Express.js, React, Node.js). Users can browse pets, search/filter, manage accounts, and securely checkout with Stripe integration.
- Browse available pets with images and details
- Search and filter pets by type, breed, and more
- User authentication and account management
- Add pets to cart and checkout with Stripe payments
- Responsive UI with Tailwind CSS
- Admin features for managing pets and users
- Frontend: React, TypeScript, Tailwind CSS
- Backend: Node.js, Express.js
- Database: MongoDB
- Authentication: JWT
- Payments: Stripe
- Node.js & npm
- MongoDB (local or Atlas)
- Stripe account (for payments)
-
Clone the repo:
git clone https://github.com/CaseyConlin/MERN-Full-Stack-Pet-Adoption-App.git cd MERN-Full-Stack-Pet-Adoption-App
-
Install backend dependencies:
cd backend npm install
-
Install frontend dependencies:
cd ../client npm install -
Configure environment variables:
- Edit
backend/config/config.envwith your MongoDB URI, JWT secret, Stripe keys, etc.
- Edit
-
Start the backend server:
cd ../backend npm start -
Start the frontend app:
cd ../client npm start
- Visit
http://localhost:3000to use the app. - Register/login to manage your account and adopt pets.
- Admins can add/edit/remove pets and manage users.
backend/- Express API, models, controllers, routesclient/- React frontend, components, context, servicesuploads/- Pet images
Pull requests are welcome! For major changes, open an issue first to discuss what you’d like to change.