Introduction of User Profiles that give additional context to users on the platform.
Proposed Solution
Create a new user_profiles table with columns for the additional profile data we want to capture. This table would relate to the existing users table via a foreign key constraint on the user_id column.
Proposed user_profiles table schema:
id (primary key)
user_id (foreign key referencing users.id)
bio (text)
website (text)
Linked Socials (if needed)
twitter (text)
facebook (text)
instagram (text)
Alternatives Considered
Storing profile data as JSON in a column on the users table. This could get messy as the data grows.
Creating separate tables for each type of profile data (bios, pictures, links, etc.). This seems overly complex.
Additional Context
Many users have requested the ability to provide more details about themselves beyond just a name and email address. User profiles would enhance the platform experience and allow users to represent themselves better.
This could also be useful for linking users to their respective timetables without looking them up all the time.
Possible Implementation Details
Create the user_profiles table migration
Add routes, controllers, and views for managing profile data
Update user registration/onboarding to allow setting up a profile
Give users the ability to edit their profile from their profile view.
Feature Request
Description
Introduction of User Profiles that give additional context to users on the platform.
Proposed Solution
Create a new
user_profiles
table with columns for the additional profile data we want to capture. This table would relate to the existingusers
table via a foreign key constraint on theuser_id
column.Proposed
user_profiles
table schema:id
(primary key)user_id
(foreign key referencingusers.id
)bio
(text)website
(text) Linked Socials (if needed)twitter
(text)facebook
(text)instagram
(text)Alternatives Considered
users
table. This could get messy as the data grows.Additional Context
Many users have requested the ability to provide more details about themselves beyond just a name and email address. User profiles would enhance the platform experience and allow users to represent themselves better.
This could also be useful for linking users to their respective timetables without looking them up all the time.
Possible Implementation Details
user_profiles
table migration