Skip to content

Instantly share code, notes, and snippets.

@davidgilbertson
Last active January 21, 2018 00:37
Show Gist options
  • Save davidgilbertson/caf5ace6a7ddb783c68f6e1f6f24e87a to your computer and use it in GitHub Desktop.
Save davidgilbertson/caf5ace6a7ddb783c68f6e1f6f24e87a to your computer and use it in GitHub Desktop.
// Copy/paste this into your Dev Tools console while on https://medium.com/me/stats
// You can save it as a snippet in Chrome if you like: https://developers.google.com/web/tools/chrome-devtools/snippets
console.clear();
(() => {
console.info('Remember to scroll down first to load all your articles');
const formatPercent = rawValue => `${(rawValue * 100).toFixed(1)}%`;
const tableHeaderCell = document.querySelector('.sortableTableHeaders tr').insertCell();
tableHeaderCell.textContent = 'Fans/views';
tableHeaderCell.className = '.sortableTable-header';
tableHeaderCell.style.padding = '19px 0 0 15px';
tableHeaderCell.style.fontSize = '18px';
tableHeaderCell.style.fontWeight = '700';
tableHeaderCell.style.color = 'rgba(0,0,0,.54)';
const rowEls = document.querySelectorAll('.js-statsTableRow');
let totalViewCount = 0;
let totalFanCount = 0;
rowEls.forEach(rowEl => {
const viewEl = rowEl.querySelector('td:nth-of-type(2) .sortableTable-value');
const fansEl = rowEl.querySelector('td:nth-of-type(5) .sortableTable-value');
const viewCount = Number(viewEl.textContent);
const fanCount = Number(fansEl.textContent);
totalViewCount += viewCount;
totalFanCount += fanCount;
const fanPercent = fanCount / viewCount;
const newColumnSpan = document.createElement('span');
newColumnSpan.textContent = formatPercent(fanPercent);
newColumnSpan.className = 'sortableTable-number';
rowEl.insertCell().appendChild(newColumnSpan);
});
console.log('Total views:', totalViewCount.toLocaleString());
console.log('Total fans:', totalFanCount.toLocaleString());
console.log('Average fan ratio:', formatPercent(totalFanCount / totalViewCount));
})();
@davidgilbertson
Copy link
Author

Don't trust anyone that tells you to paste a snippet of code in your browser's console.

Except me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment