Skip to content

ejgdev/Nightlife-Coordination-App

Repository files navigation

Nightlife Coordination App with NodeJS.

In this App you can view any bar or restaurant in any area searched. Also you can login in and indicate you are going there or cancel the reservation.

Is made with NodeJS, MongoDB, EJS templates and powered by Yelp.com.

You can see this alive, Click here.

This Project is part of the Freecodecamp course.

Getting Started

Click in the download button and get the .zip file. Extract the contents of the zip file.

Or can clone this repository, just copy the git url and open your terminal and run git clone + repository url:

git clone https://github.com/ejgdev/Nightlife-Coordination-App.git

Prerequisites

It is necessary to have installed a package manager like npm or yarn.

Enviroment Keys configuration

Github OAuth Token keywords:

You need login in your Github account and enter this link. Then create New OAuth App:

If you want run this Project in local, you can use this configuration:

Then you can copy the Client ID as your GITHUB_KEY and your Client Secret as yor GITHUB_SECRET in your .env file.

MongoDB configuration

You Need an account in mlab, then create a database with two collections: places and users like the App's models.

Then in your .env file copy the MongoDB URI:

  • mongodb://<dbuser>:<dbpassword>@ds<deploymentnumber>.mlab.com:<id>/mydb

Note: In your mLab database website shows your URI link.

Yelp configuration

You Need an account in Yelp.com, then go to this Link and click create App.

  • Get your API Key from the Manage App page and paste in your .env file.

App configuration

Only left two more configuration.

  • one of them is the PORT, you can use your own port or by default is 8080.
  • The last one is the APP_URL, you can use your own url website or http://localhost:8080/.

You can see the .env.example file for references.

Installing

For install this repository, just need to run this command:

npm install

Start the Project

When everything is setup, you can run the project with this command:

npm run start:dev

Then open http://localhost:8080/ to see your app. By default run on port 8080.

Deployment

There are differents way to Deployment.

If you want use Heroku, you can follow this article.

When your heroku app is created, just need deploy with this command:

git push heroku master

Freecodecamp Information

Objective:

Build a full stack JavaScript app that is functionally similar to this page and deploy it to Heroku.

Note that for each project, you should create a new GitHub repository and a new Heroku project. If you can't remember how to do this, revisit This Page.

Here are the specific user stories you should implement for this project:

User Story:

  1. As an unauthenticated user, I can view all bars in my area.
  1. As an authenticated user, I can add myself to a bar to indicate I am going there tonight.
  1. As an authenticated user, I can remove myself from a bar if I no longer want to go there.
  1. As an unauthenticated user, when I login I should not have to search again.

Hint:

Try using the Yelp API to find venues in the cities your users search for. If you use Yelp's API, be sure to mention so in your app

Links

Demo App

Github

About

NodeJS and MongoDB

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors