renjithroy / Find-My-Camp

A review/rating platform for Campgrounds.

Home Page:https://findmycamp.social/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FindMyCamp 🏕️

FindMyCamp is a platform for discovering and managing campgrounds.

With FindMyCamp, users can effortlessly create, explore, and review campgrounds, while administrators have the power to oversee and enhance the platform's functionality. FindMyCamp provides a dynamic and user-friendly experience, making camping adventures easier than ever.

Image 1
Image 2 Image 3

Key Features

  • Campground Management - Users can effortlessly create, edit, and delete campgrounds.
  • Review Control - Users have the ability to write and manage their campground reviews, including deletion if needed.
  • Interactive Map Exploration - Explore and search for campgrounds using the integrated MapBox API for a dynamic map experience.
  • Cloud-Based Image Storage - Campground images are securely stored in the cloud via Cloudinary.
  • Admin Authority - Administrators possess the power to edit and remove campgrounds, manage user accounts, and oversee campground reviews.
  • Comprehensive Dashboard - Admins can access a detailed summary of campgrounds through an intuitive admin dashboard.

Technologies Used

FindMyCamp is built using a robust tech stack:

  • Backend: Node.js and Express
  • Database: MongoDB
  • Frontend: EJS, HTML, CSS
  • Authentication: Passport.js for users, Bcrypt for admin

Run it Locally

  1. Install MongoDB: Install MongoDB on your system.
  2. Get API Keys: Create accounts on Cloudinary and MapBox to obtain API keys and secrets.
  3. Clone and Install::
git clone https://github.com/renjithroy/Find-My-Camp.git
cd campground
npm install
  1. Set Environment Variables: Create a .env file in the project's root directory and add the following:
DB_URL='<your_mongodb_url>'
MAPBOX_TOKEN='<your_mapbox_token>'
API_SECRET='<your_api_secret>'
CLOUDINARY_CLOUD_NAME='<your_cloudinary_cloud_name>'
CLOUDINARY_KEY='<your_cloudinary_key>'
CLOUDINARY_SECRET='<your_cloudinary_secret>'
  1. Run the Application::

Use command node app.js in the terminal and mongosh in another terminal to start the node server and mongo database.

Then go to localhost:3000.

To get maps working check this out.

Contact

If you have any questions or want to reach out to the me, feel free to contact me at renjithroy06@gmail.com.

Happy camping with FindMyCamp! 🏕️

About

A review/rating platform for Campgrounds.

https://findmycamp.social/


Languages

Language:JavaScript 31.1%Language:CSS 27.5%Language:EJS 21.7%Language:HTML 16.6%Language:SCSS 3.1%