Giter Club home page Giter Club logo

medium-enhanced-stats's Introduction

Medium Enhanced Stats

by @tomastrajan

Enhancements for your Medium stats page! Get insight into summary of your total article views, reads, fans...

Get it at Chrome Web Store

Medium Enhanced Stats

medium-enhanced-stats's People

Contributors

rahulbanerjee26 avatar tomastrajan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

medium-enhanced-stats's Issues

Medium Enhanced Stats Chrome Extension does not work

I am signed into Medium on Chrome and the Stats page is in the tab with focus. Clicking on the Medium Enhanced Stats extension does nothing. The large circle in the center rotates endlessly. Nothing happens.

Better Medium notifications

Currently, Medium notifications are just a single indicator with a number of total new notifications and a list of all these notifications after user click the button.

It would be great to have 4 different notification indicators for every notification type. The reasoning behind this is that the "response" notification is much more important that the "claps" notification.

The implementation would be similar as stats-total.js a script that is loaded and runs on every medium page. The script will load notifications and replace old indicator with the new ones. New script can be called notifications.js and can be added to manifest.json file in the content_scripts property so that it runs on every Medium page.

Investigate / fix error from logs - Uncaught TypeError: Cannot set property 'innerHTML' of null

Adding of a remote error logging is bringing its first results with the following error...

We have to investigate why this could happen and make a code more robust to handle such cases gracefully.

json: category:BrowserJsException
sessionId: 440f9bf2-cc05-43a7-98b7-b52be738c57a
exception:
colno:387
lineno:50
message: Uncaught TypeError: Cannot set property 'innerHTML' of null
stack:TypeError: Cannot set property 'innerHTML' of null
    at updateTableRows (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/stats/stats-total.js:278:26)
    at a.combineLatest.pipe.subscribe [as _next] (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/stats/stats-total.js:36:26)
    at a.__tryOrUnsub (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:88:95)
    at a.next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:86:350)
    at a._next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:84:460)
    at a.next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:84:131)
    at a.debouncedNext (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:163:187)
    at a.hc (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:70:267)
    at a._execute (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:108:449)
    at a.execute (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:108:270)
url:chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js

Investigate / fix error from logs - Uncaught TypeError: Cannot read property 'querySelector' of null

Adding of a remote error logging is bringing its first results with the following error...

We have to investigate why this could happen and make a code more robust to handle such cases gracefully.

category:  BrowserJsException
sessionId:  440f9bf2-cc05-43a7-98b7-b52be738c57a
exception:
colno:387
lineno:50
message:   Uncaught TypeError: Cannot read property 'querySelector' of null
stack:   TypeError: Cannot read property 'querySelector' of null
    at updateTableSummary (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/stats/stats-total.js:186:21)
    at a.state$.subscribe.s [as _next] (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/stats/stats-total.js:29:3)
    at a.__tryOrUnsub (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:88:95)
    at a.next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:86:350)
    at a._next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:84:460)
    at a.next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:84:131)
    at a._next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:128:915)
    at a.next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:84:131)
    at a._next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:174:921)
    at a.next (chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js:84:131)
url:chrome-extension://jnomnfoenpdinfkpaaigokicgcfkomjo/src/libs/rxjs.js

New Logo Design Contribution

Hey @tomastrajan I am a graphic designer. I support them by making design contributions to open source projects. You can see my works from my profile. I liked the Medium Enhanced Stats chrome extension. And I designed a logo. I hope you need a logo. You can see my designs below.

design_result

views

Do you like it? Which do you like if you like it? Do not hesitate to tell if there is something you want to change or add.

I will be waiting for your feedback ..

Shouldn't there be unsubscriptions?

Hi Tomas,

Thank you for all the wonderful work on this extension! It really is awesome!

I have created my own extension, which is heavily based on your work. I am stripping it down more and more, though, so I am not sure what will be left of it by the time I am done.

I noticed in your code on stats-total.js, that there are loads of .subscribe-statements. I was a bit bugged that the extension keeps on trying to update more table-rows, so I wanted to prevent that from happening. I read your post on unsubscribing, but I have to say I cannot be sure what is happening in your code.

So, this is a question:

  • you seem to be subscribing a lot, but you never unsubscribe

I take it that those subscriptions just keep on adding and given enough time, will cause some sort of problems.

I recently started my journey in javascript, so there is a definite chance I misunderstand the mechanics.

Thanks in advance!

Sticky stats table header on large desktop screens

Enhance Medium stats table with sticky header when scrolling down the long stats table by overriding CSS (in stats/stats-total.css).

Table header is at the top of the table but it can get confusing which columns means what when scrolling through long stats table...
mes-header1

It would be much more user friendly to have a sticky stats header table...
mes-header2

Safari / Firefox support ?

While I like this extension a lot I'm always missing it when I'm on Safari.
If you think it would be a good idea to publish it as an extension there also, we can investigate what would be the best approach and I can make some time to help with this.

Statistics by hour / minute?

Would be really great to be able to get a breakdown by hour. Impossible for me to work out when to publish at the minute.

I would not be able to do any of the javascript work for this but have some experience with web scraping and a lot with Python if I could help in any way.

Extension stopped working in November 2020

Hey Tomas,
I'm not entirely sure where the stats come from under the hood, because it looks like you're not doing any DOM traversal. In the stats folder, I found this code, which I guess is what stopped working this week?

function loadData() {
  log('load data');
  return new Promise((resolve) =>
    chrome.runtime.sendMessage({ type: 'GET_TOTALS'}, {}, data => resolve(data)));
}

function loadPostStats(postId) {
  log('load post stats');
  return new Promise((resolve) =>
    chrome.runtime.sendMessage({ type: 'GET_POST_STATS', postId }, {}, data => resolve(data)));
}

Let me know if I can be any help tackling this issue! Cheers and thanks for the great extension!

Add author information to stats

It would be very cool to add Author information to stats. This would enable to count how many different authors contributed

bug: timezone-related error

At November 19 23:31 local time (GMT+1/CET) my stats looked like this. The article "Testing Angular Container Components" was published November 19 8:00 local time.

2018-11-19_23h29_24

The publish date is marked wrong and clearly "466 views on November 20 (0% of total daily views)" is also wrong.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.