HeyMD
HeyMD is an online markdown note appplication. Visit it now!
test accounts
role |
name |
email |
password |
|
user |
user1 |
user1@gmail.com |
12345678 |
user |
user2 |
user2@gmail.com |
12345678 |
user |
user3 |
user3@gmail.com |
12345678 |
you can sign up your own account as well.
User stories and specs
Done
Progress before 09/17
- ✅ user can sign up with email
- ✅ user can sign in with email
- ✅ user can create a new post
- ✅ user can edit a post
- ✅ user can delete a post
- ✅ user can see all posts that he/she created, with differnt sorting choices and layouts
- ✅ post can be auto saved when editing
- ✅ user can search posts by keywords
Progress after 09/17
- ✅ user can publish a post and share with non-login user
- ✅ user can add other user as
- ✅ collaborator: view and edit
- ✅ multiple users can edit a post at the same time. built with
- ✅ socket.io (for multiple users collaboration)
- ✅ diff-match-patch (for doc differential synchronization)
- ✅ Web API (for locking caret)
- selectionStart
- setSelectionRange
- ✅ create notification and error message for users
In progress
- ✅ user can add other user as collaborator with different authority
- 🚧 viewer: view only
- ✅ collaborator: view and edit
- 🚧 owner: view, edit, and delete
- 🚧 user can edit the post offline, then save it when back to online
Optimization
- 🔸 consolidate variable names in store
- 🔸 create layout for loading spinning instead of component
- 🔸 move layout options' state to store for better management
- 🔸 use styled components only, instead of using SCSS and styled components at the same time
- 🔸 menu bar RWD
- 🔸 speed up the app
- ... and more
Future
Tech stack & resources
Tech stack:
- Backend
- Node
- Express
- mysql
- swagger
(api doc)
- Heroku
(deployment)
- Frontend
- React (with React Hook)
- react-redux
- redux-saga
- react-router
- styled-components
- for-editor
(markdown editor)
- github page
(deployment)
Resources:
Author
tsungtingdu (Tim)
Self-taught and trained in software development knowledge and skills, I am passionate about creating changes through technology.
You can find more about me here: