Component Hierarchy - michael-berman/Blue-Prints GitHub Wiki

General

App

  • Navbar
  • MainApp (all following pages will be in this component)
  • Footer

Navbar

  • Image link to homepage with BluePrints headline
  • Project search text input
    • Project Search Component
    • Will be also used to Project featured view
    • (Give state of projects that were rendered using keywords to mapStatetoProps)
    • Dispatch will have fetch posts for specific keywords
  • Feature button
    • Project Feature Component
  • Create Project button
    • Project form component
  • Login/Signup links
    • Session form component
    • Form will change according to which link was pressed

Footer

  • Footer component
    • LinkedIn link
    • Github repo link

MainApp

  • Sliding home page component
    • 3 pages of (Let's make a ...)
  • Featured home page component
    • Could use general featured project component
    • Project item component
      • mapStatetoProps contains title, author, and category
      • mapDispatchtoProps contains fetchProject


SessionForm/Signup Page

  • Login form component
    • Only difference between login and signup in the form is the email field for signup
    • Google button for login/signup with google login component (bonus)
    • mapStatetoProps give state to input fields
    • mapDispatchtoProps contains fetchCurrentUser for login and createUser for signup
  • Article html element for welcome to blue prints


Project page view

  • Project show component
    • mapStatetoProps contains project name, author, category and pictures
    • mapDispatchtoProps contains fetchProject, fetchCategory and fetchComments
    • Project show item container for showing the content
    • Project sidebar component
  • Comment show component
    • mapStatetoProps contains project id
  • Comment form component
    • mapStatetoProps will have input field
    • mapDispatchtoProps will dispatch createComment


Project create view

  • Project form container
    • add image input field
    • Project step Item component (for each step of project)
      • each step has a picture and text
  • Add step button to render a new project step component
  • Publish blueprint that dispatches createProject

Bonus (Will work on these once the above are finished)

  • Category Show Page
  • Favorites for a project show page