Giter Site home page Giter Site logo

make_it_work's Introduction

Make It Work

This Rails application is intended to be used as an opportunity for students to measure their own learning from week 2 of module 2 of the back-end program of the Turing School of Software & Design.

Fork this repository and clone your newly created repository. At the end of 1.5 hours, push your code to your repository and create a pull request to this repository.

Be sure to read all user stories BEFORE beginning your work


Setup

  • Fork this repository
  • Clone down your forked repository
  • Perform the usual setup steps after cloning a Rails application:
    • bundle install
    • bundle update
    • rake db:{create,migrate,seed}

Submission

When you have completed this challenge, submit by creating a Pull Request back to the turingschool-examples repo. Include the following information:

  • Your Name
  • A reflection on how you felt you did with this challenge and what story you got through

Requirements

  • TDD all new work; any model METHODS you write must be fully tested.

Not Required

  • No visual styling is required or expected

Before Starting User Stories

  • This challenge uses a one-to-many and a many-to-many relationship (your migrations are already built for your one-to-many), be sure to check your setup/schema carefully.
  • All model tests for validations and relationships have been made.
  • You will have 12 failing model tests as soon as you set up this challenge and run your tests (Let your instructor know if you are not seeing 12 failing tests)
  • Get these tests to pass before moving on to the user stories below.

Challenge Description

Project Runway! During a short period of time, contestants are given a challenge to create projects (outfits). Challenges have themes (For example: Recycled Material, Bridal Wear). Projects have a name and a material that is used. Contestants have a name, age, hometown, and years of experience. Challenges have many projects, projects belong to a challenge. Projects can have multiple contestants working on them, and contestants can work on different projects throughout the show.


User Stories

User Story 1 of 4

As a visitor,
When I visit a project's show page ("/projects/:id"),
I see that project's name and material
And I also see the theme of the challenge that this project belongs to.
(e.g.    Litfit
    Material: Lamp Shade
  Challenge Theme: Apartment Furnishings)


User Story 2 of 4

As a visitor,
When I visit the contestants index page ("/contestants")
I see a list of names of all the contestants
And under each contestants name I see a list of the projects (names) that they've been on

(e.g.   Kentaro Kameyama
        Projects: Litfit, Rug Tuxedo

        Jay McCarroll
        Projects: LeatherFeather)
User Story 3 of 4
As a visitor,
When I visit a project's show page
I see a count of the number of contestants on this project

(e.g.    Litfit
    Material: Lamp Shade
  Challenge Theme: Apartment Furnishings
  Number of Contestants: 3 )
User Story 4 of 4

As a visitor,
When I visit a project's show page
I see the average years of experience for the contestants that worked on that project
(e.g.    Litfit
    Material: Lamp Shade
  Challenge Theme: Apartment Furnishings
  Number of Contestants: 3
  Average Contestant Experience: 10.25 years)

Extension

User Story Extension - Adding a contestant to a project

As a visitor,
When I visit a project's show page
I see a form to add a contestant to this project
When I fill out a field with an existing contestants id
And hit "Add Contestant To Project"
I'm taken back to the project's show page
And I see that the number of contestants has increased by 1
And when I visit the contestants index page
I see that project listed under that contestant's name

make_it_work's People

Contributors

raymondknguyen avatar megstang avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.