Core anchors and links
flowchart LR
User(User) ---- |writes| Post(Post)
Post(Post) ---- |has| Comment(Comment)
User(User) ---- |writes| Comment(Comment)
User(User) ---- |likes| Post(Post)
User(User) ---- |likes| Comment(Comment)
User(User) ---- |favs| Post(Post)
User(User) ---- |uploads| SZI(Image)
Post(Post) ---- |has attached| SZI(Image)
Comment(Comment) ---- |has attached| SZI(Image)
User(User) ---- |creates| KText(KText)
Post(Post) ---- |has| Embed(Embed)
Social network (relationships between users)
flowchart LR
User(User) ---- |is subscribed to| AnotherUser(User2)
User(User) ---- |is subscribed to private subfeed of| AnotherUser(User2)
%% User(User) ---- |invites to subscribe to private subfeed of| AnotherUser(User2)
User(User) ---- |blocks| AnotherUser(User)
User(User) ---- |hides posts of| AnotherUser(User2)
User(User) ---- |hides comments of| AnotherUser(User2)
User2(User) ---- |is subscribed to| Group(Group)
User2(User) ---- |is admin of| Group(Group)
Timeline structure
flowchart LR
subgraph "Low-level timeline view"
direction LR
Post(Post) ---> |is assigned to| Timeline(Timeline)
Group(Group) ---> |has associated| Timeline(Timeline)
User(User) ---> |'s primary feed has associated| Timeline(Timeline)
User(User) ---> |'s private subfeed has associated| Timeline(Timeline)
User(User) ---> |'s FYEO feed has associated| Timeline(Timeline)
User(User) ---> |'s incoming DMs feed has associated| Timeline(Timeline)
User(User) ---> |'s outgoing DMs feed has associated| Timeline(Timeline)
end
subgraph "User-friendly feeds view"
direction LR
Post2(Post) ---> |is posted to primary feed of| User2(User)
Post2(Post) ---> |is posted to private subfeed of| User2(User)
Post2(Post) ---> |is posted to FYEO feed of| User2(User)
Post2(Post) ---> |is posted to| Group2(Group)
User4(User) ---> |sends| Post3(Post)
Post3(Post) ---> |as DM to| User3(User)
end
How subscription and invites works
flowchart LR
subgraph "Group subscriptions"
direction LR
User5_1(User) ---- |requests subscription| GroupSR(Group subscription request)
Group(Group) ---- |'s admins receive| GroupSR(Group subscription request)
User6_1(User 1) ---- |initiates| GroupInvite(Group invite)
User6_2(User 2) ---- |receives| GroupInvite(Group invite)
GroupInvite(Group invite) ---- |is for the| Group2(Group)
end
subgraph "User-to-user subscriptions"
direction LR
User2_1(User) ---- |invites to their private subfeed| User2_2(User)
User3_1(User 1) ---- |initates| SubscriptionRequest(Private subfeed subscription request)
User3_2(User 2) ---- |makes decision on| SubscriptionRequest(Private subfeed subscription request)
User4_1(User 1) ---- |initates| SubscriptionRequest2(Primary feed subscription request)
User4_2(User 2) ---- |makes decision on| SubscriptionRequest2(Primary feed subscription request)
end
subgraph "Core subscription"
direction LR
User(User) ---- |is subscribed to| Timeline(Timeline)
User(User) ---- |created| Sublist(Sublist)
Sublist(Sublist) ---- |includes| Timeline(Timeline)
end
Customization
flowchart LR
User(User) ---- |sets as avatar| SZI(Image)
User(User) ---- |creates| APIToken(API Tokens)
User(User) ---- |prefers| Language(Languages)