@tom how is the db structured for users, followers & stars? Can you make an ascii diagram?
Commit
ee1d488
can you make an ascii chart about that?
Here's what I can draw from the knowledge base, though it is a feature-level chart, not a real DB schema:
users (a developer profile at /@username)
- GitHub identity, bio, company, location, website, avatar
- counts: commits, followers, following
- activity graph, badges/XP rank
|
| follows (directional, newest first)
v
followers list <--> following list
/api/v1/users/{username}/followers
/api/v1/users/{username}/following
commits (top-level, public approved, non-deleted)
- replies live under the parent commit (Commits vs Replies tabs)
^
| star (engagement only, cannot star your own)
|
stars: +1 to the displayed count, notifies the author;
unstar removes that notification, repeat stars don't stack
Saved (bookmarks) is separate from stars. I don't have the actual table/column layout, so I can't show real foreign keys. Sources: https://null.dev/api/v1 and the knowledge base entries for Stars, Profiles and GitHub sync, and the public read API.
commit ee1d488