I've been working on developing minimum viable product (MVP) starters since I work with a lot of startups and entrepreneurs. This starter is for B2B businesses, creating a full user-auth workflow with basic user management. I would not consider this a beginner project, as it integrates quite a lot, so if you're just starting out, don't be overwhelmed! Though I hope it can be a useful reference for those looking to expand their skills.
It uses a Quasar frontend (cross-platform Vue component framework), Feathers backend, Amazon SES for transactional emails, and MongoDB as the datastore. It can be run with Docker Compose, or separately in their respective repos for development.
This starter is relatively basic. It has the following features:
- User Registration with email verification
- User Login/Logout
- Password Reset
- Update Profile
- Update Email
- Update Password
- User Roles
- User Administration (update users, including user role, send password reset, deactivate user)
I'll be breaking this down into a multi-part series. I'm not sure how many parts there will be as of this writing - I'll cover as much makes sense. Leave comments with questions, thoughts, suggestions, and I'll incorporate it into future sections. I'm also open to peer reviews of the code and suggestions for improvement!
Below are some links to technology resources that are used in this project. Otherwise, let's move onto the next part, where I'll review the client code.
Note: I would advise against copying/pasting any code snippets found in any article in this series and instead go directly to the repository to view the code. Due to the amount of code involved, I've omitted lines of code in these articles for brevity. Please view the repo for the full source code.