Start with user accounts, workspaces and teams
Looking back on the past year as I’ve been building a SaaS (Software as a Service) from scratch, I think one the most foundational mistake I made was not thinking in terms of workspaces (we started with a single team) in the way I thought about how we would model relationships between individuals and groups of people.
A user is someone who has created an account on the SaaS. They have profile information and the content they create is associated with them.
A workspace is strictly a billing and membership entity**.**
- Owner - The role that is able to pay for the workspace. They have all the permissions and privileges of an admin and a member
- Admin - The role is able to create teams and add members
- Member - The role is able to do basic actions in a workspace
A team is able is where all of the action happens for the SaaS. It has Admin and Member roles.