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.
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.
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.