Social - Interactions (Logic)
DomainsDOL AcademyUX207 words1 min read
Purpose
Phần tiêu đề “Purpose”- Cho phép tương tác học thuật tích cực trên nội dung: reaction, bình luận, chia sẻ theo quyền.
Scope
Phần tiêu đề “Scope”- Reactions: 👍🔥👏💡; 1 user/1 type/nội dung; cho phép đổi loại.
- Comments: tuyến tính, mention
@; chủ nội dung có thể tắt/bật. - Share: deeplink tuân thủ
visibility = public|followers|private; có thể rút chia sẻ.
Entities
Phần tiêu đề “Entities”- Reaction: { id, ref, type, userId, createdAt }.
- Comment: { id, threadRef, userId, body, createdAt, editedAt? }.
- ShareLink: { id, ref, visibility, createdAt, revokedAt? }.
Logic
Phần tiêu đề “Logic”- Visibility: tôn trọng quyền nội dung và hồ sơ; followers chỉ xem khi được phép.
- Highlight: bài điểm cao/tiến bộ lớn được gắn nhãn khi xuất hiện trong feed.
- Rate limit: giới hạn tần suất reaction/comment để tránh spam.
Flows
Phần tiêu đề “Flows”- React/Unreact/Change: toggle theo type; cập nhật đếm.
- Comment: tạo/sửa/xoá trong khung thời gian cho phép; mention gửi thông báo.
- Share: tạo link; rút chia sẻ → link 404/permission denied.
Edge cases
Phần tiêu đề “Edge cases”- Blocked users: ẩn comment/reaction của user bị chặn.
- Edit window: hết thời gian cho phép thì chỉ mod mới sửa/xoá.
Technical Notes
Phần tiêu đề “Technical Notes”- Đếm gọn: reaction_count, comment_count, share_count per content.
- Notifications:
Social/SOC_Notifications_Logic.md.