M Wine Tasting is a wine journal web application where user can see, swirl, sniff, sip and savor a glass of wine and write about the sublime wine tasting experience.
- clone the BACKEND REPO
- Run the rail server
rails s -p 3001
- Clone this repository and cd into the directory
- Install all dependencies
$ npm install
- Run the app (simultaneously running the backend rail server)
npm start
- Program cloud storage so user can upload photos of the wine bottle on the Cloudinary.
- Execute the application state so user can add a new review with date, occasion, aroma, color, acidity level and taste.
- Present the previous reviews.
- Wine aroma wheel as a reference.
- Update the application state data of date, occasion, aroma, color, acidity level and taste using React lifecycle methods.
- Organize the code structure by separating components into folders
- Implement inverse data flow to send props up and down between parent components and child components
- Pulls wine reviews from the API using asynchronous fetches
- Models have
has_many
andbelongs_to
associations - Uses ActiveModelSerializers, which turns model attributes into JSON object keys
- D3 / Observable
- React.js
- Ruby on Rails API
- HTML/CSS
- Active Record
- postgresql
- Rack CORS
- ActiveModel::Serializer
- Semantc UI
- Wheelnav
index
|
App
|
ReviewPage
_____________|______________
| | |
ReviewForm Search ReviewCollection
|
|
ReviewCard
Mike Bostock's working demo https://github.com/observablehq/react-zoomable-sunburst