21

Screenshot

website screenshot

About

Rank Overflow is a website to calculate your Stack Overflow reputation rank in all leagues easily and with one click.

I created this page because I wanted to know my percentage of my year league when the "top n%" badge is displaying the quarter. Also, if your reputation change is too low for this badge to display (e.g. top 10%, but you are top 12%), you can still find it out.

We use the Stack Exchange Authentication to get a the profile IDs on the sites you happen to have an account on.

You need at least 200 reputation on the site you want to check for this to work.

This is a limitation by SE, not by us, as the leagues site shows only data for 200+ rep users.

How it works

The website backend gets the rendered HTML from the Stack Exchange Leagues site for the community site you selected, and that for each period (week, month, quarter, year and all time) twice (first time to get your rank and the last page number, second time for the rank of the lowest ranked user). The required values get extracted and are shown as results.
The required data comes from the authentication and the leagues website.

If anyone has concerns about scraping too much/too often, this only happens if the user presses the Calculate ranks button, never automatically.

License

This website is released under the MIT License.

How do I get to it?

As of May 2021, I decided to no longer host RankOverflow. You can still run it yourself, as the code remains public on GitHub.

Platform

Rank Overflow works in the following browsers (and basically on each browser that supports the fetch() API):

  • Chrome 42+
  • Firefox 39+
  • Opera 29+
  • Mac OS Safari 10.1+
  • Edge 14+
  • Android Browser 56+
  • Chrome for Android 61+
  • Firefox for Android 56+
  • Opera Mobile 47+
  • Samsung Internet 4+
  • QQ Browser 1.2+
  • Baidu Browser 7.12+
  • Safari & Chrome for iOS 10.3+

The following browsers are NOT supported:

  • Internet Explorer & IE Mobile (all versions)
  • Edge 12 & 13
  • Opera Mini (all versions)
  • Blackberry Browser (all versions)
  • UC Browser for Android (all versions)

Contact

This website was created by me and I am the only key contributor at the moment.
Please submit an issue on GitHub if you run into errors.
For feedback, feel free to leave a comment under this question.

Code

The page was built using Flask/Python and Bootstrap 4. The static files are served over Apache NGINX, API and stuff like that is provided via WSGI.

12
  • Just checked your app. Interesting :). I'm having some trouble with the API that I suppose you have the answer for. If you have time to check, please visit: stackapps.com/questions/7677/… . Thanks Nov 25, 2017 at 20:36
  • Is there a way of skipping to your profile straight away so you don't have to keep putting the link in? May 31, 2018 at 20:47
  • 1
    Is there a reason this is only for StackOverflow? Any chance it could be made usable for other StackExchange sites, e.g. SuperUser, AskUbuntu, etc.?
    – 3D1T0R
    Jun 1, 2018 at 0:59
  • @JakeSymons Currently, no. But there's a way to implement this with the API. I've created an issue on GitHub for that.
    – Filnor
    Jun 1, 2018 at 6:20
  • 1
    @3D1T0R That was an idea I had quite early (but never implemented it), and it is indeed possible. As you can see in code line, the ID 1 (which is Stack Overflow) is passed. I could change that ID to be a parameter and add a site selection. There are some concerns that I've pointed out in this GitHub issue I created for that.
    – Filnor
    Jun 1, 2018 at 7:21
  • 1
    @Filnor: At the time I was just thinking I'd like to use it on SuperUser, but for those of us who aren't Jon Skeet, we're more likely to actually be in a decently high top x% of the smaller sites. I see no reason why others wouldn't want to use this with whichever beta sites they frequent (as I start to gain some more rep, I know I would). It's too bad that "we can't read the numeric site id from the API". I feel like that should be available, don't you?
    – 3D1T0R
    Jun 1, 2018 at 7:39
  • @3D1T0R Yes it should be available, but a SO mod said once in chat that the "API development is quite dead", so the limitations are on a level I can't control.
    – Filnor
    Jun 1, 2018 at 8:00
  • @Filnor: The same person also said a little later in the same thread that scraping info from the website is OK if it only happens when someone clicks a button on a website. So, (assuming you cache what you find so it doesn't happen every time someone clicks it), couldn't the "numeric site ID" of every site be scraped from stackexchange.com/leagues if someone tries to check one that's not already known?
    – 3D1T0R
    Jun 1, 2018 at 19:50
  • 1
    @3D1T0R Good point (Sorry for the late reply, didn't saw it until now). It's possible to scrape that and I need to add that as next as I got stuck at this point after implementing the SE auth and the basics of the site switcher.
    – Filnor
    Jun 5, 2018 at 12:55
  • 2
    Both SE authentication and the expansion for all SE site are now implemented and live
    – Filnor
    Jun 6, 2018 at 8:50
  • @Filnor: If I'm not in the top x% for a time period, it shows "top % this ..." without a number before the %.
    – 3D1T0R
    Jun 13, 2018 at 16:48
  • 1
    @3D1T0R I finally got to fix that.
    – Filnor
    Sep 7, 2018 at 14:04

2 Answers 2

4

Clicking the "Authenticate" button does nothing. When I look at the console, I get this error:

ReferenceError: seAuth is not defined

I am using Firefox 56, which is listed as a supported browser.

0
4

Change log

Version 2.2(-ish)

  • Added a subsite scoreboard for helpful flags of SOBotics members.
  • Small improvements in the website's text and hiding of ranks that you don't have (Instead of just displaying a blank card).

Version 2.1

  • Stack Exchange Authentication.
  • Expand the site scope to the whole Stack Exchange network.

Version 2.0

  • Project rewrite in Flask/Python.

Version 1.1

  • Show ranks in cards instead of plain text and simulate the top n% this month badges known from the profile page.
  • Results are cleared properly.
  • The loader will continue to work after the first load.
  • Updated the icon.
  • Added link to this question.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .