Drama Deets is a platform for artists to anonymously share their reviews of art related businesses/classes/instructors.
Table of Contents
This project was created to provide artists a platform where they can anonymously voice their true opinions on art related businesses without the fear of being black-balled by their industry. It it is still being developed and more features will continue be added.
Currently user’s can only leave on review per business as to prevent people from spamming businesses. Also user’s have the ability to edit or delete their review at anytime.
The admin account for the app has the ability to add/edit/delete businesses based on what user’s are asking for. They also have the ability to delete or edit any review that is found offensive.
- React
- Redux
- Google Maps API
- Flask
To get a local copy up and running follow these simple example steps.
First you will want to clone this repo and then change directories to the react-app directory, from there you will run this from your command line.
- npm
npm install
-
Get a free API Key at https://developers.google.com/maps/documentation/javascript/get-api-key
-
Clone the repo
git clone https://github.com/ryanblack045/DramaDeets.git
-
Change directories to the react-app directory, from there you will run this from your command line.
npm install
-
Create a
.envinside the react-app directory with this information.REACT_APP_BASE_URL=http://localhost:5000 REACT_APP_GOOGLE_KEY="yourKey"
-
Create a postgres database and connect it to the app.
-
Create a
.envfrom the root directory with this information.FLASK_APP=app FLASK_ENV=development SECRET_KEY=yourSecretKey DATABASE_URL=postgresql://YOURDATABASEUSERNAME:YOURDATABASEPASSWORD@localhost/YOURDATABASENAME
-
Get into your pipenv, migrate your database, seed your database, and run your flask app
pipenv shell
flask db upgrade
flask seed all
flask run
-
Run this command from the react-app directory
npm start
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Ryan Black - RyanBlack045@gmail.com
Project Link: https://github.com/ryanblack045/DramaDeets
-
Users
- User registration with validations
- Guest User for demonstration
- Create/Edit/Delete Review of a business (limited to one review per user)
-
Businesses
- Will have google map location with business info displayed
- Will display reviews/avg rating
-
Reviews
- User can create/edit review of business
-
Likes/Dislikes
- Users can like/dislike reviews for businesses
Stretch Goals
- Have an admin account that has ability to take down reviews/businesses(complete)
- Have a report button on reviews so admin can review if "proof" of review is real
- Users can search for businesses
- User must send "proof image" that they did business with the business they reviewed
- / (splash page for login/sign up modal)
- /home (displays home page when user logs in)
- /business/:id (business page)
- users
- GET api/users/:id -> get a single users info
- POST api/users => create a new user (returns userId and token)
- POST api/users/token => verifies user login and returns token for the user
- PUT api/users/:id -> edit a user's info
- DELETE api/users/:id => delete a user
- businesses
- GET api/businesses/:id => gets a single buisness (returns name, address, state, zipcode, imgurl , description)
- GET api/businesses => gets all of the buisnesses
- GET api/businesses/:type => gets all the buisnesses of a certain type
- reviews
- GET api/reviews/users/:id => gets all reviews from a single user
- GET api/buisnesses/:id/reviews => gets all reviews for a single buisness
- POST api/buisnesses/:id/reviews => create a new review for a single business
- PUT api/users/:id/reviews/:id => edit a review
- DELETE api/reviews/:id => delete a review
- Likes
- GET api/reviews/:id/likes => gets all likes for a single review
- POST api/reviews/:id/likes => adds a like to a single review
- Delete api/reviews/:id/likes =>
- Entity
- Backend info needed
- Session
- current user
- current post etc
- UI
- maintains UI (modal show etc)
- Errors
- any errors made by fetch calls/login etc


