knotes-client-sam-allister-mischa

Note Shark

Note Shark is an app to learn music notes. Look at the note, hear what it sounds like, and make your guess!
Note Shark employs a spaced-repition algorithm to track your progress, showing you notes that you’ve made a mistake on more frequently, helping you to quickly learn to read sheet music!

Contents

Tech stack

Front End with React.js and Redux

Note Shark combines an array of front-end javascript libraries.

For rendering and displaying content we use React.js.
State management is handled with Redux, and login/registration forms with Redux-form.
Routing is handled with react-router-dom.

Back End with Node.js, Express.js, MongoDB and Mongoose

Note Shark employs Node.js as the server-side runtime environment.
Routing and middleware are handled by express.js
Authentication is done with passport.js middleware, using JWT tokens in the local storage. Password encryption handled with bcrypt salted and hashed.
All persistent data is stored and accessed on Mongodb on mlab.com. Mongoose is used for various CRUD operations on the db, and for organizing data with the use of schemas and models.

Note Shark is hosted on heroku

Application
Server

Github repos here:

front-end: https://github.com/thinkful-ei25/knotes-client-sam-allister-mischa

back-end: https://github.com/thinkful-ei25/knotes-server-sam-allister-mischa

Front-end

Root-component: src/components/dashboard.js
All actions in src/actions

Back-end

Routes are defined in /routes

Routing in /index.js express’s app.use()

Data is accessed with models created with Mongoose schemas all in /models

Screenshots

Landing-Page

Dashboard

Progress Correct-Answer