Skip to content

rach-sc/The-GrapeVine-Docs

 
 

Repository files navigation

The GrapeVine

T3A2-A, Full Stack App (Part A)

A Team Project By: Jacqueline Cope & Nga Dang


Purpose

Following a few glasses of wine and plenty of conversation with our client, Vineyard Productions, we have been requested to create a full stack web application to support the wine lovers of Australia and Australian wine industry.

The purpose of the site is to bring people together on a dedicated platform where they can share their love of Australian wine and learn a tip or two along the way. This benefits the community of wine consumers at all levels to then be able to try recommended wines by those who have shared and contributed within the community.

In addition to sharing wine experiences, a dashboard of the most popular wines that users have liked or recommended will be available.

Functionality / Features

  • Age verification to ensure users are of legal age
  • Each week the website administrator will share a number of new wines, as posts, for users to share their opinions about
  • To participate in the community users must create an account, however non-users (guests) will have viewing access only and limited access to features
  • A registered and signed in user that is authenticated:
    • Has the ability to like a wine that has been posted, which will increase the popularity of the wine and may be displayed in the dashboard
    • Can comment on wine posts
    • Can delete or edit their own post
    • Cannot adjust or delete another person's comments
    • Has the ability to browse the catalogue of other contributors (other posts) and add comments accordingly
  • A guest may access and read all comments and see ratings without contributing. Contributing means making comments or participating in rating the wines
  • A Navbar to store all main links for easy navigation of the site, including login/sign-up
  • The site runs on the basis of trust, where the user may like a wine post by 'cheersing' (🥂) to like a post, following a similar concept to Facebook/Twitter. A user who has tried the wine and would like to recommend it to others can do so by ‘recommending’ (🎖) the wine.
  • The website will include filtering options to assist in the user search experience ie. wine type, grape, etc
  • The site will include wine ratings to show the most popular wines rated by users
  • The site will include 2 types of user accounts, including a website administrator as well as a standard user accounts. All users will login via the same login access
  • A website administrator will have the ability to delete inappropriate content of any user

Target Audience

  • The target audience will need to be at the right legal age for drinking. The user must be 18+
  • The App is targeted for users living in Australia at varying legal age groups specifically interested in Australian wines

Tech Stack

Frontend: React, HTML, CSS Backend: Rails API Database: PostgreSQL, AWS S3 Deployment: Heroku, Netlify DevOps: Git, GitHub, VSCode Testing: RSpec - Rails, JEST - JavaScript Utilities: Draw.io, Balsamiq Wireframes Project-management tools: Trello, Discord

React libraries:

  • JWT - user authentication/authorisation
  • Styled Components
  • React Bootstrap

Application Architecture Diagram

Application Architecture Diagram

Wireframes

Generic Home Page

Generic Home Page

Login

Login

Signup

Signup

Confirmed Login

Confirmed Login

Loggedin User Home Page

Loggedin User Home Page

Create Posting

Create Posting

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published