MEAN Stack application that assists parents/caregivers in monitoring and developing their kid's speech therapy.
- Add words to a database of words and phrases with a filter by search term
- If you add 2 or more words the element will be saved as a phrase
- Display statistics (single words, 2 word phrases, 3 word phrases, different sounds)
- Display history bar graph of progress via d3.js
- A guide is present that contains recommended words to practice and shows which words are already in the child's vocabulary
- Add admin panel for managing users
- Add 'reset/forgot password' via e-mail / express-mailer
- Add age instead of date in bar chart, reduce ticks
- Add Google Analytics
- express
- morgan
- mongoose
- crypto
- body-parser
- jsonwebtoken
- passport
- passport-local
- express-jwt
- D3.js
- angularJS 1.x
GET - /home GET - /register GET - /login GET - /words = add, edit, delete words /words /stats GET - /goals = add, edit, delete goals /stats GET - /progress
server.js - combine all server code together
/app_api
/config
config.js - contains secret key and mongodb uri
passport.js - use passport Local strategy as middleware
/controllers
auth.js - authentication code
words.js - CRUD for word
goals.js - CRUD for goals
progress.js - display stats, graphs
admin.js -
/models
users.js - user model, with validating and setting passwords
words.js - word model
goals.js - goal model
guide.js -
/routes
routes.js
/app_client
List a child's
User
_id
username
email
password (hash, salt)
child_name
dob
words - array of ObjectId
date_signedup
Words
_id
user_id
word
sound
category
date_added
Guide
_id
word
category
/app_client
index.html -
core.js -
/auth
auth.controller.js
auth.view.html
/word
word.controller.js
word.view.html
/goal
goal.controller.js
goal.view.html
/common
/directives
/navigation
/services
auth.service.js
/css
/js
/images
Neptune Michael Cabelin
MIT