https://what-to-do-7d9ec.firebaseapp.com/
What-to-do is a web application that checks various catagories of activity (Indoor, Outdoor, Dining, Shopping) and displays on a map nearby locations for said activity. The App can then pick a random activity or sort the activities by user favorites or blacklists.
The application was built using Ruby on Rails for the back-end and HTML5 CSS3 and Javascript on the front-end.
The Google Maps, Google Places, and Google GeoLocation API's were used in the creation of this app.
The Website Contains :
- A main page that shows the users location on the main map.
- Activity buttons that show all nearby catagorites of that activity
- A favorites mode that allows the user to search nearby catagories but only return what is included on their favorites list.
- A blacklist mode that allows the user to search nearby catagories but only returns what is isnt included on their blacklist.
- Vanilla Javascript
- HTML5
- CSS3
- Ruby on Rails
- Postgresql
- JWT
- Heroku
- Google Firebase
In order to run the backend of this project locally you will need Postgresql and Ruby on Rails
In order to run the frontend of this project locally you will need Node.js
-
Clone this repository
-
In your terminal cd into the Backend directory
-
bundle install the gems required to load this app
-
rails db:create to create the database
-
rails db:migrate to create the necessary tables in the database
-
rails db:seed to seed the database with some users and media queries
-
rails s to run the database's server on port 3000
-
In a separate terminal cd into the frontend directory
-
npm i lite-server to install lite-server
-
lite-server to run the frontend on port 3001
-
Then use the window that appears and have fun with the app
- The main page is where all the features are kept.
- At the very center of the page is the map which shows the user's general location with a blue marker representing the center of the map.
- Scroll down a little and there will be five different buttons each representing a catagory of activity. At a click, the webapp will search all open nearby activities based on the catagory and place a marker on the map of its location as well as display a list of all the activities below.
- once clicked a list of every activity will be listed below as well as four new buttons. The first from the left will randomly pick an item from the list, the second from the left will randomly pick one that is included in the users favorties, the third from the left will pick a random activity as long as it is not included in the user's blacklist, and the fourth button will clear all markers and items from the list.
- The user can also scroll down the list and pick a restaurant manually. On click the map will zoom in on the activities location and give a brief description of the location.
- The user can also opt to "Try Again" which will randomly pick another item out of the list if they did not like the activity that was presented to them.
From here the user can add or remove activities from their favroties list which can then searched through during the users activity search.
From here the user can add or remove activites from their blacklist which means they will never show up in a random search if prompted.
Kyle Petersen - Linked-In - [email protected]