Screenshot

website screenshot

About

Rank Overflow is a website to calculate your Stack Overflow reputation rank in all leagues easy 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 to 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 to 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?

Visit https://rankoverflow.philnet.ch/

Or clone the repository from 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, API and stuff like that is provided via WSGI

  • 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 – André Pena Nov 25 '17 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? – Jake Symons May 31 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 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 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 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 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 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 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 at 12:55
  • 2
    Both SE authentication and the expansion for all SE site are now implemented and live – Filnor Jun 6 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 at 16:48
  • 1
    @3D1T0R I finally got to fix that. – Filnor Sep 7 at 14:04

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.

up vote 1 down vote accepted

Changelog

Version 2.1

  • Stack Exchange authentication
  • Expanded site scope to whole SE 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 .