Project: Member's Only

a members only message board

This is an Express app built to implement PassportJS authenication. It has three types of user accounts, User, Member, and Admin, with each type having different levels of access to information. Users are stored in a Mongo Database.

User Sign Up Page
User Sign In Page

Building this app helped me practice building a solution to create and authenticate users. Also learning how to give users different permissions. In my implementation upgrading an user account is as simple as knowing the correct url and access code. This app could be changed to generate a random string for the access code and have it sent to the email address on file. For this implementation i chose to keep it simple to focus on authentication first and foremost.

User Message View
Admin Message View

Admittingly, in the start of this project, separating the configuration of the passport authenication and the mongodb connection gave me some trouble. Most of the documentation has the configuration setup in the same file as the apps entry file. Setting up the configuration as a module and importing it in only needed a few tweaks from the example implementation.

Overall I was able to get a better grasp on authenication strategies and integrating them into a REST-like system.