Skip to content

ashish0kumar/YelpCamp

Repository files navigation

YelpCamp

Welcome to YelpCamp! This is a full-stack web application that allows users to view, create, and review campgrounds. Whether you're an avid camper looking for your next adventure or a campground owner wanting to showcase your site, YelpCamp has you covered.

🔗Visit YelpCamp *Please note that this link may take up to a minute to load as it is hosted on the Render's free tier.

✨ Features

  • Browse Campgrounds: View a list of campgrounds uploaded by users.
  • Campground Details: Click on a campground to see more details, including reviews and ratings.
  • User Authentication: Sign up or log in to your account to access additional features like adding new campgrounds and leaving reviews.
  • Add New Campgrounds: Logged-in users can add new campgrounds to the platform, complete with images and descriptions.
  • Leave Reviews: Users can leave reviews for campgrounds, sharing their experiences and recommendations.
  • Edit and Delete: Users can edit or delete their campgrounds and reviews.

🛠️ Technologies Used

  • Node.js: Backend JavaScript runtime environment.
  • Express.js: Web application framework for Node.js.
  • MongoDB: NoSQL database for storing campground and user data.
  • Mongoose: MongoDB object modeling for Node.js.
  • Passport.js: Authentication middleware for Node.js.
  • Bootstrap: Frontend framework for responsive design.
  • HTML/CSS: Structure and styling for web pages.
  • JavaScript: Client-side scripting for interactivity.
  • Cloudinary: Cloud-based image and video management platform for storing campground images.

🚀 Installation

To run YelpCamp locally, follow these steps:

  1. Clone this repository to your local machine.
  2. Navigate to the project directory in your terminal.
  3. Install dependencies by running npm install.
  4. Set up your MongoDB database and Cloudinary account and add your credentials to the .env file.
  5. Start the application by running npm start.
  6. Access YelpCamp in your web browser at http://localhost:3000.

📄 Usage

  • Visit the homepage to browse through existing campgrounds.
  • Sign up or log in to your account to access additional features.
  • Add new campgrounds with images and descriptions.
  • Leave reviews and ratings for campgrounds you've visited.
  • Edit or delete your campgrounds and reviews as needed.

🤝 Contributing

Contributions are welcome! If you find a bug or have a feature request, please open an issue or submit a pull request.

📜 License

This project is licensed under the MIT License. See the LICENSE file for details.

🙏 Acknowledgements

This project was inspired by Colt Steele's Web Developer Bootcamp on Udemy.