Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/abhagsain/yelpcamp
🎉🎉 Node. JS Web Application Demo can be seen here -
https://github.com/abhagsain/yelpcamp
expressjs javascript mongodb mongoose node
Last synced: about 1 month ago
JSON representation
🎉🎉 Node. JS Web Application Demo can be seen here -
- Host: GitHub
- URL: https://github.com/abhagsain/yelpcamp
- Owner: abhagsain
- Created: 2019-01-09T08:08:57.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-01-16T15:08:37.000Z (about 6 years ago)
- Last Synced: 2024-12-20T23:53:43.626Z (about 1 month ago)
- Topics: expressjs, javascript, mongodb, mongoose, node
- Language: HTML
- Homepage: http://abhagsain-camping.herokuapp.com/
- Size: 15.2 MB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Yelp Camp
A Node. js Web Application
## Demo
> See this app in action at [http://abhagsain-camping.herokuapp.com/](http://abhagsain-camping.herokuapp.com/)**I've added a demo user Hitman** on the login page, so you don't have to sign up to test the functionality.
![website screenshot](https://user-images.githubusercontent.com/36589645/50891598-a3240080-1422-11e9-8865-9c3814db1b47.jpg)
## Installation
Make sure you have these things installed
* [Node](https://nodejs.)
* [MongoDB](https://www.mongodb.com/download-center)
* [MLab](https://mongolab.com) (Alternative to downloading MongoDB locally)
see the [docs](https://docs.mlab.com/)### You can clone or download this repository.
```
git clone https://github.com/abhagsain/yelpcamp.git
```after that run command
```
npm install
```
this will install all the necessary packages that you need to run the application.>I've used [dot.env](https://www.npmjs.com/package/dotenv) to store the environment variable, So you need to create a **.evn** file once you clone or download the repo.
paste below code into that file
```
# if you're using MLAB replace variable with your MLAB url
DATABASEURL = mongodb://localhost:27017/[your_database_name]
```
## Application Feature* Authentication
* Users can sign up or login using username and password.
* User can not submit campgrounds if they are not logged in.* Authorization
* User can only modify campgrounds created by them.* User Profile
* Every registered user has profile where all his submitted campgrounds are shown.
* Basic Functionality* Add Name, Image and Description to the campground.
* Create, Update, Delete the Campground.
* Add comments to campgrounds.
* Flash Important messages to warn or gree the users.
* Responsive Web design.
## Built with
### Front end
* [Bootstrap 4.0](https://getbootstrap.com)
* [ejs](https://ejs.co/)
### Back End
* [Node. js](https://nodejs.org)
* [Express. js](https://expressjs.com)
* [MongoDB](https://www.mongodb.com/)
* [mLAB](https://mlab.com)
* [mongoose](http://mongoosejs.com/)
* [passport](http://www.passportjs.org/)
* [passport-local](https://github.com/jaredhanson/passport-local#passport-local)
* [express-session](https://github.com/expressjs/session#express-session)
* [method-override](https://github.com/expressjs/method-override#method-override)
* [connect-flash](https://github.com/jaredhanson/connect-flash#connect-flash)
* [dotenv](https://www.npmjs.com/package/dotenv)
* [body-parser](https://www.npmjs.com/package/body-parser)
* [connect-mongo](https://www.npmjs.com/package/connect-mongo)
### Text Editor
* [Visual Studio Code](https://code.visualstudio.com/) I'm in love with this :P
* See how to use [Emmet](https://code.visualstudio.com/blogs/2017/08/07/emmet-2.0) in VSCode. This [CheatSheet](https://docs.emmet.io/cheat-sheet/) might be helpful.
>Change default shell in VSCode to [git bash](https://git-scm.com/downloads) if you're using windows and know some Linux commands. Don't know how to do it? [See here](https://stackoverflow.com/questions/44435697/vscode-change-default-terminal)
I'll be adding features as I learn more.
A Big Thanks to [Colt Steele](https://github.com/Colt) for all the knowledge.