Welcome to the Growing Paws! This project is designed to facilitate pet breeding and adoption services. Built with modern web technologies, it provides a seamless user experience for breeders and adopters alike.
- User Authentication: Secure login and registration for users.
- Pet Listings: Create, read, update, and delete (CRUD) operations for pet listings.
- Adoption Requests: Users can send and manage adoption requests.
- Breeder Profiles: Detailed profiles for breeders including their available pets.
- Search Functionality: Easily search for pets by breed, age, location, etc.
- Responsive Design: Optimized for both desktop and mobile devices.
-
Frontend:
- React.js
- HTML5
- CSS3
- JavaScript
- Scss
-
Backend:
- Node.js
- Express.js
-
Database:
- MongoDB
-
Other Tools and Libraries:
- Mongoose (for MongoDB object modeling)
- JWT (for authentication)
- Bcrypt (for password hashing)
- Axios (for making HTTP requests)
To get a local copy up and running, follow these steps:
-
Clone the repository:
git clone https://github.com/souravrjpt/growing-paws.git
-
Navigate to the project directory:
cd growing-paws
-
Install backend dependencies:
cd backend npm install
-
Install frontend dependencies:
cd ../frontend npm install
-
Create a
.env
file in thebackend
directory and add the following:PORT=5000 MONGODB_URI=your_mongodb_connection_string JWT_SECRET=your_jwt_secret EMAIL_USER=your_email_address EMAIL_PASS=your_email_password
-
Start the backend server:
cd backend npm start
-
Start the frontend development server:
cd ../frontend npm start
-
Open your browser and visit:
http://localhost:3000
Here are some of the key API endpoints used in the project:
-
User Authentication:
POST /api/users/register
- Register a new userPOST /api/users/login
- Login a userGET /api/users/profile
- Get user profile (protected)
-
Pet Listings:
GET /api/pets
- Get all petsPOST /api/pets
- Create a new pet (protected)GET /api/pets/:id
- Get a single pet by IDPUT /api/pets/:id
- Update a pet by ID (protected)DELETE /api/pets/:id
- Delete a pet by ID (protected)
-
Adoption Requests:
POST /api/requests
- Create a new adoption request (protected)GET /api/requests
- Get all adoption requests (protected)
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Thank you for visiting the Pet Breeding and Adoption Website repository. If you have any questions or suggestions, feel free to open an issue or contact us directly. Happy coding!