-
Notifications
You must be signed in to change notification settings - Fork 56
Add Shields.io badges to readme#11
Conversation
Hello, first of all, nice repository and thank you for your effort in creating it!
I just thought I'd add this as a suggested use of the API.
For an "in-action" example, I added a CodeChef badge with my global ranking on my own GitHub profile https://github.com/k3KAW8Pnf7mkmdSMPHz27/ (under hobbies, sometimes it can take 5 s to load, probably if the cache is invalidated).
It mostly work if the cache lifetime value is high enough, occasionally it shows an error message instead of my rank
Some thing to note that you might want to change, or I can address them later,
- The example images shown are not dynamic, but they can be made dynamic with a long HTTP cache lifetime. I can volunteer my account on the sites that I have, otherwise one can just pick anyone from top10 or a personal favourite competitive programmer (I'd go with Errichto based on his youtubes)
- The example code should probably have a HTTP cache lifetime value as well. The one I have is updated once a day, which is much more frequent than I need for my occasional monthly long codechef challenge Feel free to suggest what you consider to be a reasonable refresh time and I'll add it to the "code" examples.
- The badges/shields that I have not included does not have an icon on https://simpleicons.org/ . This is not a problem per say, as it is possible to use an image. I have not had time to do so. I can submit one/more PR whenever I have time to add more badges.
- Leetcode is listed on simpleicons but when I were writing the changes I kept getting "internal server error" and I am not sure why. I did not have time to look into it. I can probably submit a PR for that as well at some point in the future. Unfortunately, time is a limited resource
Hi, thanks for the appreciation and suggestion. |
Can you give more details on the Leetcode error? It's working fine with my username. |
This is strange. It does work with my username ( |
I compromised, I used my CodeChef and your Codeforces
Done. |
|
For the dynamic badges I also linked them to the platform's profile page, perhaps I should remove the link? |
Maybe we are missing some case. We'll find the problem and fix it. I opened an issue #12 for it. |
Not a problem . We can go with any contributor if they agree . |
I don't see any problem linking it to profile, maybe we should keep it . |
Nvm. I confused myself with the |
@k3KAW8Pnf7mkmdSMPHz27 this (~5s latency) is probably because @Abhijeet-AR has deployed this app on heroku free account and it kills the app due to longer periods of inactivity (AFAIK about heroku). Therefore, upon a new request after such a duration of inactivity, heroku respawns the app and that is where the latency is. @Abhijeet-AR can confirm this by observing the activity graphs in his heroku account. |
|
Aha. In that case I don't see it becoming an issue. Perhaps I were just unlucky with the Shields caching (1 hour) and Heroku killing it off |
Yes, in Heroku's free version server goes to sleep after 30 minutes of inactivity. I was thinking it was due to Shield, I didn't think about Heroku . |
|
That is strange. My (so far subjective, I have not looked into the details) impression is that I get the broken image every time Shields cache gets invalidated. |
Nope. I'm using safari. But I checked on chrome too, it's showing the same. If you changed it recently, once check if you made any mistake in URL. |
I have not, but I am using a different URL than this repository so perhaps. I'll see if I can look into it when I add more badges, it would be a shame if it doesn't work as intended. |
|
The "UNRESPONSIVE" is due to github caching, I think Ideally, we need the img src to have the value that is contained in "data-cannonical-src". But, github modifies that url. Read this. We'll probably need to purge Camo cache when this occurs. |
|
There are 2 hard problems in Computer Science:
We've hit cache-invalidation in this case. |
|
Yup. Sorry about that. The cache(s) made me believe this would work better out of the box. @Abhijeet-AR feel free to remove this use-case again. In addition to the potential cache issues, there is an issue when loading an image takes longer than 4 s. Given the Heroku startup time that can be problematic. |
|
I'll be quite busy for two weeks or so. I can revisit this issue afterward and see if I can come up with a workaround. |