last update: 2021-08-16
App Name: twitClone
-
Design the login and register pages
-
Design database model
-
Make the frontend. (continuous)
-
Connect frontend with backend
-
Validating user input in register
-
Registering users to database
-
Logging in users.
-
Regex.
-
UI Errors.
-
404 Page.
-
add User auth: username[30] :no spaces, email, password.
-
Add Google Captcha in LOGIN and REGISTER(free).
-
Verify Google Captcha LOGIN and REGISTER
-
Display Errors from DB in Client (browser)
-
Sessions.
-
User Profile (view)
-
Edit User Profile
-
User Logout
-
Load Tweets from DB to client
-
Display timestamps for tweets similar to Twitter (1h, 18m, 1m)
-
Like Tweets
-
Follow & unfollow other users
-
Retweet
-
Comment on tweets
-
record / display/ update #Likes on a tweet
-
Dark & Light mode themes. colored themes as well.
- Add Chat (DM) feature
- dont store chat msgs in DB for more than X? hours. Clear them Auto. {#to save db space}**
- Add Sound to new message
- Or popup notifications when new message arrives (chat)
- also send notifications when User get a follow / liked tweet.
- chat template -> https://socketio-chat-template.templates.repl.co/
- Add auto hashtags feature. (Maybe we can limit hashtags to 5 MAX per tweet - auto) (live as typing)
- record the hashtags on the tweet in the DB (in an array). [ ]
- enable search by clicking on the hashtag , check the DB’s***{OmG!!!}
- Enable tagging by adding an @before a name when tweeting:: (DAMN:: we may need a faster DB engine to quickly search + display suggestions results as you type)
- If @tagged name not exists, it should NOT auto- generate link. Just appears as plain text
- ELSE, if exists, allow getting the person profile by clicking the @tagged name.
- (maybe later) allow PROFILE preview by hovering mouse on @tagged name!! (Faster DB needed)
- API endpoints
- Database optimization tips