We were talking about this at our meeting yesterday, of having a "stream" of different events relating to open source of our club. For example:
Alex Garcia just accepted Pull Request Fix footer on front page on os-ucsd/website2 hours agoChau Vu just pushed 7 commits to os-ucsd/messenger-bot12 hours agoVivian Lee just created the Issue Posts fail to load on mobile in os-ucsd/tutorials3 days ago
"Stream" events
Pull requests (created, closed)
Issues (created, closed, commented on?)
Commits made
Releases made
What repositories should be included:
All os-ucsd repos
Our members as well?
Here's an idea: Let's create a github topic called os-ucsd, that we can put on all of our repositories. Then, if someone wants their own repository to show up in the stream, they just have to put the os-ucsd topic on their repo. For example, if someone creates a ucsd class scraper or something, and it's owned by them and not the os-ucsd org, they just add the label os-ucsd and all the PRs/issues/releases/whatever would show up in the stream.
Technical Stuff
Github has an API we can use to get info about public repos. We could either use it client-side, meaning we have some javascript code on the website that does fetching on someones browser everytime they open the site, or server-side, meaning we scrape the data once on a server we own, they serve that data to the website.
Client-side has more rate-limiting, only ~60 calls i think. Server side means we have to set up a server, and that we'd have to continuously collect the data (on a cronjob, maybe every 15mins or so). If we have a lot of repos and commits/prs/issues to fetch, then server side may be our only option.
Design
There are a ton of cool ways we could display this. Timelines, profile pictures or project pictures, showing snippets of code or text. Let me know what you all think below, post some mockups or designs!
We were talking about this at our meeting yesterday, of having a "stream" of different events relating to open source of our club. For example:
"Stream" events
What repositories should be included:
os-ucsd
reposHere's an idea: Let's create a github topic called
os-ucsd
, that we can put on all of our repositories. Then, if someone wants their own repository to show up in the stream, they just have to put theos-ucsd
topic on their repo. For example, if someone creates a ucsd class scraper or something, and it's owned by them and not theos-ucsd
org, they just add the labelos-ucsd
and all the PRs/issues/releases/whatever would show up in the stream.Technical Stuff
Github has an API we can use to get info about public repos. We could either use it client-side, meaning we have some javascript code on the website that does fetching on someones browser everytime they open the site, or server-side, meaning we scrape the data once on a server we own, they serve that data to the website.
Client-side has more rate-limiting, only ~60 calls i think. Server side means we have to set up a server, and that we'd have to continuously collect the data (on a cronjob, maybe every 15mins or so). If we have a lot of repos and commits/prs/issues to fetch, then server side may be our only option.
Design
There are a ton of cool ways we could display this. Timelines, profile pictures or project pictures, showing snippets of code or text. Let me know what you all think below, post some mockups or designs!
cc @blau0123 @BrandonFoey @cqvu @viviaann