Skip to content

Repository files navigation

YelpCamp Website - Web Developer Bootcamp Project

Instructor: Colt Steele

Overview

YelpCamp is a web application project that I developed during a web developer bootcamp taught by Colt Steele. The project aimed to teach various web development technologies and concepts through hands-on experience in building a campground review website.

Project Description

YelpCamp allows users to browse, review, and discuss various campgrounds. Users can sign up, log in, and log out of the website to access personalized features. Each campground listing includes essential details such as name, location, description, and images. Users can read and write reviews for campgrounds, provide a rating and a text description for their experiences. Additionally, users can leave comments on campground reviews to engage in discussions.

Features

  1. User Authentication: The YelpCamp project includes user authentication, allowing users to sign up, log in, and log out. This feature is essential for enabling personalized experiences and ensuring data security.

  2. Campground Listings: The application displays a list of campgrounds, each with details such as name, location, description, and images. Users can browse through the campground listings to discover various locations.

  3. Campground Reviews: Users can leave reviews for campgrounds they have visited. Each review includes a rating and a text description. Reviews provide valuable insights to help other users make informed decisions about their camping destinations.

  4. Rating and Reviews Count: Each campground shows an overall rating based on user reviews, along with the total number of reviews received.

  5. Campground Images: Users can upload images for each campground they review. The application uses Cloudinary for image storage and retrieval, enhancing the visual experience for users.

  6. Comments on Reviews: Users can leave comments on campground reviews to participate in conversations.

  7. User Profiles: Each user has a profile page displaying their username, information, and the reviews they contributed.

Technologies Used

The YelpCamp project was developed using a variety of technologies, including:

  • Front-End: HTML, CSS, JavaScript, Bootstrap, EJS (Embedded JavaScript templates).

  • Back-End: Node.js, Express.js (Web application framework for Node.js).

  • Database: MongoDB (NoSQL database).

  • Authentication: Passport.js (User authentication middleware).

  • Media Storage: Cloudinary(for image storage)

Project Screenshots

Home Page Home Page - Displays a list of campgrounds.

Campground Details Campground Details - Provides specific information about a selected campground.

Campground Reviews Campground Reviews - Allows users to read and write reviews for a campground.

User Profile User Profile - Shows user details and their contributed reviews.

Getting Started

  1. Clone the YelpCamp repository from GitHub.
  2. Install the necessary dependencies using npm install.
  3. Set up a MongoDB database for storing campground and user data.
  4. Configure the Cloudinary API for image storage.
  5. Start the development server with npm start.
  6. Access the application in your web browser at http://localhost:3000.

Conclusion

Through the web developer bootcamp led by Colt Steele, I gained practical experience in building the YelpCamp website. The project not only solidified my understanding of web development technologies but also allowed me to create a functional and interactive web application. YelpCamp was an excellent learning experience, helping me progress in my journey to become a skilled web developer.

About

YelpCamp is a campground review website where users can explore and rate various campgrounds. It allows users to post reviews, share experiences, and view campground information, fostering a community of outdoor enthusiasts.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Used by

Contributors

Languages