http://a3-ebgoldstein.glitch.me
This application allows users to submit their jokes and facts for the entertainment of all! The primary challenges I faced during the development of this app were persistent storage across sessions, and creation of user accounts & authentication. I used local strategy for passport was chosen for its simplicity, along with bcrypt for basic password hashing. I chose Bootstrap as my CSS framework, as it was very well documented, simple, but elegant, and very easy to use. It's very common, so the app has a familiar feel. I made no modifications to the framework.
- Passport - A simple, flexible authentication solution for express-based applications.
- Morgan - An HTTP request logger. Helpful for debugging.
- Body-Parser - Parsing HTTP request bodies. Used for accessing form and JSON data from the client.
- Express-session - HTTP session management; Store user data to associate requests with the logged in user.
- serve-favicon - Set the favicon on all pages without adding a link tag to each page.
- Tech Achievement 1: I hashed passwords using bcrypt before storing them in the database for better security
- Tech Achievement 2: I used over ten Express middleware packages, enabling me to create a server that...
- Design Achievement 1: I used bootstrap to create a design that was elegant, familiar, and simple. I tried to be consistent with my usage of each type of button.
- Design Achievement 2: I tested on mobile, and the CSS as well as the layout works well.
- Design Achievement 3: I tested the app with multiple simultaneous users, and found that the sessions are completely separate, and that one user can edit and another can view at the same time.