Coder Social home page Coder Social logo

flash-card-app's Introduction

#NYCDA Flash Cards

##A gamified study guide

###Purpose:

This application aims to make the vast amount of information that the NYCDA teaches its students into a fun, gamified study guide

NYCDA students have often said that they will learn a language or topic (i.e. Javascript) one week, but then have to do some serious re-reading of lecture material when the course comes back to that topic, owning to the nature of a fast-paced coding boot-camp. This app aims to make the material re-call much more fun and easier. Hopefully, the students will also learn more in the long run.

##Features:

  • Makes use of Devise for authentication
  • An admin model, to control all aspects of the site and to verify user created content is correct
  • Flash cards organized into levels, that correspond with the NYCDA WDI curriculum
  • Sets of public flash cards, created by users who have completed all the levels
  • Quizzes to test knowledge
  • Possible feature: one on one timed challenges
  • Possible feature: auto-detect correct code snippet challenges as you type

##Usage:

###General: The user will sign up for an account, and be directed to their dashboard. The user can then start working through the first level of flash cards, roughly equivalent to the first week of the NYCDA WDI course. When the user feels they are ready, the can choose to take the level's quiz. If they pass with 80% or higher, then they may advanced. If not, they may take the quiz again. The quizzes are created randomly from a list of possible questions.

###Public cards: Once the user has achieved all the levels, they may contribute to the public cards database. The idea is that if the user has extensive knowledge on a particular topic, they can create flash cards on that topic that others may view and study.

  • A possible extension of this is for user created quizzes and levels.

###Private cards: A user may create private cards at any time. These are for their own personal use, and are only viewable by the user who created them. An admin does not have access to private cards. They are for general note-taking and to fill in any gaps that the user feels the pre-loaded cards did not address.

###Credibility: Credibility addresses the concern that a user may not know whether a fact stated on a public card should be considered legitimate or not. The user accrues credibility by completing each level. When the last level is complete, the user will have enough credibility to create public cards. If the card is upvoted, the user gain credibility. If the card is down voted, the user loses credibility. There is a margin for error built in after the last level is achieved, lest the user's first created card gets heavily down voted, and an admin can always adjust the credibility if there is an error.

###Future plans:

  • Scalable to other NYCDA courses, such as iPhone app dev, the front-end night classes, and any future classes
  • Scalable to other coding boot camps

####This application was created by Seth, Alan, and Richard.

flash-card-app's People

Contributors

jonathanwexler avatar richardmable avatar sethlieberman avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

flash-card-app's Issues

Readme

Keep the readme current and make it look professional.

Real Seed File

Create a seed file with real content. How much content depends on how much time we have. I would leave this till later in the week.

Add avatar to profiles

Add either paperclip or another gem to allow users to upload avatars. Have a good default avatar.

Quiz- submit button

User needs to submit the quiz with submit button. The quiz score needs to be populated and stored.

Create Wiki

Create a basic wiki demonstrating how to use our application.

User can take a quiz

User can take a quiz. A quiz consists of questions. It will be multiple choice and the user selects via radio buttons or checkbox. We will pull answers via Level.find(1).cards.find(randomnumber).answer and first limit the random number by checking the length of the returned array - 1 via Level.find(1).cards.length. In the controller, we will write logic that checks the correct answers, and then if the user passes the quiz, we will update the users' profile with the correct credibility and level.

Seed File

Create a basic seed file, just enough to get started and play around with.

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.