Developer Notes

YelpCamp is a RESTful web-app I made to get more comfortable using Node.js, MongoDB and express. This website is not intended for public use. Please note that all campground ratings are randomly generated and some of the data is fake (randomly generated).

YelpCamp allows users to:

This is my second web app. I thought I'd outline my thought process here, in case you have questions about decisions I made when coding. I'd appreciate your feedback, so feel free to email me at

Stack: NodeJS, Express, MongoDB


Where is the Campground data coming from?

I wrote a script to extract around 300 campgrounds from around the world using Google Places API. You can view the extracted data here. (Use a JSON formatter extension) The extracted data consists of the following:

You can view the script to extract campground data using google places API here.

Note: It would have been better to use Factual's API rather than Google Places API, since the latter isn't really meant to be used the way I did. Factual wouldn't supply comments and images though.

How was the DB populated?

I wrote a script that:

You can view the script here.

Testing the App

Feel free to test the functionality of this website by signing up and creating/editing campgrounds, comments and ratings. I wrote a script to create 350 random users. You can login as any of those users and test the functionality of the website. Here are a few test users:

You can also create your own account and add/edit campgrounds, ratings or comments

The Code

It's right here! =)