/Webspire

Primary LanguageJavaScript

README

Features

1. Sign Up

     (i) Google Sign up

2. Login

     (i) Google Sign in

3. CRUD Post

     (i) Adding Videos along with images

4. Add/Delete Story

     (i) Shows dummy, interesting stories for new users

5. Like a Post

    (i) Notification will be sent to the user who posted it

6. Add/Delete a Comment on a Post

7. Chatting

8. Forgot Password

     (i) Mail sent via Mailer

9. Notification to people

     (i) Received friend request
     (ii) Accepted/Rejected friend request
     (iii) Desktop Notification

10. Search

     (i) Auto-showing search suggestions for users

11. Pagination

    (i) Infinite Scrolling

12. Share a post

13. Send friend request

    (i) Accepted/Rejected friend request
    (ii) Remove existing friend

14. Activities

    (i) Can view friend request status
    (ii) If someone liked your post, notification will be shown

Sign Up

As a user, I should be able to Sign up in a seamless way. If any error found, display error message and be in the same page. If entered valid details, then lead to Login Page. In this page, user can choose which role he wants to sign up as. Google Sign up is available in which password will be set randomly.


Login

As a user, I should be able to login in a proper way. User can only be able to login if the user has already signed up in this website. User should enter the correct Mail Id and Password to go to next page; else display error message. Google Sign in is available in which user can easilt sign in using Google mail


CRUD Post

User should be able to post an Image or Video according to their wish but its size should be less than 20MB in size. User can edit the post whenever. Only respective users should be able to edit or delete the post.


Add/Delete Story

User can share their story other than post which will be auto-deleted after 24 hours.If a user wishes then he can also delete it. User can only post 1 story at a time.


Like a Post

Users can like a post which others have posted. If user has already liked a post, then another click will dislike it. Likes will be updated without refresh


Add/Delete Comment on Post

Users can comment on a post which they wish. They can share their thoughts on the post. If any harmful comments are found, then users can also report a post to admin.


Chatting

Users can also chat with their friends. Limited the message length to 1000 characters.

Forgot Password

When user forgot their password, they can use this feature to reset their password through the email-id in which they have registered.

Notification to people

Notifications will be sent to users regularly via an API. In addition web notification will be sent to users when friend request are sent or when other users like user's post.

Search

Auto suggestions will be shown to users when searching for a user or a post. Used an API for showing suggestions.

Pagination

When user scrolls down to the bottom of the page, posts will be appended automatically.

Share a Post

User can copy the url of a post and share it to other users in message


Run in local ?

Is the latest deployment broken...? No worries, I have dockerized the application and pushed it to Docker hub so that developers like us can easily run it in local... Link to docker hub: https://hub.docker.com/r/mohammedhasan007/webspire

Run these commands:

    git clone https://github.com/R-Mohammed-Hasan/Webspire.git
    cd <dir_name_of_the_project_cloned>
    docker-compose up