Authentication and Account Management
The system has several key user authentication and account management features designed to ensure that users have a seamless and secure experience:
- Users can sign up using email and password
- Users can sign up using third-party authentication providers such as Google and GitHub
- Users can log in using email and password
- Users can log out
- Users can reset their password
- Users can modify their profiles (profile image and username)
Community
The system has several key community management features designed to promote engagement and collaboration among users:
- Users can create communities (different types)
- Users can subscribe and unsubscribe to and from a community
- Admins can change or delete the community logo
- Admins can change community visibility
- Users can view and navigate to all public and restricted communities
Posts
The system has several key features designed to make it easy for users to create and view posts within communities:
- Users can create a post in a specific community with an optional image
- Users can view all posts from a community
- Users can open post to interact with them
- Users can view posts from subscribed communities
- Users can delete a post they have created
- Users can vote on a post
- Users can share a post
Comments
The web application has several key features designed to make it easy for users to engage with others by creating and viewing comments:
- Users can create a comment to reply to a post
- Users can view comments in a post
- Users can delete a comment they created
General
The system has several general features to make the site user-friendly and accessible:
- Logged-in users can view posts from various communities they are subscribed to in the home feed
- Logged-out users can view posts from all communities in order of likes
- System UI is responsive, hence it can be used on smartphones, tablets, or computers