This full stack web site simulates a college freshman dorm roommate matching service. The incoming student enters a short profile and answers a 10 question survey on roommate attitudes and considerations. The student's profile and survey are saved to a mySQL database and compared to the other students. The top three matches are determined using a simple algorithm comparing answer sets and then displayed for the user. The site is hosted on Heroku.
-
- HTML, CSS, JavaScript (ES6 & some OOP), jQuery, Bootstrap, image placeholder generator web site links
- Node.js, Express.js, mySQL, JavaScript (ES6 & some OOP), NPM packages (express, mysql, path), API routes, Heroku
-
Github project : Dorm Roommate Match Repository
-
Deployed Heroku link: Dorm Roommate Match
-
-
- Use Cases seen in demo below
- new student enters profile/survey (validation demonstrated) - gets matches from database
- new student re-enters profile/survey(changing answers) - gets new matches from database - does not get themselves as a match
- another new student enter profile/survey with almost identical answers to above student - gets matches including above student as best match (assuming no other students have been added in the interium with identical answer sets)
- display of database students in JSON format via /api/get route
- Use Cases seen in demo below
home page
Survey page
Validation example
Results page
- express - for interactive command line response
- mysql - for database connectivity
- path - for absolute and relative path resolution
- none - Note: responsive (but needs a few tweaks) - best viewed at or above 1400x1100
- none necessary - use link to page deployed on Heroku
- navigate from home page to survey page
- enter name and link to web based photo if desired (default placeholder link will be used if no link entered)
- answer 10 question survey
- review results showing top 3 matches
- API/student link will retrieve all database students/survey answers and display in JSON form
- clean up the accuracy of responsiveness
- change footer from fixed on viewport to fixed to content
- more robust user profile with authentication
- more complex and comprehensive survey and match algorithm
Myles Carey [email protected]
- 1.0 - Initial Release
Thanks to beta testers - my 15yo & 17yo daughters and wife
Thanks to photograph via unsplash photographers : Master of Shots & Naassom Azevedo