Git Product home page Git Product logo

individual-project-sorting-hat's Introduction

Sorting Hat

Goals

The goal of this project is to test your knowledge and to have a FUN time stretching yourself on your FIRST independent application that will become a part of your portfolio.

Focus on MVP. Do not spend a ton of time styling initially. Hit functionality first and then spend time on the styling of the project using bootstrap.

  • READ THROUGH ALL OF THE INFORMATION BELOW before planning how you will tackle the project.
  • Check the Issue Tickets to organize your process. You will have all week in class to work on this in class.
  • PLEASE submit questions in help tickets if you need help. We will guide you to the resources that are available to you.
  • On Saturday, everyone will present how far they got AND their favorite piece of code that they wrote for everyone to share in the Glory!
  • MOST OF ALL HAVE FUN!!!!!

Instructions

You are in charge of bringing the Hogwarts sorting hat to life!

This is what the finished app should have:

  • To start off with, you will use a bootstrap card to have your sorting hat introduce itself and start the sorting process (by clicking on a button). The form should not be on the DOM until the button click happens.

  • A bootstrap form will then appear to fill in the student's name and a button to sort. This should then assign the student to a random house (Gryffindor, Hufflepuff, Ravenclaw, or Slytherin).

  • On sorting a student, the form should clear and a bootstrap card with the student's name and a random house assignment should print below the form.

  • You should also be able to expel a student after they have been sorted, which should remove their card from the student array and move them to Moldy Voldy's Army.

In the end, your app will look something like:

screencapture-drt-sorting-netlify-app-2022-04-23-14_28_47

Technical Requirements

  • You MUST plan your project and create issue tickets and a project board for your project
  • You MAY use the renderToDom() function that we worked on in class, but you also need to be able to explain it if you use it
  • You have to create a data structure for your project. Review all the elements that need to be on the DOM and create the structure accordingly
  • You must use Boostrap to style your page components
  • You must use a loop other than a for loop
  • Your JS file should be comprised of functions, no actions should happen in your code outside of a function except for your initial startApp() function
  • Your code MUST be YOUR code. Do not copy and paste code into your project. Type every bit of it out
  • Your HTML and JS should all have proper indentation
  • Helpful Form: An error message shows if a user tries to sort a student without filling out the form
  • Voldermort's Army: Create a separate container of cards that hold the cards for students that have been expelled. These should be styled differently from Hogwarts students.
  • Add filter buttons to filter the non-expelled students by house

Expel Button Hints

Think of a way you can expel students without just hiding those divs on the page. This would mean when the button is clicked you modify the array of students and pass the new array into your renderToDom() function. Double hint - put a unique id in the student object when you create them.

Optional Bonus

  • House Colors: The color of the student's card changes depending on which house they were sorted.
  • Card Sorting/Ordering: Sort the student cards by some criteria (i.e. alphabetically by name, by house)

individual-project-sorting-hat's People

Contributors

gitnitrotitan avatar

Watchers

 avatar

individual-project-sorting-hat's Issues

Technical Requirements

Technical Requirements

  • You MUST plan your project and create issue tickets and a project board fro your project
  • You MAY use the printToDom() function that we worked on in class, but you also need to be able to explain it if you use it
  • You have to create a data structure for your project. Review all the elements that need to be on the DOM and create the structure accordingly
  • You must use Boostrap to style your page components
  • You must use a loop other than a for loop
  • Your JS file should be comprised of functions, no actions should happen in your code outside of a function except for your initial init() function
  • Your code MUST be YOUR code. Do not copy and paste code into your project. Type every bit of it out
  • Your HTML and JS should all have proper indentation
  • Helpful Form: An error message shows if a user tries to sort a student without filling out the form
  • You should apply responsive design to your page (aka your app should be designed to work on small screens)

Add Button Hints

When a new student is added an object should be created and that object should be pushed into an array of students that then prints to the dom.

Expel Button Hints

Think of a way you can expel students without just hiding those divs on the page. This would mean when the button is clicked you modify the array of students and pass the new array into your print to dom function. Double hint - put a unique id in the student object when you create them.

Optional Bonus

Optional Bonus

  • House Colors: The color of the student's card changes depending on which house they were sorted.
  • Card Ordering: Sort the student cards by some criteria (i.e. alphabetically by name, by house)
  • Voldermort's Army: Create a separate container of cards that hold the cards for students that have been expelled. These should be styled differently from Hogwarts students.

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.