├── .gitignore
├── LICENSE
├── README.md
├── css
└── styles.css
├── data
├── archive
│ ├── 2017-04-10-medium-history.csv
│ ├── 2017-06-19-github-repos.json
│ ├── general
│ │ ├── 2017-06-13-stats.json
│ │ ├── 2017-06-14-stats.json
│ │ ├── 2017-06-19-stats.json
│ │ ├── 2017-07-03-stats.json
│ │ ├── 2017-07-11-stats.json
│ │ ├── 2017-07-18-stats.json
│ │ ├── 2017-07-24-stats.json
│ │ ├── 2017-08-01-stats.json
│ │ ├── 2017-08-07-stats.json
│ │ ├── 2017-08-14-stats.json
│ │ ├── 2017-08-19-stats.json
│ │ ├── 2017-09-12-stats.json
│ │ ├── 2017-09-26-stats.json
│ │ ├── 2017-10-10-stats.json
│ │ ├── 2017-10-24-stats.json
│ │ ├── 2017-10-31-stats.json
│ │ ├── 2017-11-06-stats.json
│ │ ├── 2017-11-13-stats.json
│ │ ├── 2017-11-20-stats.json
│ │ ├── 2017-11-27-stats.json
│ │ ├── 2017-12-04-stats.json
│ │ ├── 2017-12-12-stats.json
│ │ ├── 2018-01-08-stats.json
│ │ ├── 2018-01-15-stats.json
│ │ ├── 2018-01-22-stats.json
│ │ ├── 2018-01-29-stats.json
│ │ ├── 2018-02-05-stats.json
│ │ ├── 2018-02-12-stats.json
│ │ ├── 2018-02-19-stats.json
│ │ ├── 2018-02-26-stats.json
│ │ ├── 2018-03-05-stats.json
│ │ ├── 2018-03-12-stats.json
│ │ ├── 2018-03-19-stats.json
│ │ ├── 2018-03-27-stats.json
│ │ ├── 2018-04-02-stats.json
│ │ ├── 2018-04-09-stats.json
│ │ ├── 2018-04-16-stats.json
│ │ ├── 2018-04-24-stats.json
│ │ ├── 2018-04-30-stats.json
│ │ ├── 2018-05-08-stats.json
│ │ ├── 2018-05-14-stats.json
│ │ ├── 2018-05-21-stats.json
│ │ └── 2018-05-30-stats.json
│ └── medium
│ │ ├── 2017-04-13-medium-overview.csv
│ │ ├── 2017-05-25-medium-overview.csv
│ │ ├── 2017-06-14-medium-overview.csv
│ │ ├── 2017-06-19-medium-overview.csv
│ │ ├── 2017-07-03-medium-overview.csv
│ │ ├── 2017-07-11-medium-overview.csv
│ │ ├── 2017-07-18-medium-overview.csv
│ │ ├── 2017-07-24-medium-overview.csv
│ │ ├── 2017-08-01-medium-overview.csv
│ │ ├── 2017-08-07-medium-overview.csv
│ │ ├── 2017-08-14-medium-overview.csv
│ │ ├── 2017-08-19-medium-overview.csv
│ │ ├── 2017-09-12-medium-overview.csv
│ │ ├── 2017-09-26-medium-overview.csv
│ │ ├── 2017-10-09-medium-overview.csv
│ │ ├── 2017-10-24-medium-overview.csv
│ │ ├── 2017-10-31-medium-overview.csv
│ │ ├── 2017-11-06-medium-overview.csv
│ │ ├── 2017-11-13-medium-overview.csv
│ │ ├── 2017-11-20-medium-overview.csv
│ │ ├── 2017-11-27-medium-overview.csv
│ │ ├── 2017-12-04-medium-overview.csv
│ │ ├── 2017-12-12-medium-overview.csv
│ │ ├── 2018-01-08-medium-overview.csv
│ │ ├── 2018-01-15-medium-overview.csv
│ │ ├── 2018-01-22-medium-overview.csv
│ │ ├── 2018-01-29-medium-overview.csv
│ │ ├── 2018-02-05-medium-overview.csv
│ │ ├── 2018-02-12-medium-overview.csv
│ │ ├── 2018-02-19-medium-overview.csv
│ │ ├── 2018-02-26-medium-overview.csv
│ │ ├── 2018-03-05-medium-overview.csv
│ │ ├── 2018-03-12-medium-overview.csv
│ │ ├── 2018-03-19-medium-overview.csv
│ │ ├── 2018-03-27-medium-overview.csv
│ │ ├── 2018-04-02-medium-overview.csv
│ │ ├── 2018-04-09-medium-overview.csv
│ │ ├── 2018-04-16-medium-overview.csv
│ │ ├── 2018-04-24-medium-overview.csv
│ │ ├── 2018-04-30-medium-overview.csv
│ │ ├── 2018-05-08-medium-overview.csv
│ │ ├── 2018-05-14-medium-overview.csv
│ │ ├── 2018-05-21-medium-overview.csv
│ │ └── 2018-05-30-medium-overview.csv
├── general
│ ├── 2018-06-05-stats.json
│ ├── 2018-06-11-stats.json
│ ├── 2018-06-18-stats.json
│ ├── 2018-06-25-stats.json
│ ├── 2018-07-02-stats.json
│ ├── 2018-07-10-stats.json
│ ├── 2018-07-16-stats.json
│ ├── 2018-07-24-stats.json
│ ├── 2018-08-07-stats.json
│ ├── 2018-08-20-stats.json
│ ├── 2018-08-28-stats.json
│ └── 2018-09-04-stats.json
└── medium
│ ├── 2018-06-05-medium-overview.csv
│ ├── 2018-06-11-medium-overview.csv
│ ├── 2018-06-18-medium-overview.csv
│ ├── 2018-06-25-medium-overview.csv
│ ├── 2018-07-02-medium-overview.csv
│ ├── 2018-07-10-medium-overview.csv
│ ├── 2018-07-16-medium-overview.csv
│ ├── 2018-07-24-medium-overview.csv
│ ├── 2018-08-07-medium-overview.csv
│ ├── 2018-08-20-medium-overview.csv
│ ├── 2018-08-28-medium-overview.csv
│ └── 2018-09-04-medium-overview.csv
├── extension
├── README.md
├── content-script-medium-overview.js
├── content-script-medium-stories.js
├── icon.png
├── manifest.json
├── page-script-medium.js
├── popup.html
└── popup.js
├── images
├── dashboard-preview-crop.png
├── dashboard-preview.png
├── favicon.png
├── icon192.png
├── icon512.png
└── samsung-internet-logo-text.svg
├── index.html
├── lib
├── chartist.css
├── chartist.css.map
├── chartist.js
├── chartist.min.css
├── chartist.min.js
├── chartist.min.js.map
├── moment.js
├── moment.min.js
├── papaparse.js
├── papaparse.min.js
├── scss
│ ├── chartist.scss
│ └── settings
│ │ └── _chartist-settings.scss
├── sw-toolbox.js
└── sw-toolbox.js.map
├── manifest.json
├── package-lock.json
├── package.json
├── src
├── data-paths.js
├── index.js
└── template.html
├── sw.js
├── update.js
└── utils.js
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .env
3 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2017 Samsung Internet Dev Rel
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Samsung Internet Developer Advocacy Dashboard
2 |
3 | [](https://samsunginter.net/dashboard)
4 |
5 | ## What is this?
6 |
7 | It's a dashboard showing metrics for our Samsung Internet developer advocacy work, as well as
8 | trends for web technologies such as PWAs and WebVR.
9 |
10 | ## When and how is it updated?
11 |
12 | We intend to update it each week. Unfortunately for now, it will involve a few minutes of manual work.
13 | Our social media platforms do not currently provide analytics data via APIs. However, hopefully over time
14 | we can automate it more, either using APIs if/when provided, automated scraping, or (at least) additions
15 | to the [Dashboard Updater browser extension](extension/README.md).
16 |
17 | (For the Samsung Internet team) here are the current instructions:
18 |
19 | ### General stats
20 |
21 | * Add a new stats JSON file with today's date, e.g. `data/general/2017-06-14-stats.json`, and update with the latest data:
22 | * To find Medium stats, see [here](https://medium.com/samsung-internet-dev/stats/overview) and the followers [here](https://medium.com/samsung-internet-dev/latest).
23 | * To find Twitter stats, see [here](https://analytics.twitter.com). (Ask Daniel for the login).
24 | * To find Facebook stats, check the 28 day like increase [here](https://www.facebook.com/samsunginternet/insights/) and look for 'follows' on the right-hand side [here](https://www.facebook.com/samsunginternet).
25 | * To find Instagram followers, see [here](https://www.instagram.com/samsunginternet/).
26 | * To find the average Github issue response time, see [here and click the little refresh link](http://issuestats.com/github/samsunginternet/support).
27 | * To get the SEO rankings, I previously used [serps.com/tools/rank-checker/](https://serps.com/tools/rank-checker/) but it seems to no longer work, so I'm now testing at google.com (select "Use google.com" or it will redirect back), using a private browsing session.
28 | * Update the filenames in `src/data-paths.js`.
29 |
30 | ### Medium graph
31 |
32 | * Install the Dashboard Updater Chrome extension from the `extension` subdirectory. [Here's how](https://developer.chrome.com/extensions/getstarted#unpacked).
33 | * Visit [medium.com/samsung-internet-dev/stats/overview](https://medium.com/samsung-internet-dev/stats/overview).
34 | * Click the 'Download Medium stats' button.
35 | * Copy/move the downloaded CSV file to the `data/medium` directory & update `src/data-paths.js` with the new filename.
36 |
37 | ### Survey pie charts
38 |
39 | * For our event survey feedback, see [the Google spreadsheet here](https://docs.google.com/spreadsheets/d/1SxnLKkhqOPZPCEYzX0S0WVPaNN6Hs5vFhOi4Py8bLHs/edit#gid=2048114756).
40 | * Update the variable at the top of `index.js`.
41 |
42 | ### And then...
43 |
44 | ```
45 | npm start
46 | ```
47 |
48 | This will run `update.js` and spit out the new `index.html`, based on the template in `src/template.html`.
49 |
50 | Now this page can be served with any static HTML server. We're hosting on Github Pages - just push to `master` to deploy.
51 |
--------------------------------------------------------------------------------
/css/styles.css:
--------------------------------------------------------------------------------
1 | body {
2 | background: #222;
3 | color: #fefefe;
4 | font-family: Helvetica, Arial, sans-serif;
5 | padding: 10px 15px;
6 | margin: 0;
7 | }
8 |
9 | a {
10 | color: #aaa;
11 | }
12 |
13 | header {
14 | min-height: 90px;
15 | padding: 10px;
16 | display: flex;
17 | flex-wrap: wrap;
18 | }
19 |
20 | header > div {
21 | min-height: 70px;
22 | }
23 |
24 | header img {
25 | float: left;
26 | padding: 10px 30px 10px 0;
27 | }
28 |
29 | header .logo {
30 | flex-basis: 280px;
31 | }
32 |
33 | header .title-and-last-updated {
34 | min-width: 300px;
35 | }
36 |
37 | h1 {
38 | margin: 15px 0 10px 0;
39 | font-weight: normal;
40 | }
41 |
42 | h2 {
43 | margin: 1.5em 0 1em 0;
44 | font-weight: normal;
45 | font-style: italic;
46 | border-top: 1px dotted #ccc;
47 | padding-top: 1em;
48 | }
49 |
50 | h2:first-of-type {
51 | margin-top: 0;
52 | }
53 |
54 | h3 {
55 | margin: 0.5em 0;
56 | font-weight: normal;
57 | }
58 |
59 | .title-and-last-updated h3 {
60 | color: #ccc;
61 | font-style: italic;
62 | margin-top: 0;
63 | }
64 |
65 | main {
66 | padding: 10px;
67 | }
68 |
69 | .numbers {
70 | display: flex;
71 | flex-wrap: wrap;
72 | margin: 10px 0 30px 20px;
73 | }
74 |
75 | .numbers div {
76 | text-align: center;
77 | flex-basis: 120px;
78 | flex-grow: 2;
79 | padding: 0 10px 5px 0;
80 | }
81 |
82 | .numbers h3 {
83 | font-size: 2.5em;
84 | margin-bottom: 0.25em;
85 | }
86 |
87 | .summary {
88 | font-style: italic;
89 | margin-left: 10px;
90 | }
91 |
92 | .arrow {
93 | font-size: 1.4em;
94 | font-weight: bold;
95 | }
96 |
97 | .arrow.up {
98 | color: #59922b;
99 | }
100 |
101 | .arrow.same {
102 | color: #efdf57;
103 | }
104 |
105 | .arrow.down {
106 | color: #d70206;
107 | }
108 |
109 | .pull-requests {
110 | text-align: center;
111 | }
112 |
113 | .pull-requests ul {
114 | text-align: left;
115 | max-width: 800px;
116 | margin: 0 auto;
117 | }
118 |
119 | footer {
120 | margin-top: 1.5em;
121 | }
122 |
123 | footer p {
124 | text-align: center;
125 | color: #aaa;
126 | font-size: 0.9em;
127 | }
128 |
129 | /* Charts */
130 |
131 | .ct-chart .ct-label {
132 | color: #ffffff;
133 | }
134 |
135 | .ct-chart .ct-grid {
136 | stroke: #555;
137 | }
138 |
139 | .key {
140 | margin-bottom: 30px;
141 | }
142 |
143 | .key span {
144 | margin-left: 20px;
145 | font-size: 1.2em;
146 | font-weight: bold;
147 | }
148 |
149 | #medium-chart + .key .colour1 {
150 | color: #d70206;
151 | }
152 |
153 | #medium-chart + .key .colour2 {
154 | color: #f05b4f;
155 | }
156 |
157 | #medium-chart + .key .colour3 {
158 | color: #f4c63d;
159 | }
160 |
161 | .surveys {
162 | display: flex;
163 | flex-wrap: wrap;
164 | margin: 10px 0 30px 20px;
165 | }
166 |
167 | .survey {
168 | text-align: center;
169 | flex-basis: 250px;
170 | flex-grow: 2;
171 | }
172 |
173 | .survey {
174 | margin: 10px 0 5px 10px;
175 | }
176 |
177 | .survey .ct-series-a .ct-slice-pie {
178 | fill: #f4c63d;
179 | }
180 |
181 | .survey .ct-label {
182 | fill: #000;
183 | }
184 |
185 | .survey .key .colour1 {
186 | color: #f4c63d;
187 | }
188 |
189 | .survey .key .colour2 {
190 | color: #f05b4f;
191 | }
192 |
--------------------------------------------------------------------------------
/data/archive/general/2017-06-13-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-06-13",
3 | "medium": {
4 | "audience": {
5 | "followers": {
6 | "count": 862,
7 | "change": 87,
8 | "change-label": "19 days"
9 | }
10 | },
11 | "engagement": {
12 | "views": {
13 | "count": 28451,
14 | "change": -18.7,
15 | "change-label": "19 days"
16 | }
17 | }
18 | },
19 | "twitter": {
20 | "audience": {
21 | "followers": {
22 | "count": 817,
23 | "change": 86
24 | }
25 | },
26 | "engagement": {
27 | "impressions": {
28 | "count": "66K",
29 | "change": -28.8
30 | },
31 | "mentions": {
32 | "count": 183,
33 | "change": -9.0
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 168,
41 | "change": 75
42 | },
43 | "reach": {
44 | "count": 2101,
45 | "change": -63
46 | }
47 | },
48 | "engagement": {
49 | "likes": {
50 | "count": 74,
51 | "change": -10
52 | },
53 | "engagements": {
54 | "count": 390,
55 | "change": -38
56 | }
57 | }
58 | },
59 | "instagram": {
60 | "audience": {
61 | "followers": {
62 | "count": 19,
63 | "change": 5,
64 | "change-label": "7 days"
65 | }
66 | }
67 | }
68 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-06-14-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-06-14",
3 | "medium": {
4 | "audience": {
5 | "followers": {
6 | "count": 863,
7 | "change": 88,
8 | "change-label": "20 days"
9 | }
10 | },
11 | "engagement": {
12 | "views": {
13 | "count": 29022,
14 | "change": -17.1,
15 | "change-label": "20 days"
16 | }
17 | }
18 | },
19 | "twitter": {
20 | "audience": {
21 | "followers": {
22 | "count": 819,
23 | "change": 80
24 | }
25 | },
26 | "engagement": {
27 | "impressions": {
28 | "count": 62700,
29 | "change": -37.0
30 | },
31 | "mentions": {
32 | "count": 176,
33 | "change": -13.3
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 170,
41 | "change": 77
42 | },
43 | "reach": {
44 | "count": 2414,
45 | "change": -58.0
46 | }
47 | },
48 | "engagement": {
49 | "likes": {
50 | "count": 75,
51 | "change": -9.0
52 | },
53 | "views": {
54 | "count": 185,
55 | "change": 3.0
56 | },
57 | "engagements": {
58 | "count": 411,
59 | "change": -35.0
60 | }
61 | }
62 | },
63 | "instagram": {
64 | "audience": {
65 | "followers": {
66 | "count": 20,
67 | "change": 6,
68 | "change-label": "8 days"
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 35,
75 | "change": 0,
76 | "change-label": "Change not yet recorded"
77 | },
78 | "webpayments": {
79 | "count": 36,
80 | "change": 0,
81 | "change-label": "Change not yet recorded"
82 | },
83 | "pwas": {
84 | "count": "N/A",
85 | "change": "N/A",
86 | "change-label": "N/A"
87 | },
88 | "physicalweb": {
89 | "count": "N/A",
90 | "change": "N/A",
91 | "change-label": "N/A"
92 | }
93 | },
94 | "twitterreach": {
95 | "pwas": {
96 | "count": 302632,
97 | "change": 0,
98 | "change-label": "Change not yet recorded"
99 | },
100 | "webvr": {
101 | "count": 235594,
102 | "change": 0,
103 | "change-label": "Change not yet recorded"
104 | },
105 | "webpayments": {
106 | "count": 387978,
107 | "change": 0,
108 | "change-label": "Change not yet recorded"
109 | },
110 | "physicalweb": {
111 | "count": 34635,
112 | "change": 0,
113 | "change-label": "Change not yet recorded"
114 | }
115 | }
116 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-06-19-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-06-19",
3 | "medium": {
4 | "audience": {
5 | "followers": {
6 | "count": 873,
7 | "change": 98,
8 | "change-label": "25 days"
9 | }
10 | },
11 | "engagement": {
12 | "views": {
13 | "count": 27297,
14 | "change": -19.7,
15 | "change-label": "25 days"
16 | }
17 | }
18 | },
19 | "twitter": {
20 | "audience": {
21 | "followers": {
22 | "count": 837,
23 | "change": 92
24 | }
25 | },
26 | "engagement": {
27 | "impressions": {
28 | "count": 50900,
29 | "change": -48.8
30 | },
31 | "mentions": {
32 | "count": 186,
33 | "change": -9.7
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 172,
41 | "change": 23
42 | },
43 | "reach": {
44 | "count": 2667,
45 | "change": -56.0
46 | }
47 | },
48 | "engagement": {
49 | "likes": {
50 | "count": 21,
51 | "change": -84.0
52 | },
53 | "views": {
54 | "count": 95,
55 | "change": -66.0
56 | },
57 | "engagements": {
58 | "count": 326,
59 | "change": -60.0
60 | }
61 | }
62 | },
63 | "instagram": {
64 | "audience": {
65 | "followers": {
66 | "count": 21,
67 | "change": 7,
68 | "change-label": "13 days"
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 38,
75 | "change": -3,
76 | "change-label": "5 days",
77 | "link": "https://webvr.io/"
78 | },
79 | "webpayments": {
80 | "count": 31,
81 | "change": 5,
82 | "change-label": "5 days",
83 | "link": "https://medium.com/samsung-internet-dev/how-to-take-payments-on-the-web-with-the-payment-request-api-a523f6fc7c1f"
84 | },
85 | "pwas": {
86 | "count": "N/A",
87 | "change": "N/A",
88 | "change-label": "N/A"
89 | },
90 | "physicalweb": {
91 | "count": "N/A",
92 | "change": "N/A",
93 | "change-label": "N/A"
94 | }
95 | },
96 | "twitterreach": {
97 | "pwas": {
98 | "count": 71440,
99 | "change": -76.4,
100 | "change-label": "5 days",
101 | "link": "https://tweetreach.com/reports/19363243"
102 | },
103 | "webvr": {
104 | "count": 472300,
105 | "change": 101.4,
106 | "change-label": "5 days",
107 | "link": "https://tweetreach.com/reports/19363253"
108 | },
109 | "webpayments": {
110 | "count": 793943,
111 | "change": 104.6,
112 | "change-label": "5 days",
113 | "link": "https://tweetreach.com/reports/19363275"
114 | },
115 | "physicalweb": {
116 | "count": 31419,
117 | "change": -9.3,
118 | "change-label": "5 days",
119 | "link": "https://tweetreach.com/reports/19363301"
120 | }
121 | }
122 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-07-03-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-07-03",
3 | "medium": {
4 | "audience": {
5 | "followers": {
6 | "count": 989,
7 | "change": 127,
8 | "change-label": "20 days"
9 | }
10 | },
11 | "engagement": {
12 | "views": {
13 | "count": 29661,
14 | "change": 4.3,
15 | "change-label": "20 days"
16 | }
17 | }
18 | },
19 | "twitter": {
20 | "audience": {
21 | "followers": {
22 | "count": 864,
23 | "change": 73
24 | }
25 | },
26 | "engagement": {
27 | "impressions": {
28 | "count": 42000,
29 | "change": -50.8
30 | },
31 | "mentions": {
32 | "count": 190,
33 | "change": -30.9
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 177,
41 | "change": 21
42 | },
43 | "reach": {
44 | "count": 2741,
45 | "change": -13.0
46 | }
47 | },
48 | "engagement": {
49 | "likes": {
50 | "count": 21,
51 | "change": -70.0
52 | },
53 | "views": {
54 | "count": 80,
55 | "change": -53.0
56 | },
57 | "engagements": {
58 | "count": 384,
59 | "change": -11.0
60 | }
61 | }
62 | },
63 | "instagram": {
64 | "audience": {
65 | "followers": {
66 | "count": 27,
67 | "change": 8,
68 | "change-label": "20 days"
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 30,
75 | "change": 5,
76 | "change-label": "20 days",
77 | "link": "https://webvr.io/"
78 | },
79 | "webpayments": {
80 | "count": 36,
81 | "change": 0,
82 | "change-label": "20 days",
83 | "link": "https://medium.com/samsung-internet-dev/how-to-take-payments-on-the-web-with-the-payment-request-api-a523f6fc7c1f"
84 | },
85 | "pwas": {
86 | "count": "N/A",
87 | "change": "N/A",
88 | "change-label": "N/A"
89 | },
90 | "physicalweb": {
91 | "count": "N/A",
92 | "change": "N/A",
93 | "change-label": "N/A"
94 | }
95 | },
96 | "twitterreach": {
97 | "pwas": {
98 | "count": 107432,
99 | "change": -64.5,
100 | "change-label": "20 days",
101 | "link": "https://tweetreach.com/reports/19436709"
102 | },
103 | "webvr": {
104 | "count": 865295,
105 | "change": 267.3,
106 | "change-label": "20 days",
107 | "link": "https://tweetreach.com/reports/19436727"
108 | },
109 | "webpayments": {
110 | "count": 209990,
111 | "change": -45.9,
112 | "change-label": "20 days",
113 | "link": "https://tweetreach.com/reports/19436741"
114 | },
115 | "physicalweb": {
116 | "count": 109359,
117 | "change": 215.7,
118 | "change-label": "20 days",
119 | "link": "https://tweetreach.com/reports/19436755"
120 | }
121 | }
122 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-07-11-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-07-11",
3 | "medium": {
4 | "audience": {
5 | "followers": {
6 | "count": 1000,
7 | "change": 138,
8 | "change-label": "28 days"
9 | }
10 | },
11 | "engagement": {
12 | "views": {
13 | "count": 37590,
14 | "change": 29.5,
15 | "change-label": "28 days"
16 | }
17 | }
18 | },
19 | "twitter": {
20 | "audience": {
21 | "followers": {
22 | "count": 889,
23 | "change": 69
24 | }
25 | },
26 | "engagement": {
27 | "impressions": {
28 | "count": 38500,
29 | "change": -42.6
30 | },
31 | "mentions": {
32 | "count": 200,
33 | "change": 0
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 183,
41 | "change": 4
42 | },
43 | "reach": {
44 | "count": 50,
45 | "change": -92.0
46 | }
47 | },
48 | "engagement": {
49 | "likes": {
50 | "count": 16,
51 | "change": -78.0
52 | },
53 | "views": {
54 | "count": 67,
55 | "change": -64.0
56 | },
57 | "engagements": {
58 | "count": 351,
59 | "change": -10.0
60 | }
61 | }
62 | },
63 | "instagram": {
64 | "audience": {
65 | "followers": {
66 | "count": 30,
67 | "change": 11,
68 | "change-label": "28 days"
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 33,
75 | "change": 2,
76 | "change-label": "28 days",
77 | "link": "https://webvr.io/"
78 | },
79 | "webpayments": {
80 | "count": 38,
81 | "change": -2,
82 | "change-label": "28 days",
83 | "link": "https://samsunginter.net/docs/web-payments"
84 | },
85 | "pwas": {
86 | "count": "13",
87 | "change": "N/A",
88 | "change-label": "New",
89 | "link": "https://medium.com/samsung-internet-dev/a-beginners-guide-to-making-progressive-web-apps-beb56224948e"
90 | },
91 | "physicalweb": {
92 | "count": "N/A",
93 | "change": "N/A",
94 | "change-label": "N/A"
95 | }
96 | }
97 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-07-18-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-07-18",
3 | "medium": {
4 | "audience": {
5 | "followers": {
6 | "count": 1100,
7 | "change": 200,
8 | "change-label": "28 days"
9 | }
10 | },
11 | "engagement": {
12 | "views": {
13 | "count": 40735,
14 | "change": 49.2,
15 | "change-label": "28 days"
16 | }
17 | }
18 | },
19 | "twitter": {
20 | "audience": {
21 | "followers": {
22 | "count": 904,
23 | "change": 60
24 | }
25 | },
26 | "engagement": {
27 | "impressions": {
28 | "count": 39700,
29 | "change": -21.0
30 | },
31 | "mentions": {
32 | "count": 170,
33 | "change": -21.3
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 185,
41 | "change": 13
42 | },
43 | "reach": {
44 | "count": 898,
45 | "change": -66.0
46 | }
47 | },
48 | "engagement": {
49 | "likes": {
50 | "count": 21,
51 | "change": -5.0
52 | },
53 | "views": {
54 | "count": 67,
55 | "change": -64.0
56 | },
57 | "engagements": {
58 | "count": 237,
59 | "change": -28.0
60 | }
61 | }
62 | },
63 | "instagram": {
64 | "audience": {
65 | "followers": {
66 | "count": 31,
67 | "change": 10,
68 | "change-label": "28 days"
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 31,
75 | "change": 7,
76 | "change-label": "28 days",
77 | "link": "https://webvr.io/"
78 | },
79 | "webpayments": {
80 | "count": 28,
81 | "change": 3,
82 | "change-label": "28 days",
83 | "link": "https://samsunginter.net/docs/web-payments"
84 | },
85 | "pwas": {
86 | "count": "N/A",
87 | "change": "N/A",
88 | "change-label": "N/A"
89 | },
90 | "physicalweb": {
91 | "count": "N/A",
92 | "change": "N/A",
93 | "change-label": "N/A"
94 | }
95 | }
96 | }
97 |
--------------------------------------------------------------------------------
/data/archive/general/2017-07-24-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-07-24",
3 | "medium": {
4 | "audience": {
5 | "followers": {
6 | "count": 1100
7 | }
8 | },
9 | "engagement": {
10 | "views": {
11 | "count": 45441
12 | }
13 | }
14 | },
15 | "twitter": {
16 | "audience": {
17 | "followers": {
18 | "count": 934
19 | }
20 | },
21 | "engagement": {
22 | "impressions": {
23 | "count": 57100
24 | },
25 | "mentions": {
26 | "count": 169
27 | }
28 | }
29 | },
30 | "facebook": {
31 | "audience": {
32 | "followers": {
33 | "count": 198
34 | },
35 | "reach": {
36 | "count": 1058
37 | }
38 | },
39 | "engagement": {
40 | "likes": {
41 | "count": 23
42 | },
43 | "views": {
44 | "count": 53
45 | },
46 | "engagements": {
47 | "count": 272
48 | }
49 | }
50 | },
51 | "instagram": {
52 | "audience": {
53 | "followers": {
54 | "count": 31
55 | }
56 | }
57 | },
58 | "seo": {
59 | "webvr": {
60 | "count": 31,
61 | "link": "https://webvr.io/"
62 | },
63 | "webpayments": {
64 | "count": 29,
65 | "link": "https://samsunginter.net/docs/web-payments"
66 | },
67 | "pwas": {
68 | "count": "N/A"
69 | },
70 | "physicalweb": {
71 | "count": "N/A"
72 | }
73 | }
74 | }
75 |
--------------------------------------------------------------------------------
/data/archive/general/2017-08-01-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-08-01",
3 | "medium": {
4 | "audience": {
5 | "followers": {
6 | "count": 1200
7 | }
8 | },
9 | "engagement": {
10 | "views": {
11 | "count": 46312
12 | }
13 | }
14 | },
15 | "twitter": {
16 | "audience": {
17 | "followers": {
18 | "count": 967
19 | }
20 | },
21 | "engagement": {
22 | "impressions": {
23 | "count": 71400
24 | },
25 | "mentions": {
26 | "count": 148
27 | }
28 | }
29 | },
30 | "facebook": {
31 | "audience": {
32 | "followers": {
33 | "count": 204
34 | },
35 | "reach": {
36 | "count": 788
37 | }
38 | },
39 | "engagement": {
40 | "likes": {
41 | "count": 27
42 | },
43 | "views": {
44 | "count": 53
45 | },
46 | "engagements": {
47 | "count": 158
48 | }
49 | }
50 | },
51 | "instagram": {
52 | "audience": {
53 | "followers": {
54 | "count": 33
55 | }
56 | }
57 | },
58 | "seo": {
59 | "webvr": {
60 | "count": 63,
61 | "link": "https://webvr.io/showcase/"
62 | },
63 | "webpayments": {
64 | "count": 22,
65 | "link": "https://medium.com/samsung-internet-dev/how-to-take-payments-on-the-web-with-the-payment-request-api-a523f6fc7c1f"
66 | },
67 | "pwas": {
68 | "count": 20,
69 | "link": "https://medium.com/samsung-internet-dev/a-beginners-guide-to-making-progressive-web-apps-beb56224948e"
70 | },
71 | "physicalweb": {
72 | "count": "N/A"
73 | }
74 | }
75 | }
76 |
--------------------------------------------------------------------------------
/data/archive/general/2017-08-07-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-08-07",
3 | "devhub": {
4 | "audience": {
5 | "uniquevisitors": {
6 | "count": 4329
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 1200
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 36363
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 972
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 69600
31 | },
32 | "mentions": {
33 | "count": 140
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 206
41 | },
42 | "reach": {
43 | "count": 757
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 24
49 | },
50 | "views": {
51 | "count": 54
52 | },
53 | "engagements": {
54 | "count": 121
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 33
62 | }
63 | }
64 | },
65 | "seo": {
66 | "webvr": {
67 | "count": "N/A"
68 | },
69 | "webpayments": {
70 | "count": 30,
71 | "link": "https://medium.com/samsung-internet-dev/how-to-take-payments-on-the-web-with-the-payment-request-api-a523f6fc7c1f"
72 | },
73 | "pwas": {
74 | "count": 14,
75 | "link": "https://medium.com/samsung-internet-dev/a-beginners-guide-to-making-progressive-web-apps-beb56224948e"
76 | },
77 | "physicalweb": {
78 | "count": "N/A"
79 | }
80 | }
81 | }
82 |
--------------------------------------------------------------------------------
/data/archive/general/2017-08-14-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-08-14",
3 | "devhub": {
4 | "audience": {
5 | "uniquevisitors": {
6 | "count": 4606
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 1300
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 42852
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 990
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 83500
31 | },
32 | "mentions": {
33 | "count": 178
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 211
41 | },
42 | "reach": {
43 | "count": 1288
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 19
49 | },
50 | "views": {
51 | "count": 55
52 | },
53 | "engagements": {
54 | "count": 146
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 33
62 | }
63 | }
64 | },
65 | "seo": {
66 | "webvr": {
67 | "count": "N/A"
68 | },
69 | "webpayments": {
70 | "count": 28,
71 | "link": "https://medium.com/samsung-internet-dev/how-to-take-payments-on-the-web-with-the-payment-request-api-a523f6fc7c1f"
72 | },
73 | "pwas": {
74 | "count": 14,
75 | "link": "https://medium.com/samsung-internet-dev/a-beginners-guide-to-making-progressive-web-apps-beb56224948e"
76 | },
77 | "physicalweb": {
78 | "count": "N/A"
79 | }
80 | }
81 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-08-19-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-08-19",
3 | "devhub": {
4 | "audience": {
5 | "uniquevisitors": {
6 | "count": 4537
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 1300
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 41652
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1001
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 76100
31 | },
32 | "mentions": {
33 | "count": 204
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 214
41 | },
42 | "reach": {
43 | "count": 1024
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 16
49 | },
50 | "views": {
51 | "count": 51
52 | },
53 | "engagements": {
54 | "count": 105
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 32
62 | }
63 | }
64 | },
65 | "seo": {
66 | "webvr": {
67 | "count": "N/A"
68 | },
69 | "webpayments": {
70 | "count": 27,
71 | "link": "https://medium.com/samsung-internet-dev/how-to-take-payments-on-the-web-with-the-payment-request-api-a523f6fc7c1f"
72 | },
73 | "pwas": {
74 | "count": 19,
75 | "link": "https://medium.com/samsung-internet-dev/a-beginners-guide-to-making-progressive-web-apps-beb56224948e"
76 | },
77 | "physicalweb": {
78 | "count": "N/A"
79 | }
80 | }
81 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-09-12-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-09-12",
3 | "devhub": {
4 | "audience": {
5 | "uniquevisitors": {
6 | "count": 4242
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 1700
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 19543
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1058
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 45300
31 | },
32 | "mentions": {
33 | "count": 179
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 225
41 | },
42 | "reach": {
43 | "count": 527
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 14
49 | },
50 | "views": {
51 | "count": 55
52 | },
53 | "engagements": {
54 | "count": 143
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 35
62 | }
63 | }
64 | },
65 | "seo": {
66 | "webvr": {
67 | "count": "N/A"
68 | },
69 | "webpayments": {
70 | "count": 27,
71 | "link": "https://medium.com/samsung-internet-dev/how-to-take-payments-on-the-web-with-the-payment-request-api-a523f6fc7c1f"
72 | },
73 | "pwas": {
74 | "count": 19,
75 | "link": "https://medium.com/samsung-internet-dev/a-beginners-guide-to-making-progressive-web-apps-beb56224948e"
76 | },
77 | "physicalweb": {
78 | "count": "N/A"
79 | }
80 | }
81 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-09-26-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-09-26",
3 | "devhub": {
4 | "audience": {
5 | "uniquevisitors": {
6 | "count": 11603
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 1700
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 16271
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1085
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 41300
31 | },
32 | "mentions": {
33 | "count": 212
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 234
41 | },
42 | "reach": {
43 | "count": 527
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 16
49 | },
50 | "views": {
51 | "count": 41
52 | },
53 | "engagements": {
54 | "count": 137
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 36
62 | }
63 | }
64 | },
65 | "seo": {
66 | "webvr": {
67 | "count": 14,
68 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
69 | },
70 | "webpayments": {
71 | "count": 27,
72 | "link": "https://samsunginter.net/docs/web-payments"
73 | },
74 | "pwas": {
75 | "count": "N/A"
76 | },
77 | "physicalweb": {
78 | "count": "N/A"
79 | }
80 | }
81 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-10-10-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-10-10",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 16167
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 1800
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 14349
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1115
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 63700
31 | },
32 | "mentions": {
33 | "count": 253
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 243
41 | },
42 | "reach": {
43 | "count": 17277
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 22
49 | },
50 | "views": {
51 | "count": 61
52 | },
53 | "engagements": {
54 | "count": 225
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 39
62 | }
63 | }
64 | },
65 | "seo": {
66 | "webvr": {
67 | "count": "N/A"
68 | },
69 | "webPayments": {
70 | "count": 27,
71 | "link": "https://samsunginter.net/docs/web-payments"
72 | },
73 | "pwas": {
74 | "count": "N/A"
75 | },
76 | "physicalWeb": {
77 | "count": "N/A"
78 | }
79 | }
80 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-10-24-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-10-24",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 14447
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 1940
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 29085
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1162
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 79400
31 | },
32 | "mentions": {
33 | "count": 226
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 258
41 | },
42 | "reach": {
43 | "count": 18765
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 29
49 | },
50 | "views": {
51 | "count": 120
52 | },
53 | "engagements": {
54 | "count": 420
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 43
62 | }
63 | }
64 | },
65 | "seo": {
66 | "webvr": {
67 | "count": "N/A"
68 | },
69 | "webPayments": {
70 | "count": 27,
71 | "link": "https://samsunginter.net/docs/web-payments"
72 | },
73 | "pwas": {
74 | "count": "N/A"
75 | },
76 | "physicalWeb": {
77 | "count": "N/A"
78 | }
79 | }
80 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-10-31-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-10-31",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 13101
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2000
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 38186
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1189
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 46700
31 | },
32 | "mentions": {
33 | "count": 248
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 263
41 | },
42 | "reach": {
43 | "count": 18826
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 30
49 | },
50 | "views": {
51 | "count": 129
52 | },
53 | "engagements": {
54 | "count": 455
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 45
62 | }
63 | }
64 | },
65 | "seo": {
66 | "webvr": {
67 | "count": "N/A"
68 | },
69 | "webPayments": {
70 | "count": 27,
71 | "link": "https://samsunginter.net/docs/web-payments"
72 | },
73 | "pwas": {
74 | "count": "N/A"
75 | },
76 | "physicalWeb": {
77 | "count": "N/A"
78 | }
79 | }
80 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-11-06-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-11-06",
3 | "devHub": {
4 | "audience": {
5 | }
6 | },
7 | "medium": {
8 | "audience": {
9 | "followers": {
10 | "count": 2000
11 | }
12 | },
13 | "engagement": {
14 | "views": {
15 | "count": 46345
16 | }
17 | }
18 | },
19 | "twitter": {
20 | "audience": {
21 | "followers": {
22 | "count": 1198
23 | }
24 | },
25 | "engagement": {
26 | "impressions": {
27 | "count": 85600
28 | },
29 | "mentions": {
30 | "count": 318
31 | }
32 | }
33 | },
34 | "facebook": {
35 | "audience": {
36 | "followers": {
37 | "count": 267
38 | },
39 | "reach": {
40 | "count": 6976
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 27
46 | },
47 | "views": {
48 | "count": 121
49 | },
50 | "engagements": {
51 | "count": 394
52 | }
53 | }
54 | },
55 | "instagram": {
56 | "audience": {
57 | "followers": {
58 | "count": 45
59 | }
60 | }
61 | },
62 | "seo": {
63 | "webvr": {
64 | "count": 55,
65 | "link": "https://samsunginter.net/docs/webvr"
66 | },
67 | "webPayments": {
68 | "count": 12,
69 | "link": "https://samsunginter.net/docs/web-payments"
70 | },
71 | "pwas": {
72 | "count": 12,
73 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
74 | },
75 | "physicalWeb": {
76 | "count": 53,
77 | "link": "https://samsunginter.net/docs/physical-web"
78 | }
79 | }
80 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-11-13-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-11-13",
3 | "devHub": {
4 | "audience": {
5 | }
6 | },
7 | "medium": {
8 | "audience": {
9 | "followers": {
10 | "count": 2000
11 | }
12 | },
13 | "engagement": {
14 | "views": {
15 | "count": 45737
16 | }
17 | }
18 | },
19 | "twitter": {
20 | "audience": {
21 | "followers": {
22 | "count": 1214
23 | }
24 | },
25 | "engagement": {
26 | "impressions": {
27 | "count": 86100
28 | },
29 | "mentions": {
30 | "count": 377
31 | }
32 | }
33 | },
34 | "facebook": {
35 | "audience": {
36 | "followers": {
37 | "count": 273
38 | },
39 | "reach": {
40 | "count": 6046
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 29
46 | },
47 | "views": {
48 | "count": 128
49 | },
50 | "engagements": {
51 | "count": 353
52 | }
53 | }
54 | },
55 | "instagram": {
56 | "audience": {
57 | "followers": {
58 | "count": 46
59 | }
60 | }
61 | },
62 | "github": {
63 | "issues": {
64 | "closeTimeAvg": {
65 | "count": 5
66 | }
67 | }
68 | },
69 | "seo": {
70 | "webvr": {
71 | "count": 48,
72 | "link": "https://samsunginter.net/docs/webvr"
73 | },
74 | "webPayments": {
75 | "count": 13,
76 | "link": "https://samsunginter.net/docs/web-payments"
77 | },
78 | "pwas": {
79 | "count": 12,
80 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
81 | },
82 | "physicalWeb": {
83 | "count": 51,
84 | "link": "https://samsunginter.net/docs/physical-web"
85 | }
86 | }
87 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-11-20-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-11-20",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 13168
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2000
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 38721
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1230
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 71600
31 | },
32 | "mentions": {
33 | "count": 349
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 274
41 | },
42 | "reach": {
43 | "count": 5644
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 18
49 | },
50 | "views": {
51 | "count": 87
52 | },
53 | "engagements": {
54 | "count": 228
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 47
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 48,
75 | "link": "https://samsunginter.net/docs/webvr"
76 | },
77 | "webPayments": {
78 | "count": 13,
79 | "link": "https://samsunginter.net/docs/web-payments"
80 | },
81 | "pwas": {
82 | "count": 12,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 51,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-11-27-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-11-27",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 13043
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2100
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 36783
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1239
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 65000
31 | },
32 | "mentions": {
33 | "count": 344
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 278
41 | },
42 | "reach": {
43 | "count": 5648
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 16
49 | },
50 | "views": {
51 | "count": 89
52 | },
53 | "engagements": {
54 | "count": 211
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 48
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 32,
75 | "link": "https://samsunginter.net/docs/webvr"
76 | },
77 | "webPayments": {
78 | "count": 10,
79 | "link": "https://medium.com/samsung-internet-dev/how-to-take-payments-on-the-web-with-the-payment-request-api-a523f6fc7c1f"
80 | },
81 | "pwas": {
82 | "count": 12,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 61,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-12-04-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-12-04",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 13918
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2100
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 31817
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1260
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 57000
31 | },
32 | "mentions": {
33 | "count": 266
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 287
41 | },
42 | "reach": {
43 | "count": 1714
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 16
49 | },
50 | "views": {
51 | "count": 92
52 | },
53 | "engagements": {
54 | "count": 204
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 46
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 30,
75 | "link": "https://samsunginter.net/docs/webvr"
76 | },
77 | "webPayments": {
78 | "count": 9,
79 | "link": "https://samsunginter.net/docs/web-payments"
80 | },
81 | "pwas": {
82 | "count": 11,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 55,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2017-12-12-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2017-12-12",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | }
7 | }
8 | },
9 | "medium": {
10 | "audience": {
11 | "followers": {
12 | "count": 2100
13 | }
14 | },
15 | "engagement": {
16 | "views": {
17 | "count": 31270
18 | }
19 | }
20 | },
21 | "twitter": {
22 | "audience": {
23 | "followers": {
24 | "count": 1269
25 | }
26 | },
27 | "engagement": {
28 | "impressions": {
29 | "count": 54600
30 | },
31 | "mentions": {
32 | "count": 187
33 | }
34 | }
35 | },
36 | "facebook": {
37 | "audience": {
38 | "followers": {
39 | "count": 288
40 | },
41 | "reach": {
42 | "count": 1238
43 | }
44 | },
45 | "engagement": {
46 | "likes": {
47 | "count": 16
48 | },
49 | "views": {
50 | "count": 93
51 | },
52 | "engagements": {
53 | "count": 154
54 | }
55 | }
56 | },
57 | "instagram": {
58 | "audience": {
59 | "followers": {
60 | "count": 50
61 | }
62 | }
63 | },
64 | "github": {
65 | "issues": {
66 | "closeTimeAvg": {
67 | "count": 5
68 | }
69 | }
70 | },
71 | "seo": {
72 | "webvr": {
73 | "count": 30,
74 | "link": "https://samsunginter.net/docs/webvr"
75 | },
76 | "webPayments": {
77 | "count": 9,
78 | "link": "https://samsunginter.net/docs/web-payments"
79 | },
80 | "pwas": {
81 | "count": 11,
82 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
83 | },
84 | "physicalWeb": {
85 | "count": 55,
86 | "link": "https://samsunginter.net/docs/physical-web"
87 | }
88 | }
89 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-01-08-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-01-08",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 14954
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2200
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 31916
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1298
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 50400
31 | },
32 | "mentions": {
33 | "count": 71
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 306
41 | },
42 | "reach": {
43 | "count": 772
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 19
49 | },
50 | "views": {
51 | "count": 99
52 | },
53 | "engagements": {
54 | "count": 110
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 50
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 30,
75 | "link": "https://samsunginter.net/docs/webvr"
76 | },
77 | "webPayments": {
78 | "count": 9,
79 | "link": "https://samsunginter.net/docs/web-payments"
80 | },
81 | "pwas": {
82 | "count": 11,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 55,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-01-15-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-01-15",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 16795
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2300
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 25423
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1307
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 46500
31 | },
32 | "mentions": {
33 | "count": 64
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 311
41 | },
42 | "reach": {
43 | "count": 773
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 23
49 | },
50 | "views": {
51 | "count": 127
52 | },
53 | "engagements": {
54 | "count": 100
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 50
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 30,
75 | "link": "https://samsunginter.net/docs/webvr"
76 | },
77 | "webPayments": {
78 | "count": 9,
79 | "link": "https://samsunginter.net/docs/web-payments"
80 | },
81 | "pwas": {
82 | "count": 11,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 55,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-01-22-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-01-22",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 16795
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2300
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 30083
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1313
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 40500
31 | },
32 | "mentions": {
33 | "count": 57
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 314
41 | },
42 | "reach": {
43 | "count": 397
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 20
49 | },
50 | "views": {
51 | "count": 127
52 | },
53 | "engagements": {
54 | "count": 85
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 49
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 61,
75 | "link": "https://pusher.com/sessions/meetup/js-monthly-london/webvr-how-to-create-virtual-worlds-with-javascript"
76 | },
77 | "webPayments": {
78 | "count": 55,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 6,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 62,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-01-29-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-01-29",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 20525
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2300
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 36199
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1319
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 45900
31 | },
32 | "mentions": {
33 | "count": 100
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 317
41 | },
42 | "reach": {
43 | "count": 424
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 23
49 | },
50 | "views": {
51 | "count": 116
52 | },
53 | "engagements": {
54 | "count": 88
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 49
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 23,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 17,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 8,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 49,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-02-05-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-02-05",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 21932
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2300
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 40437
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1335
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 52400
31 | },
32 | "mentions": {
33 | "count": 102
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 320
41 | },
42 | "reach": {
43 | "count": 683
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 18
49 | },
50 | "views": {
51 | "count": 94
52 | },
53 | "engagements": {
54 | "count": 108
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 50
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 47,
75 | "link": "https://pusher.com/sessions/meetup/js-monthly-london/webvr-how-to-create-virtual-worlds-with-javascript"
76 | },
77 | "webPayments": {
78 | "count": 38,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 6,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | }
87 | }
88 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-02-12-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-02-12",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 21788
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2400
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 40576
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1342
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 42700
31 | },
32 | "mentions": {
33 | "count": 109
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 323
41 | },
42 | "reach": {
43 | "count": 696
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 13
49 | },
50 | "views": {
51 | "count": 75
52 | },
53 | "engagements": {
54 | "count": 109
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 51
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 45,
75 | "link": "https://pusher.com/sessions/meetup/js-monthly-london/webvr-how-to-create-virtual-worlds-with-javascript"
76 | },
77 | "webPayments": {
78 | "count": 35,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 12,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 72,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-02-19-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-02-19",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 20849
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2400
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 40637
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1353
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 38800
31 | },
32 | "mentions": {
33 | "count": 103
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 326
41 | },
42 | "reach": {
43 | "count": 840
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 15
49 | },
50 | "views": {
51 | "count": 70
52 | },
53 | "engagements": {
54 | "count": 125
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 51
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 19,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 41,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 9,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 62,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-02-26-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-02-26",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 21074
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2500
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 40574
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1371
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 49000
31 | },
32 | "mentions": {
33 | "count": 84
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 336
41 | },
42 | "reach": {
43 | "count": 1049
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 21
49 | },
50 | "views": {
51 | "count": 93
52 | },
53 | "engagements": {
54 | "count": 163
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 53
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | },
75 | "webPayments": {
76 | "count": 47,
77 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
78 | },
79 | "pwas": {
80 | "count": 15,
81 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
82 | },
83 | "physicalWeb": {
84 | "count": 60,
85 | "link": "https://samsunginter.net/docs/physical-web"
86 | }
87 | }
88 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-03-05-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-03-05",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 21391
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2500
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 39380
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1392
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 39800
31 | },
32 | "mentions": {
33 | "count": 102
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 344
41 | },
42 | "reach": {
43 | "count": 921
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 26
49 | },
50 | "views": {
51 | "count": 116
52 | },
53 | "engagements": {
54 | "count": 133
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 53
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 5
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 39,
75 | "link": "https://samsunginter.net/docs/webvr"
76 | },
77 | "webPayments": {
78 | "count": 20,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 10,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "physicalWeb": {
86 | "count": 48,
87 | "link": "https://samsunginter.net/docs/physical-web"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-03-12-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-03-12",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 20416
7 | }
8 | },
9 | "engagement": {
10 | "uniqueVisitors": {
11 | "count": 20416
12 | }
13 | }
14 | },
15 | "medium": {
16 | "audience": {
17 | "followers": {
18 | "count": 2500
19 | }
20 | },
21 | "engagement": {
22 | "views": {
23 | "count": 44018
24 | }
25 | }
26 | },
27 | "twitter": {
28 | "audience": {
29 | "followers": {
30 | "count": 1418
31 | }
32 | },
33 | "engagement": {
34 | "impressions": {
35 | "count": 75200
36 | },
37 | "mentions": {
38 | "count": 165
39 | }
40 | }
41 | },
42 | "facebook": {
43 | "audience": {
44 | "followers": {
45 | "count": 365
46 | },
47 | "reach": {
48 | "count": 983
49 | }
50 | },
51 | "engagement": {
52 | "likes": {
53 | "count": 43
54 | },
55 | "views": {
56 | "count": 136
57 | },
58 | "engagements": {
59 | "count": 190
60 | }
61 | }
62 | },
63 | "instagram": {
64 | "audience": {
65 | "followers": {
66 | "count": 56
67 | }
68 | }
69 | },
70 | "github": {
71 | "issues": {
72 | "closeTimeAvg": {
73 | "count": 5
74 | }
75 | }
76 | },
77 | "seo": {
78 | "webvr": {
79 | "count": 126,
80 | "link": "https://www.hanselminutes.com/565/discovering-webvr-with-ada-rose-edwards"
81 | },
82 | "webPayments": {
83 | "count": 38,
84 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
85 | },
86 | "pwas": {
87 | "count": 10,
88 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
89 | },
90 | "physicalWeb": {
91 | "count": 64,
92 | "link": "https://samsunginter.net/docs/physical-web"
93 | }
94 | }
95 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-03-19-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-03-19",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 20599
7 | }
8 | },
9 | "engagement": {
10 | "uniqueVisitors": {
11 | "count": 20599
12 | }
13 | }
14 | },
15 | "medium": {
16 | "audience": {
17 | "followers": {
18 | "count": 2600
19 | }
20 | },
21 | "engagement": {
22 | "views": {
23 | "count": 45323
24 | }
25 | }
26 | },
27 | "twitter": {
28 | "audience": {
29 | "followers": {
30 | "count": 1441
31 | }
32 | },
33 | "engagement": {
34 | "impressions": {
35 | "count": 84700
36 | },
37 | "mentions": {
38 | "count": 191
39 | }
40 | }
41 | },
42 | "facebook": {
43 | "audience": {
44 | "followers": {
45 | "count": 376
46 | },
47 | "reach": {
48 | "count": 1454
49 | }
50 | },
51 | "engagement": {
52 | "likes": {
53 | "count": 56
54 | },
55 | "views": {
56 | "count": 165
57 | },
58 | "engagements": {
59 | "count": 202
60 | }
61 | }
62 | },
63 | "instagram": {
64 | "audience": {
65 | "followers": {
66 | "count": 60
67 | }
68 | }
69 | },
70 | "github": {
71 | "issues": {
72 | "closeTimeAvg": {
73 | "count": 5
74 | }
75 | }
76 | },
77 | "seo": {
78 | "webvr": {
79 | "count": 21,
80 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
81 | },
82 | "webPayments": {
83 | "count": 13,
84 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
85 | },
86 | "pwas": {
87 | "count": 8,
88 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
89 | },
90 | "physicalWeb": {
91 | "count": 96,
92 | "link": "https://samsunginter.net/docs/physical-web"
93 | }
94 | }
95 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-03-27-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-03-27",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 20896
7 | }
8 | },
9 | "engagement": {
10 | "uniqueVisitors": {
11 | "count": 20896
12 | }
13 | }
14 | },
15 | "medium": {
16 | "audience": {
17 | "followers": {
18 | "count": 2600
19 | }
20 | },
21 | "engagement": {
22 | "views": {
23 | "count": 45158
24 | }
25 | }
26 | },
27 | "twitter": {
28 | "audience": {
29 | "followers": {
30 | "count": 1469
31 | }
32 | },
33 | "engagement": {
34 | "impressions": {
35 | "count": 85800
36 | },
37 | "mentions": {
38 | "count": 184
39 | }
40 | }
41 | },
42 | "facebook": {
43 | "audience": {
44 | "followers": {
45 | "count": 382
46 | },
47 | "reach": {
48 | "count": 1218
49 | }
50 | },
51 | "engagement": {
52 | "likes": {
53 | "count": 53
54 | },
55 | "views": {
56 | "count": 160
57 | },
58 | "engagements": {
59 | "count": 144
60 | }
61 | }
62 | },
63 | "instagram": {
64 | "audience": {
65 | "followers": {
66 | "count": 59
67 | }
68 | }
69 | },
70 | "github": {
71 | "issues": {
72 | "closeTimeAvg": {
73 | "count": 5
74 | }
75 | }
76 | },
77 | "seo": {
78 | "webvr": {
79 | "count": 11,
80 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
81 | },
82 | "webPayments": {
83 | "count": 14,
84 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
85 | },
86 | "pwas": {
87 | "count": 7,
88 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
89 | },
90 | "webBluetooth": {
91 | "count": 23,
92 | "link": "https://peteroshaughnessy.com/posts/web-bluetooth-controlling-the-real-world/"
93 | }
94 | }
95 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-04-02-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-04-02",
3 | "devHub": {
4 | "audience": {
5 | "uniqueVisitors": {
6 | "count": 20388
7 | }
8 | },
9 | "engagement": {
10 | "uniqueVisitors": {
11 | "count": 20388
12 | }
13 | }
14 | },
15 | "medium": {
16 | "audience": {
17 | "followers": {
18 | "count": 2600
19 | }
20 | },
21 | "engagement": {
22 | "views": {
23 | "count": 45597
24 | }
25 | }
26 | },
27 | "twitter": {
28 | "audience": {
29 | "followers": {
30 | "count": 1483
31 | }
32 | },
33 | "engagement": {
34 | "impressions": {
35 | "count": 87700
36 | },
37 | "mentions": {
38 | "count": 174
39 | }
40 | }
41 | },
42 | "facebook": {
43 | "audience": {
44 | "followers": {
45 | "count": 391
46 | },
47 | "reach": {
48 | "count": 1420
49 | }
50 | },
51 | "engagement": {
52 | "likes": {
53 | "count": 53
54 | },
55 | "views": {
56 | "count": 176
57 | },
58 | "engagements": {
59 | "count": 184
60 | }
61 | }
62 | },
63 | "instagram": {
64 | "audience": {
65 | "followers": {
66 | "count": 59
67 | }
68 | }
69 | },
70 | "github": {
71 | "issues": {
72 | "closeTimeAvg": {
73 | "count": 3
74 | }
75 | }
76 | },
77 | "seo": {
78 | "webvr": {
79 | "count": 16,
80 | "link": "https://samsunginter.net/docs/webvr"
81 | },
82 | "webPayments": {
83 | "count": 12,
84 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
85 | },
86 | "pwas": {
87 | "count": 9,
88 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
89 | },
90 | "webBluetooth": {
91 | "count": 36,
92 | "link": "https://samsunginter.net/docs/web-bluetooth"
93 | }
94 | }
95 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-04-09-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-04-09",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 19191
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2600
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 41033
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1486
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 54400
31 | },
32 | "mentions": {
33 | "count": 142
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 394
41 | },
42 | "reach": {
43 | "count": 1311
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 38
49 | },
50 | "views": {
51 | "count": 175
52 | },
53 | "engagements": {
54 | "count": 150
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 59
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 14,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 12,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 6,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 34,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-04-16-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-04-16",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 17929
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2700
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 49398
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1494
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 52300
31 | },
32 | "mentions": {
33 | "count": 149
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 400
41 | },
42 | "reach": {
43 | "count": 769
44 | }
45 | },
46 | "engagement": {
47 | "likes": {
48 | "count": 27
49 | },
50 | "views": {
51 | "count": 146
52 | },
53 | "engagements": {
54 | "count": 118
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 60
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 14,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 12,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 6,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 34,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-04-24-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-04-24",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 16847
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2700
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 40778
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1517
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 43600
31 | },
32 | "mentions": {
33 | "count": 205
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 403
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 23
46 | },
47 | "views": {
48 | "count": 154
49 | },
50 | "engagements": {
51 | "count": 113
52 | },
53 | "reach": {
54 | "count": 459
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 60
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 20,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 35,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 12,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 29,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-04-30-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-04-30",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 16503
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2700
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 39967
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1530
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 39400
31 | },
32 | "mentions": {
33 | "count": 230
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 403
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 15
46 | },
47 | "views": {
48 | "count": 124
49 | },
50 | "engagements": {
51 | "count": 67
52 | },
53 | "reach": {
54 | "count": 135
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 60
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 10,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 35,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
83 | },
84 | "webBluetooth": {
85 | "count": 31,
86 | "link": "https://samsunginter.net/docs/web-bluetooth"
87 | }
88 | }
89 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-05-08-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-05-08",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 17091
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2800
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 41439
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1548
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 37500
31 | },
32 | "mentions": {
33 | "count": 274
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 409
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 16
46 | },
47 | "views": {
48 | "count": 100
49 | },
50 | "engagements": {
51 | "count": 63
52 | },
53 | "reach": {
54 | "count": 229
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 59
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 12,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 20,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 12,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 33,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-05-14-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-05-14",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 17153
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2800
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 40839
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1550
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 30700
31 | },
32 | "mentions": {
33 | "count": 246
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 408
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 11
46 | },
47 | "views": {
48 | "count": 91
49 | },
50 | "engagements": {
51 | "count": 65
52 | },
53 | "reach": {
54 | "count": 226
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 60
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 13,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 21,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 13,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 25,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-05-21-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-05-21",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 16385
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2800
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 39383
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1563
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 23200
31 | },
32 | "mentions": {
33 | "count": 211
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 410
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 9
46 | },
47 | "views": {
48 | "count": 66
49 | },
50 | "engagements": {
51 | "count": 71
52 | },
53 | "reach": {
54 | "count": 244
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 61
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 18,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 33,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 14,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 42,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/general/2018-05-30-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-05-30",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 15167
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2800
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 38591
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1567
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 48200
31 | },
32 | "mentions": {
33 | "count": 160
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 411
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 10
46 | },
47 | "views": {
48 | "count": 62
49 | },
50 | "engagements": {
51 | "count": 65
52 | },
53 | "reach": {
54 | "count": 234
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 62
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 8,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 20,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 17,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 37,
87 | "link": "https://peteroshaughnessy.com/posts/web-bluetooth-controlling-the-real-world/"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/archive/medium/2017-04-13-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 3/15/2017,364,387.00000000000006,373
3 | 3/16/2017,354,361,312
4 | 3/17/2017,261,256,270
5 | 3/18/2017,152,163.99999999999997,205.00000000000003
6 | 3/19/2017,167,167.00000000000003,138.00000000000003
7 | 3/20/2017,231,301,121.99999999999997
8 | 3/21/2017,353,465,221
9 | 3/22/2017,272,293,338.00000000000006
10 | 3/23/2017,192,224,217.00000000000003
11 | 3/24/2017,203,231.00000000000003,177
12 | 3/25/2017,76,109,177
13 | 3/26/2017,83,113.00000000000001,77.99999999999999
14 | 3/27/2017,148,205,84
15 | 3/28/2017,144,191.99999999999997,158.00000000000003
16 | 3/29/2017,459,466,148.00000000000003
17 | 3/30/2017,260,289,326
18 | 3/31/2017,145,229,202
19 | 4/1/2017,101,129.99999999999997,145.99999999999997
20 | 4/2/2017,116,132,103.00000000000001
21 | 4/3/2017,151,212,103.99999999999999
22 | 4/4/2017,123,186,133
23 | 4/5/2017,219,203,145.99999999999997
24 | 4/6/2017,129,207,152
25 | 4/7/2017,157,202,152.99999999999997
26 | 4/8/2017,103,124.00000000000001,142.99999999999997
27 | 4/9/2017,54,114.00000000000001,87
28 | 4/10/2017,145,209,81.00000000000001
29 | 4/11/2017,322,364,159
30 | 4/12/2017,216,263,295
31 | 4/13/2017,84,72,199.00000000000003
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-05-25-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 4/25/2017,6886,4339,3004
3 | 4/26/2017,4033,2563.9999999999995,4014
4 | 4/27/2017,1713,1206.9999999999998,2279
5 | 4/28/2017,626,498.9999999999999,1066
6 | 4/29/2017,629,516,434.0000000000001
7 | 4/30/2017,1386,1000,457.9999999999999
8 | 5/1/2017,3769,3062.9999999999995,918.9999999999998
9 | 5/2/2017,2891,2384.9999999999995,2671
10 | 5/3/2017,1776,1403,2014.9999999999998
11 | 5/4/2017,955,887,1244
12 | 5/5/2017,447,411.99999999999966,743
13 | 5/6/2017,476,441.99999999999994,339.0000000000002
14 | 5/7/2017,1472,1387.9999999999995,386
15 | 5/8/2017,1770,1421.9999999999998,1228.0000000000002
16 | 5/9/2017,1023,965,1173.9999999999998
17 | 5/10/2017,711,593.0000000000001,797.0000000000001
18 | 5/11/2017,769,834,474.99999999999994
19 | 5/12/2017,1166,1172.9999999999995,717.0000000000001
20 | 5/13/2017,615,628.0000000000001,1034.0000000000002
21 | 5/14/2017,1252,1221.9999999999995,532.9999999999998
22 | 5/15/2017,1159,1089.9999999999998,1041.9999999999998
23 | 5/16/2017,939,989.9999999999999,883.9999999999999
24 | 5/17/2017,1172,1088,808.0000000000002
25 | 5/18/2017,719,788.9999999999999,852.9999999999998
26 | 5/19/2017,440,441.99999999999994,616.0000000000002
27 | 5/20/2017,349,424.9999999999999,346
28 | 5/21/2017,988,1007,311.0000000000001
29 | 5/22/2017,883,873.9999999999999,829
30 | 5/23/2017,744,823.9999999999999,709.9999999999998
31 | 5/24/2017,451,551,629.9999999999998
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-06-14-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 6/14/2017,1224,1061.3437195715676,894.6125778063965
3 | 6/15/2017,992,963.9727361246349,758.9611504614721
4 | 6/16/2017,1237,1059.396299902629,693.7110968018886
5 | 6/17/2017,760,768.2570593963002,732.3459969950636
6 | 6/18/2017,465,430.37974683544337,528.8688559776776
7 | 6/19/2017,368,413.8266796494646,297.0594548186308
8 | 6/20/2017,1044,980.525803310613,267.01008800171724
9 | 6/21/2017,932,851.0223953261926,711.7407168920369
10 | 6/22/2017,786,802.336903602726,609.5728697145312
11 | 6/23/2017,591,629.9902629016552,540.8886027044431
12 | 6/24/2017,804,734.1772151898731,416.3983687486588
13 | 6/25/2017,335,373.9045764362219,504.82936252414675
14 | 6/26/2017,329,340.79844206426503,261.0002146383345
15 | 6/27/2017,498,589.0944498539435,233.52650783429908
16 | 6/28/2017,6000,5000,411.247048722902
17 | 6/29/2017,3362,2520.9347614410904,4000
18 | 6/30/2017,1547,1267.7702044790653,1990.9851899549258
19 | 7/1/2017,1230,941.5774099318405,967.589611504615
20 | 7/2/2017,462,440.1168451801362,673.1058166988623
21 | 7/3/2017,458,384.61538461538487,301.3522215067613
22 | 7/4/2017,779,641.6747809152872,287.61536810474354
23 | 7/5/2017,2306,1441.0905550146051,434.4279888388064
24 | 7/6/2017,1405,942.5511197663095,1079.201545396008
25 | 7/7/2017,972,773.1256085686463,685.9841167632537
26 | 7/8/2017,650,596.8841285296984,546.8984760678258
27 | 7/9/2017,378,358.3252190847127,433.5694355011805
28 | 7/10/2017,329,307.6923076923075,248.1219145739427
29 | 7/11/2017,581,600.7789678675755,224.9409744580382
30 | 7/12/2017,2103,1618.3057448880231,388.0661086069975
31 | 7/13/2017,677,489.77604673807235,1238.8924661944623
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-06-19-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 5/21/2017,368,413.8266796494646,297.0594548186308
3 | 5/22/2017,1044,980.525803310613,267.01008800171724
4 | 5/23/2017,932,851.0223953261926,711.7407168920369
5 | 5/24/2017,786,802.336903602726,609.5728697145312
6 | 5/25/2017,591,629.9902629016552,540.8886027044431
7 | 5/26/2017,804,734.1772151898731,416.3983687486588
8 | 5/27/2017,335,373.9045764362219,504.82936252414675
9 | 5/28/2017,329,340.79844206426503,261.0002146383345
10 | 5/29/2017,498,589.0944498539435,233.52650783429908
11 | 5/30/2017,6000,5000,411.247048722902
12 | 5/31/2017,3362,2520.9347614410904,4000
13 | 6/1/2017,1547,1267.7702044790653,1990.9851899549258
14 | 6/2/2017,1230,941.5774099318405,967.589611504615
15 | 6/3/2017,462,440.1168451801362,673.1058166988623
16 | 6/4/2017,458,384.61538461538487,301.3522215067613
17 | 6/5/2017,779,641.6747809152872,287.61536810474354
18 | 6/6/2017,2306,1441.0905550146051,434.4279888388064
19 | 6/7/2017,1405,942.5511197663095,1079.201545396008
20 | 6/8/2017,972,773.1256085686463,685.9841167632537
21 | 6/9/2017,650,596.8841285296984,546.8984760678258
22 | 6/10/2017,378,358.3252190847127,433.5694355011805
23 | 6/11/2017,329,307.6923076923075,248.1219145739427
24 | 6/12/2017,581,600.7789678675755,224.9409744580382
25 | 6/13/2017,2103,1618.3057448880231,388.0661086069975
26 | 6/14/2017,1328,1024.3427458617336,1238.8924661944623
27 | 6/15/2017,673,702.0447906523859,764.9710238248554
28 | 6/16/2017,550,544.3037974683547,449.02339557845056
29 | 6/17/2017,267,261.92794547224906,345.1384417256921
30 | 6/18/2017,274,251.21713729308667,196.6087143163769
31 | 6/19/2017,219,244.4011684518014,168.27645417471558
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-07-03-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 6/4/2017,434,395,351
3 | 6/5/2017,738,659,335
4 | 6/6/2017,2184,1480,506
5 | 6/7/2017,1331,968,1257
6 | 6/8/2017,920,794,799
7 | 6/9/2017,616,613,637
8 | 6/10/2017,358,368,505
9 | 6/11/2017,311,316,289
10 | 6/12/2017,550,617,262
11 | 6/13/2017,1992,1662,452
12 | 6/14/2017,1258,1052,1443
13 | 6/15/2017,637,721,891
14 | 6/16/2017,521,559,523
15 | 6/17/2017,253,269,402
16 | 6/18/2017,260,258,229
17 | 6/19/2017,449,470,196
18 | 6/20/2017,492,452,354
19 | 6/21/2017,430,423,367
20 | 6/22/2017,348,403,324
21 | 6/23/2017,355,351,303
22 | 6/24/2017,202,227,276
23 | 6/25/2017,200,266,166
24 | 6/26/2017,444,421,182
25 | 6/27/2017,323,338,330
26 | 6/28/2017,439,449,281
27 | 6/29/2017,377,410,348
28 | 6/30/2017,2635,2038,332
29 | 7/1/2017,5589,3630,1769
30 | 7/2/2017,6867,5417,3205
31 | 7/3/2017,4804,3635,4928
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-07-11-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 6/12/2017,550,617,262
3 | 6/13/2017,1992,1662,452
4 | 6/14/2017,1258,1052,1443
5 | 6/15/2017,637,721,891
6 | 6/16/2017,521,559,523
7 | 6/17/2017,253,269,402
8 | 6/18/2017,260,258,229
9 | 6/19/2017,449,470,196
10 | 6/20/2017,492,452,354
11 | 6/21/2017,430,423,367
12 | 6/22/2017,348,403,324
13 | 6/23/2017,355,351,303
14 | 6/24/2017,202,227,276
15 | 6/25/2017,200,266,166
16 | 6/26/2017,444,421,182
17 | 6/27/2017,323,338,330
18 | 6/28/2017,439,449,281
19 | 6/29/2017,377,410,348
20 | 6/30/2017,2635,2038,332
21 | 7/1/2017,5589,3630,1769
22 | 7/2/2017,6867,5417,3205
23 | 7/3/2017,5725,4288,4928
24 | 7/4/2017,1914,1427,3814
25 | 7/5/2017,6888,4029,1185
26 | 7/6/2017,5838,3473,3502
27 | 7/7/2017,1320,976,2911
28 | 7/8/2017,584,564,825
29 | 7/9/2017,743,594,460
30 | 7/10/2017,1920,1505,480
31 | 7/11/2017,307,301,1257
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-07-18-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 6/19/2017,449,470,196
3 | 6/20/2017,492,452,354
4 | 6/21/2017,430,423,367
5 | 6/22/2017,348,403,324
6 | 6/23/2017,355,351,303
7 | 6/24/2017,202,227,276
8 | 6/25/2017,200,266,166
9 | 6/26/2017,444,421,182
10 | 6/27/2017,323,338,330
11 | 6/28/2017,439,449,281
12 | 6/29/2017,377,410,348
13 | 6/30/2017,2635,2038,332
14 | 7/1/2017,5589,3630,1769
15 | 7/2/2017,6867,5417,3205
16 | 7/3/2017,5725,4288,4928
17 | 7/4/2017,1914,1427,3814
18 | 7/5/2017,6888,4029,1185
19 | 7/6/2017,5838,3473,3502
20 | 7/7/2017,1320,976,2911
21 | 7/8/2017,584,564,825
22 | 7/9/2017,743,594,460
23 | 7/10/2017,1920,1505,480
24 | 7/11/2017,1473,1291,1257
25 | 7/12/2017,2146,1797,1020
26 | 7/13/2017,3114,1963,1543
27 | 7/14/2017,1512,1159,1627
28 | 7/15/2017,589,596,959
29 | 7/16/2017,741,612,510
30 | 7/17/2017,1101,963,528
31 | 7/18/2017,267,203,810
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-07-24-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 6/25/2017,200,266,166
3 | 6/26/2017,444,421,182
4 | 6/27/2017,323,338,330
5 | 6/28/2017,439,449,281
6 | 6/29/2017,377,410,348
7 | 6/30/2017,2635,2038,332
8 | 7/1/2017,5589,3630,1769
9 | 7/2/2017,6867,5417,3205
10 | 7/3/2017,5725,4288,4928
11 | 7/4/2017,1914,1427,3814
12 | 7/5/2017,6888,4029,1185
13 | 7/6/2017,5838,3473,3502
14 | 7/7/2017,1320,976,2911
15 | 7/8/2017,584,564,825
16 | 7/9/2017,743,594,460
17 | 7/10/2017,1920,1505,480
18 | 7/11/2017,1473,1291,1257
19 | 7/12/2017,2146,1797,1020
20 | 7/13/2017,3114,1963,1543
21 | 7/14/2017,1512,1159,1627
22 | 7/15/2017,589,596,959
23 | 7/16/2017,741,612,510
24 | 7/17/2017,1101,963,528
25 | 7/18/2017,1010,931,810
26 | 7/19/2017,1378,1189,761
27 | 7/20/2017,1567,1476,915
28 | 7/21/2017,1196,1123,1186
29 | 7/22/2017,906,638,882
30 | 7/23/2017,648,515,535
31 | 7/24/2017,1267,1196,425
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-08-01-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 7/3/2017,5725,4288,4928
3 | 7/4/2017,1914,1427,3814
4 | 7/5/2017,6888,4029,1185
5 | 7/6/2017,5838,3473,3502
6 | 7/7/2017,1320,976,2911
7 | 7/8/2017,584,564,825
8 | 7/9/2017,743,594,460
9 | 7/10/2017,1920,1505,480
10 | 7/11/2017,1473,1291,1257
11 | 7/12/2017,2146,1797,1020
12 | 7/13/2017,3114,1963,1543
13 | 7/14/2017,1512,1159,1627
14 | 7/15/2017,589,596,959
15 | 7/16/2017,741,612,510
16 | 7/17/2017,1101,963,528
17 | 7/18/2017,1010,931,810
18 | 7/19/2017,1378,1189,761
19 | 7/20/2017,1567,1476,915
20 | 7/21/2017,1196,1123,1186
21 | 7/22/2017,906,638,882
22 | 7/23/2017,648,515,535
23 | 7/24/2017,3219,2887,425
24 | 7/25/2017,3695,3051,2408
25 | 7/26/2017,1980,1724,2494
26 | 7/27/2017,1786,1558,1353
27 | 7/28/2017,2405,2070,1270
28 | 7/29/2017,1411,1267,1689
29 | 7/30/2017,910,758,1083
30 | 7/31/2017,1986,1664,615
31 | 8/1/2017,209,224,1401
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-08-07-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 7/9/2017,743,594,460
3 | 7/10/2017,1920,1505,480
4 | 7/11/2017,1473,1291,1257
5 | 7/12/2017,2146,1797,1020
6 | 7/13/2017,3114,1963,1543
7 | 7/14/2017,1512,1159,1627
8 | 7/15/2017,589,596,959
9 | 7/16/2017,741,612,510
10 | 7/17/2017,1101,963,528
11 | 7/18/2017,1010,931,810
12 | 7/19/2017,1378,1189,761
13 | 7/20/2017,1567,1476,915
14 | 7/21/2017,1196,1123,1186
15 | 7/22/2017,906,638,882
16 | 7/23/2017,648,515,535
17 | 7/24/2017,3219,2887,425
18 | 7/25/2017,3695,3051,2408
19 | 7/26/2017,1980,1724,2494
20 | 7/27/2017,1786,1558,1353
21 | 7/28/2017,2405,2070,1270
22 | 7/29/2017,1411,1267,1689
23 | 7/30/2017,910,758,1083
24 | 7/31/2017,1986,1664,615
25 | 8/1/2017,1300,1121,1401
26 | 8/2/2017,1037,1013,895
27 | 8/3/2017,983,966,833
28 | 8/4/2017,840,827,786
29 | 8/5/2017,435,487,664
30 | 8/6/2017,510,490,403
31 | 8/7/2017,269,243,412
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-08-14-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 7/16/2017,741,612,510
3 | 7/17/2017,1101,963,528
4 | 7/18/2017,1010,931,810
5 | 7/19/2017,1378,1189,761
6 | 7/20/2017,1567,1476,915
7 | 7/21/2017,1196,1123,1186
8 | 7/22/2017,906,638,882
9 | 7/23/2017,648,515,535
10 | 7/24/2017,3219,2887,425
11 | 7/25/2017,3695,3051,2408
12 | 7/26/2017,1980,1724,2494
13 | 7/27/2017,1786,1558,1353
14 | 7/28/2017,2405,2070,1270
15 | 7/29/2017,1411,1267,1689
16 | 7/30/2017,910,758,1083
17 | 7/31/2017,1986,1664,615
18 | 8/1/2017,1300,1121,1401
19 | 8/2/2017,1037,1013,895
20 | 8/3/2017,983,966,833
21 | 8/4/2017,840,827,786
22 | 8/5/2017,435,487,664
23 | 8/6/2017,510,490,403
24 | 8/7/2017,675,681,412
25 | 8/8/2017,650,659,560
26 | 8/9/2017,1375,1628,485
27 | 8/10/2017,2761,4132,1357
28 | 8/11/2017,2945,4606,3562
29 | 8/12/2017,1440,1981,3943
30 | 8/13/2017,925,1244,1664
31 | 8/14/2017,579,591,1045
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-08-19-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 7/21/2017,1196,1123,1186
3 | 7/22/2017,906,638,882
4 | 7/23/2017,648,515,535
5 | 7/24/2017,3219,2887,425
6 | 7/25/2017,3695,3051,2408
7 | 7/26/2017,1980,1724,2494
8 | 7/27/2017,1786,1558,1353
9 | 7/28/2017,2405,2070,1270
10 | 7/29/2017,1411,1267,1689
11 | 7/30/2017,910,758,1083
12 | 7/31/2017,1986,1664,615
13 | 8/1/2017,1300,1121,1401
14 | 8/2/2017,1037,1013,895
15 | 8/3/2017,983,966,833
16 | 8/4/2017,840,827,786
17 | 8/5/2017,435,487,664
18 | 8/6/2017,510,490,403
19 | 8/7/2017,675,681,412
20 | 8/8/2017,650,659,560
21 | 8/9/2017,1375,1628,485
22 | 8/10/2017,2761,4132,1357
23 | 8/11/2017,2945,4606,3562
24 | 8/12/2017,1440,1983,3943
25 | 8/13/2017,925,1266,1664
26 | 8/14/2017,1008,1186,1045
27 | 8/15/2017,742,855,963
28 | 8/16/2017,848,936,725
29 | 8/17/2017,650,722,736
30 | 8/18/2017,579,635,570
31 | 8/19/2017,147,204,501
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-09-12-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 8/14/2017,1008,1186,1045
3 | 8/15/2017,742,855,963
4 | 8/16/2017,848,936,725
5 | 8/17/2017,650,722,736
6 | 8/18/2017,579,635,570
7 | 8/19/2017,374,402,501
8 | 8/20/2017,367,401,316
9 | 8/21/2017,581,547,330
10 | 8/22/2017,734,755,461
11 | 8/23/2017,720,675,628
12 | 8/24/2017,792,718,556
13 | 8/25/2017,1181,984,587
14 | 8/26/2017,510,557,846
15 | 8/27/2017,435,438,435
16 | 8/28/2017,1400,1185,353
17 | 8/29/2017,1146,1066,987
18 | 8/30/2017,1126,968,802
19 | 8/31/2017,817,759,808
20 | 9/1/2017,554,577,570
21 | 9/2/2017,438,408,455
22 | 9/3/2017,539,407,312
23 | 9/4/2017,494,530,324
24 | 9/5/2017,709,629,403
25 | 9/6/2017,570,597,488
26 | 9/7/2017,574,531,485
27 | 9/8/2017,518,513,427
28 | 9/9/2017,355,343,395
29 | 9/10/2017,319,357,280
30 | 9/11/2017,775,717,300
31 | 9/12/2017,169,145,592
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-09-26-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 8/28/2017,1400,1185,353
3 | 8/29/2017,1146,1066,987
4 | 8/30/2017,1126,968,802
5 | 8/31/2017,817,759,808
6 | 9/1/2017,554,577,570
7 | 9/2/2017,438,408,455
8 | 9/3/2017,539,407,312
9 | 9/4/2017,494,530,324
10 | 9/5/2017,709,629,403
11 | 9/6/2017,570,597,488
12 | 9/7/2017,574,531,485
13 | 9/8/2017,518,513,427
14 | 9/9/2017,355,343,395
15 | 9/10/2017,319,357,280
16 | 9/11/2017,775,717,300
17 | 9/12/2017,688,611,592
18 | 9/13/2017,548,517,513
19 | 9/14/2017,476,526,418
20 | 9/15/2017,457,479,430
21 | 9/16/2017,332,340,348
22 | 9/17/2017,313,363,281
23 | 9/18/2017,537,511,295
24 | 9/19/2017,453,494,415
25 | 9/20/2017,565,505,379
26 | 9/21/2017,475,550,417
27 | 9/22/2017,569,533,435
28 | 9/23/2017,328,356,443
29 | 9/24/2017,272,304,288
30 | 9/25/2017,525,479,252
31 | 9/26/2017,176,116,380
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-10-09-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 9/10/2017,319,357,280
3 | 9/11/2017,775,717,300
4 | 9/12/2017,688,611,592
5 | 9/13/2017,548,517,513
6 | 9/14/2017,476,526,418
7 | 9/15/2017,457,479,430
8 | 9/16/2017,332,340,348
9 | 9/17/2017,313,363,281
10 | 9/18/2017,537,511,295
11 | 9/19/2017,453,494,415
12 | 9/20/2017,565,505,379
13 | 9/21/2017,475,550,417
14 | 9/22/2017,569,533,435
15 | 9/23/2017,328,356,443
16 | 9/24/2017,272,304,288
17 | 9/25/2017,525,479,252
18 | 9/26/2017,660,548,380
19 | 9/27/2017,587,680,424
20 | 9/28/2017,504,496,550
21 | 9/29/2017,399,439,412
22 | 9/30/2017,249,305,351
23 | 10/1/2017,334,345,239
24 | 10/2/2017,451,473,292
25 | 10/3/2017,656,536,387
26 | 10/4/2017,532,524,433
27 | 10/5/2017,874,764,409
28 | 10/6/2017,665,593,600
29 | 10/7/2017,403,350,463
30 | 10/8/2017,370,374,290
31 | 10/9/2017,686,637,300
--------------------------------------------------------------------------------
/data/archive/medium/2017-10-24-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 9/25/2017,525,479,252
3 | 9/26/2017,660,548,380
4 | 9/27/2017,587,680,424
5 | 9/28/2017,504,496,550
6 | 9/29/2017,399,439,412
7 | 9/30/2017,249,305,351
8 | 10/1/2017,334,345,239
9 | 10/2/2017,451,473,292
10 | 10/3/2017,656,536,387
11 | 10/4/2017,532,524,433
12 | 10/5/2017,874,764,409
13 | 10/6/2017,665,593,600
14 | 10/7/2017,403,350,463
15 | 10/8/2017,370,374,290
16 | 10/9/2017,699,677,300
17 | 10/10/2017,934,976,541
18 | 10/11/2017,1669,1310,779
19 | 10/12/2017,4946,2301,1099
20 | 10/13/2017,3595,1658,1994
21 | 10/14/2017,1375,851,1428
22 | 10/15/2017,1810,1085,721
23 | 10/16/2017,3813,2120,927
24 | 10/17/2017,5863,3469,1859
25 | 10/18/2017,3606,2050,3127
26 | 10/19/2017,3002,1720,1781
27 | 10/20/2017,2157,1327,1475
28 | 10/21/2017,811,590,1126
29 | 10/22/2017,955,670,497
30 | 10/23/2017,1687,1102,561
31 | 10/24/2017,383,273,929
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-10-31-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 10/2/2017,451,473,292
3 | 10/3/2017,656,536,387
4 | 10/4/2017,532,524,433
5 | 10/5/2017,874,764,409
6 | 10/6/2017,665,593,600
7 | 10/7/2017,403,350,463
8 | 10/8/2017,370,374,290
9 | 10/9/2017,699,677,300
10 | 10/10/2017,934,976,541
11 | 10/11/2017,1669,1310,779
12 | 10/12/2017,4946,2301,1099
13 | 10/13/2017,3595,1658,1994
14 | 10/14/2017,1375,851,1428
15 | 10/15/2017,1810,1085,721
16 | 10/16/2017,3813,2120,927
17 | 10/17/2017,5863,3469,1859
18 | 10/18/2017,3606,2050,3127
19 | 10/19/2017,3002,1720,1781
20 | 10/20/2017,2157,1327,1475
21 | 10/21/2017,811,590,1126
22 | 10/22/2017,955,670,497
23 | 10/23/2017,1687,1102,561
24 | 10/24/2017,1880,1315,929
25 | 10/25/2017,2734,1844,1092
26 | 10/26/2017,2174,1568,1568
27 | 10/27/2017,2537,1567,1337
28 | 10/28/2017,1453,929,1384
29 | 10/29/2017,200,779,777
30 | 10/30/2017,0,3353,604
31 | 10/31/2017,0,1311,2258
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-11-06-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 10/8/2017,370,374,290
3 | 10/9/2017,699,677,300
4 | 10/10/2017,934,976,541
5 | 10/11/2017,1669,1310,779
6 | 10/12/2017,4946,2301,1099
7 | 10/13/2017,3595,1658,1994
8 | 10/14/2017,1375,851,1428
9 | 10/15/2017,1810,1085,721
10 | 10/16/2017,3813,2120,927
11 | 10/17/2017,5863,3469,1859
12 | 10/18/2017,3606,2050,3127
13 | 10/19/2017,3002,1720,1781
14 | 10/20/2017,2157,1327,1475
15 | 10/21/2017,811,590,1126
16 | 10/22/2017,955,670,497
17 | 10/23/2017,1687,1102,561
18 | 10/24/2017,1880,1315,929
19 | 10/25/2017,2734,1844,1092
20 | 10/26/2017,2174,1568,1568
21 | 10/27/2017,2537,1567,1337
22 | 10/28/2017,1453,929,1384
23 | 10/29/2017,1128,779,777
24 | 10/30/2017,2925,3353,604
25 | 10/31/2017,4246,5105,2555
26 | 11/1/2017,2769,2927,4171
27 | 11/2/2017,1752,1768,2343
28 | 11/3/2017,1548,1546,1456
29 | 11/4/2017,987,965,1249
30 | 11/5/2017,915,374,752
31 | 11/6/2017,788,25,320
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-11-13-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 10/15/2017,1810,1085,721
3 | 10/16/2017,3813,2120,927
4 | 10/17/2017,5863,3469,1859
5 | 10/18/2017,3606,2050,3127
6 | 10/19/2017,3002,1720,1781
7 | 10/20/2017,2157,1327,1475
8 | 10/21/2017,811,590,1126
9 | 10/22/2017,955,670,497
10 | 10/23/2017,1687,1102,561
11 | 10/24/2017,1880,1315,929
12 | 10/25/2017,2734,1844,1092
13 | 10/26/2017,2174,1568,1568
14 | 10/27/2017,2537,1567,1337
15 | 10/28/2017,1453,929,1384
16 | 10/29/2017,1128,779,777
17 | 10/30/2017,2925,3353,604
18 | 10/31/2017,4246,5105,2555
19 | 11/1/2017,2769,2927,4171
20 | 11/2/2017,1752,1768,2343
21 | 11/3/2017,1548,1546,1456
22 | 11/4/2017,987,965,1249
23 | 11/5/2017,915,781,752
24 | 11/6/2017,1278,1229,650
25 | 11/7/2017,1228,1321,976
26 | 11/8/2017,1280,1230,998
27 | 11/9/2017,1078,1031,964
28 | 11/10/2017,947,929,852
29 | 11/11/2017,592,599,737
30 | 11/12/2017,642,534,500
31 | 11/13/2017,318,331,436
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-11-20-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 10/22/2017,955,670,497
3 | 10/23/2017,1687,1102,561
4 | 10/24/2017,1880,1315,929
5 | 10/25/2017,2734,1844,1092
6 | 10/26/2017,2174,1568,1568
7 | 10/27/2017,2537,1567,1337
8 | 10/28/2017,1453,929,1384
9 | 10/29/2017,1128,779,777
10 | 10/30/2017,2925,3353,604
11 | 10/31/2017,4246,5105,2555
12 | 11/1/2017,2769,2927,4171
13 | 11/2/2017,1752,1768,2343
14 | 11/3/2017,1548,1546,1456
15 | 11/4/2017,987,965,1249
16 | 11/5/2017,915,781,752
17 | 11/6/2017,1278,1229,650
18 | 11/7/2017,1228,1321,976
19 | 11/8/2017,1280,1230,998
20 | 11/9/2017,1078,1031,964
21 | 11/10/2017,947,929,852
22 | 11/11/2017,592,599,737
23 | 11/12/2017,642,534,500
24 | 11/13/2017,952,919,436
25 | 11/14/2017,916,761,738
26 | 11/15/2017,1014,831,639
27 | 11/16/2017,806,706,675
28 | 11/17/2017,795,698,612
29 | 11/18/2017,627,573,578
30 | 11/19/2017,696,546,467
31 | 11/20/2017,680,595,454
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-11-27-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 10/29/2017,1128,779,777
3 | 10/30/2017,2925,3353,604
4 | 10/31/2017,4246,5105,2555
5 | 11/1/2017,2769,2927,4171
6 | 11/2/2017,1752,1768,2343
7 | 11/3/2017,1548,1546,1456
8 | 11/4/2017,987,965,1249
9 | 11/5/2017,915,781,752
10 | 11/6/2017,1278,1229,650
11 | 11/7/2017,1228,1321,976
12 | 11/8/2017,1280,1230,998
13 | 11/9/2017,1078,1031,964
14 | 11/10/2017,947,929,852
15 | 11/11/2017,592,599,737
16 | 11/12/2017,642,534,500
17 | 11/13/2017,952,919,436
18 | 11/14/2017,916,761,738
19 | 11/15/2017,1014,831,639
20 | 11/16/2017,806,706,675
21 | 11/17/2017,795,698,612
22 | 11/18/2017,627,573,578
23 | 11/19/2017,696,546,467
24 | 11/20/2017,1024,867,454
25 | 11/21/2017,1103,937,707
26 | 11/22/2017,849,721,744
27 | 11/23/2017,1797,1755,585
28 | 11/24/2017,2065,1653,1448
29 | 11/25/2017,963,813,1415
30 | 11/26/2017,851,735,679
31 | 11/27/2017,292,171,592
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-12-04-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 11/5/2017,915,781,752
3 | 11/6/2017,1278,1229,650
4 | 11/7/2017,1228,1321,976
5 | 11/8/2017,1280,1230,998
6 | 11/9/2017,1078,1031,964
7 | 11/10/2017,947,929,852
8 | 11/11/2017,592,599,737
9 | 11/12/2017,642,534,500
10 | 11/13/2017,952,919,436
11 | 11/14/2017,916,761,738
12 | 11/15/2017,1014,831,639
13 | 11/16/2017,806,706,675
14 | 11/17/2017,795,698,612
15 | 11/18/2017,627,573,578
16 | 11/19/2017,696,546,467
17 | 11/20/2017,1024,867,454
18 | 11/21/2017,1103,937,707
19 | 11/22/2017,849,721,744
20 | 11/23/2017,1797,1755,585
21 | 11/24/2017,2065,1653,1448
22 | 11/25/2017,963,813,1415
23 | 11/26/2017,851,735,679
24 | 11/27/2017,1269,1144,592
25 | 11/28/2017,1941,1617,930
26 | 11/29/2017,2257,1824,1377
27 | 11/30/2017,2227,1938,1562
28 | 12/1/2017,2219,1968,1673
29 | 12/2/2017,1078,976,1725
30 | 12/3/2017,1108,951,828
31 | 12/4/2017,1493,1298,800
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2017-12-12-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 11/13/2017,952,919,436
3 | 11/14/2017,916,761,738
4 | 11/15/2017,1014,831,639
5 | 11/16/2017,806,706,675
6 | 11/17/2017,795,698,612
7 | 11/18/2017,627,573,578
8 | 11/19/2017,696,546,467
9 | 11/20/2017,1024,867,454
10 | 11/21/2017,1103,937,707
11 | 11/22/2017,849,721,744
12 | 11/23/2017,1797,1755,585
13 | 11/24/2017,2065,1653,1448
14 | 11/25/2017,963,813,1415
15 | 11/26/2017,851,735,679
16 | 11/27/2017,1269,1144,592
17 | 11/28/2017,1941,1617,930
18 | 11/29/2017,2257,1824,1377
19 | 11/30/2017,2227,1938,1562
20 | 12/1/2017,2219,1968,1673
21 | 12/2/2017,1078,976,1725
22 | 12/3/2017,1108,951,828
23 | 12/4/2017,1687,1501,800
24 | 12/5/2017,1252,1165,1256
25 | 12/6/2017,1309,1082,976
26 | 12/7/2017,1510,1165,911
27 | 12/8/2017,1152,936,1009
28 | 12/9/2017,663,680,804
29 | 12/10/2017,722,648,569
30 | 12/11/2017,1215,1036,546
31 | 12/12/2017,158,124,837
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-01-08-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 12/10/2017,722,648,569
3 | 12/11/2017,1215,1036,546
4 | 12/12/2017,1690,1313,837
5 | 12/13/2017,1962,1329,1081
6 | 12/14/2017,1183,1006,1136
7 | 12/15/2017,1084,898,840
8 | 12/16/2017,690,559,738
9 | 12/17/2017,615,576,468
10 | 12/18/2017,1074,933,493
11 | 12/19/2017,1044,850,763
12 | 12/20/2017,1449,1279,685
13 | 12/21/2017,1414,1052,1072
14 | 12/22/2017,1326,997,887
15 | 12/23/2017,860,657,827
16 | 12/24/2017,753,590,538
17 | 12/25/2017,591,615,495
18 | 12/26/2017,965,737,483
19 | 12/27/2017,1207,800,602
20 | 12/28/2017,952,773,698
21 | 12/29/2017,1260,921,646
22 | 12/30/2017,719,581,780
23 | 12/31/2017,738,626,494
24 | 1/1/2018,692,560,499
25 | 1/2/2018,1341,990,450
26 | 1/3/2018,1523,1033,827
27 | 1/4/2018,1423,1041,853
28 | 1/5/2018,1400,1022,857
29 | 1/6/2018,846,729,810
30 | 1/7/2018,931,704,562
31 | 1/8/2018,246,183,596
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-01-15-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 12/17/2017,615,576,468
3 | 12/18/2017,1074,933,493
4 | 12/19/2017,1044,850,763
5 | 12/20/2017,1449,1279,685
6 | 12/21/2017,1414,1052,1072
7 | 12/22/2017,1326,997,887
8 | 12/23/2017,860,657,827
9 | 12/24/2017,753,590,538
10 | 12/25/2017,591,615,495
11 | 12/26/2017,965,737,483
12 | 12/27/2017,1207,800,602
13 | 12/28/2017,952,773,698
14 | 12/29/2017,1260,921,646
15 | 12/30/2017,719,581,780
16 | 12/31/2017,738,626,494
17 | 1/1/2018,692,560,499
18 | 1/2/2018,1341,990,450
19 | 1/3/2018,1523,1033,827
20 | 1/4/2018,1423,1041,853
21 | 1/5/2018,1400,1022,857
22 | 1/6/2018,846,729,810
23 | 1/7/2018,931,704,562
24 | 1/8/2018,1311,997,596
25 | 1/9/2018,1612,1179,836
26 | 1/10/2018,1458,1265,986
27 | 1/11/2018,2076,1391,1034
28 | 1/12/2018,1858,1333,1157
29 | 1/13/2018,1747,1192,1124
30 | 1/14/2018,0,0,1002
31 | 1/15/2018,0,0,1251
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-01-22-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 12/24/2017,753,590,538
3 | 12/25/2017,591,615,495
4 | 12/26/2017,965,737,483
5 | 12/27/2017,1207,800,602
6 | 12/28/2017,952,773,698
7 | 12/29/2017,1260,921,646
8 | 12/30/2017,719,581,780
9 | 12/31/2017,738,626,494
10 | 1/1/2018,692,560,499
11 | 1/2/2018,1341,990,450
12 | 1/3/2018,1523,1033,827
13 | 1/4/2018,1423,1041,853
14 | 1/5/2018,1400,1022,857
15 | 1/6/2018,846,729,810
16 | 1/7/2018,931,704,562
17 | 1/8/2018,1311,997,596
18 | 1/9/2018,1612,1179,836
19 | 1/10/2018,1458,1265,986
20 | 1/11/2018,2076,1391,1034
21 | 1/12/2018,1858,1333,1157
22 | 1/13/2018,1747,1192,1124
23 | 1/14/2018,2397,1437,1002
24 | 1/15/2018,2886,1756,1251
25 | 1/16/2018,1970,1326,1494
26 | 1/17/2018,1890,1359,1132
27 | 1/18/2018,1581,1188,1107
28 | 1/19/2018,1566,1140,969
29 | 1/20/2018,1211,943,983
30 | 1/21/2018,1198,856,802
31 | 1/22/2018,1406,999,692
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-01-29-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 12/31/2017,738,626,494
3 | 1/1/2018,692,560,499
4 | 1/2/2018,1341,990,450
5 | 1/3/2018,1523,1033,827
6 | 1/4/2018,1423,1041,853
7 | 1/5/2018,1400,1022,857
8 | 1/6/2018,846,729,810
9 | 1/7/2018,931,704,562
10 | 1/8/2018,1311,997,596
11 | 1/9/2018,1612,1179,836
12 | 1/10/2018,1458,1265,986
13 | 1/11/2018,2076,1391,1034
14 | 1/12/2018,1858,1333,1157
15 | 1/13/2018,1747,1192,1124
16 | 1/14/2018,2397,1437,1002
17 | 1/15/2018,2886,1756,1251
18 | 1/16/2018,1970,1326,1494
19 | 1/17/2018,1890,1359,1132
20 | 1/18/2018,1581,1188,1107
21 | 1/19/2018,1566,1140,969
22 | 1/20/2018,1211,943,983
23 | 1/21/2018,1198,856,802
24 | 1/22/2018,1764,1282,725
25 | 1/23/2018,2190,1433,1092
26 | 1/24/2018,4184,2604,1222
27 | 1/25/2018,4410,2746,2239
28 | 1/26/2018,2589,1670,2352
29 | 1/27/2018,1381,970,1421
30 | 1/28/2018,1355,978,821
31 | 1/29/2018,422,449,839
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-02-05-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 1/7/2018,931,704,562
3 | 1/8/2018,1311,997,596
4 | 1/9/2018,1612,1179,836
5 | 1/10/2018,1458,1265,986
6 | 1/11/2018,2076,1391,1034
7 | 1/12/2018,1858,1333,1157
8 | 1/13/2018,1747,1192,1124
9 | 1/14/2018,2397,1437,1002
10 | 1/15/2018,2886,1756,1251
11 | 1/16/2018,1970,1326,1494
12 | 1/17/2018,1890,1359,1132
13 | 1/18/2018,1581,1188,1107
14 | 1/19/2018,1566,1140,969
15 | 1/20/2018,1211,943,983
16 | 1/21/2018,1198,856,802
17 | 1/22/2018,1764,1282,725
18 | 1/23/2018,2190,1433,1092
19 | 1/24/2018,4184,2604,1222
20 | 1/25/2018,4410,2746,2239
21 | 1/26/2018,2589,1670,2352
22 | 1/27/2018,1381,970,1421
23 | 1/28/2018,1355,978,821
24 | 1/29/2018,3014,2172,839
25 | 1/30/2018,2604,1942,1857
26 | 1/31/2018,2253,1672,1653
27 | 2/1/2018,1864,1461,1423
28 | 2/2/2018,1643,1387,1269
29 | 2/3/2018,1169,909,1164
30 | 2/4/2018,1180,887,766
31 | 2/5/2018,397,258,743
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-02-12-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 1/14/2018,2397,1437,1002
3 | 1/15/2018,2886,1756,1251
4 | 1/16/2018,1970,1326,1494
5 | 1/17/2018,1890,1359,1132
6 | 1/18/2018,1581,1188,1107
7 | 1/19/2018,1566,1140,969
8 | 1/20/2018,1211,943,983
9 | 1/21/2018,1198,856,802
10 | 1/22/2018,1764,1282,725
11 | 1/23/2018,2190,1433,1092
12 | 1/24/2018,4184,2604,1222
13 | 1/25/2018,4410,2746,2239
14 | 1/26/2018,2589,1670,2352
15 | 1/27/2018,1381,970,1421
16 | 1/28/2018,1355,978,821
17 | 1/29/2018,3014,2172,839
18 | 1/30/2018,2604,1942,1857
19 | 1/31/2018,2253,1672,1653
20 | 2/1/2018,1864,1461,1423
21 | 2/2/2018,1643,1387,1269
22 | 2/3/2018,1169,909,1164
23 | 2/4/2018,1180,887,766
24 | 2/5/2018,1916,1382,743
25 | 2/6/2018,1755,1321,1143
26 | 2/7/2018,1834,1356,1103
27 | 2/8/2018,1756,1288,1152
28 | 2/9/2018,1550,1167,1097
29 | 2/10/2018,960,811,0
30 | 2/11/2018,1011,834,0
31 | 2/12/2018,347,299,0
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-02-19-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 1/21/2018,1198,856,802
3 | 1/22/2018,1764,1282,725
4 | 1/23/2018,2190,1433,1092
5 | 1/24/2018,4184,2604,1222
6 | 1/25/2018,4410,2746,2239
7 | 1/26/2018,2589,1670,2352
8 | 1/27/2018,1381,970,1421
9 | 1/28/2018,1355,978,821
10 | 1/29/2018,3014,2172,839
11 | 1/30/2018,2604,1942,1857
12 | 1/31/2018,2253,1672,1653
13 | 2/1/2018,1864,1461,1423
14 | 2/2/2018,1643,1387,1269
15 | 2/3/2018,1169,909,1164
16 | 2/4/2018,1180,887,766
17 | 2/5/2018,1916,1382,743
18 | 2/6/2018,1755,1321,1143
19 | 2/7/2018,1834,1356,1103
20 | 2/8/2018,1756,1288,1152
21 | 2/9/2018,1550,1167,1097
22 | 2/10/2018,960,811,987
23 | 2/11/2018,1011,834,674
24 | 2/12/2018,1798,1536,691
25 | 2/13/2018,2647,2061,1297
26 | 2/14/2018,2012,1567,1761
27 | 2/15/2018,1505,1303,1308
28 | 2/16/2018,1222,1107,1116
29 | 2/17/2018,985,850,917
30 | 2/18/2018,982,874,709
31 | 2/19/2018,294,211,727
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-02-26-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 1/28/2018,1355,978,821
3 | 1/29/2018,3014,2172,839
4 | 1/30/2018,2604,1942,1857
5 | 1/31/2018,2253,1672,1653
6 | 2/1/2018,1864,1461,1423
7 | 2/2/2018,1643,1387,1269
8 | 2/3/2018,1169,909,1164
9 | 2/4/2018,1180,887,766
10 | 2/5/2018,1916,1382,743
11 | 2/6/2018,1755,1321,1143
12 | 2/7/2018,1834,1356,1103
13 | 2/8/2018,1756,1288,1152
14 | 2/9/2018,1550,1167,1097
15 | 2/10/2018,960,811,987
16 | 2/11/2018,1011,834,674
17 | 2/12/2018,1798,1536,691
18 | 2/13/2018,2647,2061,1297
19 | 2/14/2018,2012,1567,1761
20 | 2/15/2018,1505,1303,1308
21 | 2/16/2018,1222,1107,1116
22 | 2/17/2018,985,850,917
23 | 2/18/2018,982,874,709
24 | 2/19/2018,2287,2067,727
25 | 2/20/2018,2372,2211,1732
26 | 2/21/2018,2636,2176,1875
27 | 2/22/2018,2056,1612,1842
28 | 2/23/2018,1795,1385,1362
29 | 2/24/2018,1006,942,1196
30 | 2/25/2018,1201,963,817
31 | 2/26/2018,417,353,841
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-03-05-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 2/4/2018,1180,887,766
3 | 2/5/2018,1916,1382,743
4 | 2/6/2018,1755,1321,1143
5 | 2/7/2018,1834,1356,1103
6 | 2/8/2018,1756,1288,1152
7 | 2/9/2018,1550,1167,1097
8 | 2/10/2018,960,811,987
9 | 2/11/2018,1011,834,674
10 | 2/12/2018,1798,1536,691
11 | 2/13/2018,2647,2061,1297
12 | 2/14/2018,2012,1567,1761
13 | 2/15/2018,1505,1303,1308
14 | 2/16/2018,1222,1107,1116
15 | 2/17/2018,985,850,917
16 | 2/18/2018,982,874,709
17 | 2/19/2018,2287,2067,727
18 | 2/20/2018,2372,2211,1732
19 | 2/21/2018,2636,2176,1875
20 | 2/22/2018,2056,1612,1842
21 | 2/23/2018,1795,1385,1362
22 | 2/24/2018,1006,942,1196
23 | 2/25/2018,1201,963,817
24 | 2/26/2018,1925,1574,841
25 | 2/27/2018,1668,1448,1308
26 | 2/28/2018,1618,1348,1242
27 | 3/1/2018,1696,1331,1168
28 | 3/2/2018,1511,1220,1147
29 | 3/3/2018,1048,909,1014
30 | 3/4/2018,1165,963,754
31 | 3/5/2018,1151,887,785
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-03-12-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 2/11/2018,1011,834,674
3 | 2/12/2018,1798,1536,691
4 | 2/13/2018,2647,2061,1297
5 | 2/14/2018,2012,1567,1761
6 | 2/15/2018,1505,1303,1308
7 | 2/16/2018,1222,1107,1116
8 | 2/17/2018,985,850,917
9 | 2/18/2018,982,874,709
10 | 2/19/2018,2287,2067,727
11 | 2/20/2018,2372,2211,1732
12 | 2/21/2018,2636,2176,1875
13 | 2/22/2018,2056,1612,1842
14 | 2/23/2018,1795,1385,1362
15 | 2/24/2018,1006,942,1196
16 | 2/25/2018,1201,963,817
17 | 2/26/2018,1925,1574,841
18 | 2/27/2018,1668,1448,1308
19 | 2/28/2018,1618,1348,1242
20 | 3/1/2018,1696,1331,1168
21 | 3/2/2018,1511,1220,1147
22 | 3/3/2018,1048,909,1014
23 | 3/4/2018,1165,963,754
24 | 3/5/2018,1891,1502,785
25 | 3/6/2018,1822,1452,1228
26 | 3/7/2018,1913,1535,1245
27 | 3/8/2018,3249,3539,1302
28 | 3/9/2018,2805,3008,3079
29 | 3/10/2018,1386,1301,2613
30 | 3/11/2018,1290,1202,1096
31 | 3/12/2018,268,198,994
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-03-19-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 2/18/2018,982,874,709
3 | 2/19/2018,2287,2067,727
4 | 2/20/2018,2372,2211,1732
5 | 2/21/2018,2636,2176,1875
6 | 2/22/2018,2056,1612,1842
7 | 2/23/2018,1795,1385,1362
8 | 2/24/2018,1006,942,1196
9 | 2/25/2018,1201,963,817
10 | 2/26/2018,1925,1574,841
11 | 2/27/2018,1668,1448,1308
12 | 2/28/2018,1618,1348,1242
13 | 3/1/2018,1696,1331,1168
14 | 3/2/2018,1511,1220,1147
15 | 3/3/2018,1048,909,1014
16 | 3/4/2018,1165,963,754
17 | 3/5/2018,1891,1502,785
18 | 3/6/2018,1822,1452,1228
19 | 3/7/2018,1913,1535,1245
20 | 3/8/2018,3249,3539,1302
21 | 3/9/2018,2805,3008,3079
22 | 3/10/2018,1386,1301,2613
23 | 3/11/2018,1290,1202,1096
24 | 3/12/2018,2019,1615,1030
25 | 3/13/2018,2321,1882,1365
26 | 3/14/2018,2210,1752,1581
27 | 3/15/2018,2054,1608,1478
28 | 3/16/2018,1763,1546,1331
29 | 3/17/2018,1274,1058,1302
30 | 3/18/2018,1264,1083,885
31 | 3/19/2018,274,257,875
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-03-27-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 2/26/2018,1925,1574,841
3 | 2/27/2018,1668,1448,1308
4 | 2/28/2018,1618,1348,1242
5 | 3/1/2018,1696,1331,1168
6 | 3/2/2018,1511,1220,1147
7 | 3/3/2018,1048,909,1014
8 | 3/4/2018,1165,963,754
9 | 3/5/2018,1891,1502,785
10 | 3/6/2018,1822,1452,1228
11 | 3/7/2018,1913,1535,1245
12 | 3/8/2018,3249,3539,1302
13 | 3/9/2018,2805,3008,3079
14 | 3/10/2018,1386,1301,2613
15 | 3/11/2018,1290,1202,1096
16 | 3/12/2018,2019,1615,1030
17 | 3/13/2018,2321,1882,1365
18 | 3/14/2018,2210,1752,1581
19 | 3/15/2018,2054,1608,1478
20 | 3/16/2018,1763,1546,1331
21 | 3/17/2018,1274,1058,1302
22 | 3/18/2018,1264,1083,885
23 | 3/19/2018,1765,1533,905
24 | 3/20/2018,1852,1505,1345
25 | 3/21/2018,2224,1876,1285
26 | 3/22/2018,2371,1825,1584
27 | 3/23/2018,1786,1449,1561
28 | 3/24/2018,1337,1139,1282
29 | 3/25/2018,1139,1029,962
30 | 3/26/2018,1831,1556,884
31 | 3/27/2018,452,370,1334
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-04-02-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 3/4/2018,1165,963,754
3 | 3/5/2018,1891,1502,785
4 | 3/6/2018,1822,1452,1228
5 | 3/7/2018,1913,1535,1245
6 | 3/8/2018,3249,3539,1302
7 | 3/9/2018,2805,3008,3079
8 | 3/10/2018,1386,1301,2613
9 | 3/11/2018,1290,1202,1096
10 | 3/12/2018,2019,1615,1030
11 | 3/13/2018,2321,1882,1365
12 | 3/14/2018,2210,1752,1581
13 | 3/15/2018,2054,1608,1478
14 | 3/16/2018,1763,1546,1331
15 | 3/17/2018,1274,1058,1302
16 | 3/18/2018,1264,1083,885
17 | 3/19/2018,1765,1533,905
18 | 3/20/2018,1852,1505,1345
19 | 3/21/2018,2224,1876,1285
20 | 3/22/2018,2371,1825,1584
21 | 3/23/2018,1786,1449,1561
22 | 3/24/2018,1337,1139,1282
23 | 3/25/2018,1139,1029,962
24 | 3/26/2018,1831,1556,884
25 | 3/27/2018,1936,1604,1334
26 | 3/28/2018,2095,1619,1373
27 | 3/29/2018,2099,1660,1426
28 | 3/30/2018,1619,1250,1426
29 | 3/31/2018,1130,960,1071
30 | 4/1/2018,1093,928,848
31 | 4/2/2018,716,618,818
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-04-09-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 3/11/2018,1290,1202,1096
3 | 3/12/2018,2019,1615,1030
4 | 3/13/2018,2321,1882,1365
5 | 3/14/2018,2210,1752,1581
6 | 3/15/2018,2054,1608,1478
7 | 3/16/2018,1763,1546,1331
8 | 3/17/2018,1274,1058,1302
9 | 3/18/2018,1264,1083,885
10 | 3/19/2018,1765,1533,905
11 | 3/20/2018,1852,1505,1345
12 | 3/21/2018,2224,1876,1285
13 | 3/22/2018,2371,1825,1584
14 | 3/23/2018,1786,1449,1561
15 | 3/24/2018,1337,1139,1282
16 | 3/25/2018,1139,1029,962
17 | 3/26/2018,1831,1556,884
18 | 3/27/2018,1936,1604,1334
19 | 3/28/2018,2095,1619,1373
20 | 3/29/2018,2099,1660,1426
21 | 3/30/2018,1619,1250,1426
22 | 3/31/2018,1130,960,1071
23 | 4/1/2018,1093,928,848
24 | 4/2/2018,1659,1267,818
25 | 4/3/2018,1988,1543,1098
26 | 4/4/2018,1967,1460,1299
27 | 4/5/2018,1754,1407,1280
28 | 4/6/2018,1761,1386,1215
29 | 4/7/2018,1299,1030,1194
30 | 4/8/2018,1248,940,871
31 | 4/9/2018,371,321,826
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-04-16-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 3/18/2018,1264,1083,885
3 | 3/19/2018,1765,1533,905
4 | 3/20/2018,1852,1505,1345
5 | 3/21/2018,2224,1876,1285
6 | 3/22/2018,2371,1825,1584
7 | 3/23/2018,1786,1449,1561
8 | 3/24/2018,1337,1139,1282
9 | 3/25/2018,1139,1029,962
10 | 3/26/2018,1831,1556,884
11 | 3/27/2018,1936,1604,1334
12 | 3/28/2018,2095,1619,1373
13 | 3/29/2018,2099,1660,1426
14 | 3/30/2018,1619,1250,1426
15 | 3/31/2018,1130,960,1071
16 | 4/1/2018,1093,928,848
17 | 4/2/2018,1659,1267,818
18 | 4/3/2018,1988,1543,1098
19 | 4/4/2018,1967,1460,1299
20 | 4/5/2018,1754,1407,1280
21 | 4/6/2018,1761,1386,1215
22 | 4/7/2018,1299,1030,1194
23 | 4/8/2018,1248,940,871
24 | 4/9/2018,2023,1558,826
25 | 4/10/2018,2116,1531,1333
26 | 4/11/2018,2031,1585,1312
27 | 4/12/2018,1918,1525,1373
28 | 4/13/2018,1581,1376,1321
29 | 4/14/2018,1124,903,1183
30 | 4/15/2018,1137,942,787
31 | 4/16/2018,253,247,815
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-04-24-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 3/26/2018,1831,1556,0
3 | 3/27/2018,1936,1604,884
4 | 3/28/2018,2095,1619,1334
5 | 3/29/2018,2099,1660,1373
6 | 3/30/2018,1619,1250,1426
7 | 3/31/2018,1130,960,1426
8 | 4/1/2018,1093,928,1071
9 | 4/2/2018,1659,1267,848
10 | 4/3/2018,1988,1543,818
11 | 4/4/2018,1967,1460,1098
12 | 4/5/2018,1754,1407,1299
13 | 4/6/2018,1761,1386,1280
14 | 4/7/2018,1299,1030,1215
15 | 4/8/2018,1248,940,1194
16 | 4/9/2018,2023,1558,871
17 | 4/10/2018,2116,1531,826
18 | 4/11/2018,2031,1585,1333
19 | 4/12/2018,1918,1525,1312
20 | 4/13/2018,1581,1376,1373
21 | 4/14/2018,1124,903,1321
22 | 4/15/2018,1137,942,1183
23 | 4/16/2018,2644,1949,787
24 | 4/17/2018,3119,2078,815
25 | 4/18/2018,2107,1643,1704
26 | 4/19/2018,2169,1610,1836
27 | 4/20/2018,2139,1525,1433
28 | 4/21/2018,1133,965,1395
29 | 4/22/2018,1366,1074,1316
30 | 4/23/2018,1809,1564,840
31 | 4/24/2018,454,340,930
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-04-30-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 4/1/2018,1093,928,848
3 | 4/2/2018,1659,1267,818
4 | 4/3/2018,1988,1543,1098
5 | 4/4/2018,1967,1460,1299
6 | 4/5/2018,1754,1407,1280
7 | 4/6/2018,1761,1386,1215
8 | 4/7/2018,1299,1030,1194
9 | 4/8/2018,1248,940,871
10 | 4/9/2018,2023,1558,826
11 | 4/10/2018,2116,1531,1333
12 | 4/11/2018,2031,1585,1312
13 | 4/12/2018,1918,1525,1373
14 | 4/13/2018,1581,1376,1321
15 | 4/14/2018,1124,903,1183
16 | 4/15/2018,1137,942,787
17 | 4/16/2018,2644,1949,815
18 | 4/17/2018,3119,2078,1704
19 | 4/18/2018,2107,1643,1836
20 | 4/19/2018,2169,1610,1433
21 | 4/20/2018,2139,1525,1395
22 | 4/21/2018,1133,965,1316
23 | 4/22/2018,1366,1074,840
24 | 4/23/2018,1809,1564,930
25 | 4/24/2018,2130,1584,1345
26 | 4/25/2018,1868,1479,1373
27 | 4/26/2018,1838,1568,1291
28 | 4/27/2018,1733,1386,1357
29 | 4/28/2018,1021,888,1213
30 | 4/29/2018,1083,954,762
31 | 4/30/2018,362,319,815
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-05-08-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 4/9/2018,2023,1558,826
3 | 4/10/2018,2116,1531,1333
4 | 4/11/2018,2031,1585,1312
5 | 4/12/2018,1918,1525,1373
6 | 4/13/2018,1581,1376,1321
7 | 4/14/2018,1124,903,1183
8 | 4/15/2018,1137,942,787
9 | 4/16/2018,2644,1949,815
10 | 4/17/2018,3119,2078,1704
11 | 4/18/2018,2107,1643,1836
12 | 4/19/2018,2169,1610,1433
13 | 4/20/2018,2139,1525,1395
14 | 4/21/2018,1133,965,1316
15 | 4/22/2018,1366,1074,840
16 | 4/23/2018,1809,1564,930
17 | 4/24/2018,2130,1584,1345
18 | 4/25/2018,1868,1479,1373
19 | 4/26/2018,1838,1568,1291
20 | 4/27/2018,1733,1386,1357
21 | 4/28/2018,1021,888,1213
22 | 4/29/2018,1083,954,762
23 | 4/30/2018,2066,1655,815
24 | 5/1/2018,2019,1601,1348
25 | 5/2/2018,2173,1806,1358
26 | 5/3/2018,2171,1752,1520
27 | 5/4/2018,1850,1524,1510
28 | 5/5/2018,1100,956,1298
29 | 5/6/2018,1091,836,824
30 | 5/7/2018,1695,1359,731
31 | 5/8/2018,380,263,1209
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-05-14-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 4/15/2018,1137,942,787
3 | 4/16/2018,2644,1949,815
4 | 4/17/2018,3119,2078,1704
5 | 4/18/2018,2107,1643,1836
6 | 4/19/2018,2169,1610,1433
7 | 4/20/2018,2139,1525,1395
8 | 4/21/2018,1133,965,1316
9 | 4/22/2018,1366,1074,840
10 | 4/23/2018,1809,1564,930
11 | 4/24/2018,2130,1584,1345
12 | 4/25/2018,1868,1479,1373
13 | 4/26/2018,1838,1568,1291
14 | 4/27/2018,1733,1386,1357
15 | 4/28/2018,1021,888,1213
16 | 4/29/2018,1083,954,762
17 | 4/30/2018,2066,1655,815
18 | 5/1/2018,2019,1601,1348
19 | 5/2/2018,2173,1806,1358
20 | 5/3/2018,2171,1752,1520
21 | 5/4/2018,1850,1524,1510
22 | 5/5/2018,1100,956,1298
23 | 5/6/2018,1091,836,824
24 | 5/7/2018,1695,1359,731
25 | 5/8/2018,2100,1595,1209
26 | 5/9/2018,2028,1667,1370
27 | 5/10/2018,1692,1399,1389
28 | 5/11/2018,1638,1359,1212
29 | 5/12/2018,1046,877,1151
30 | 5/13/2018,1053,884,744
31 | 5/14/2018,446,360,764
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-05-21-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 4/22/2018,1366,1074,840
3 | 4/23/2018,1809,1564,930
4 | 4/24/2018,2130,1584,1345
5 | 4/25/2018,1868,1479,1373
6 | 4/26/2018,1838,1568,1291
7 | 4/27/2018,1733,1386,1357
8 | 4/28/2018,1021,888,1213
9 | 4/29/2018,1083,954,762
10 | 4/30/2018,2066,1655,815
11 | 5/1/2018,2019,1601,1348
12 | 5/2/2018,2173,1806,1358
13 | 5/3/2018,2171,1752,1520
14 | 5/4/2018,1850,1524,1510
15 | 5/5/2018,1100,956,1298
16 | 5/6/2018,1091,836,824
17 | 5/7/2018,1695,1359,731
18 | 5/8/2018,2100,1595,1209
19 | 5/9/2018,2028,1667,1370
20 | 5/10/2018,1692,1399,1389
21 | 5/11/2018,1638,1359,1212
22 | 5/12/2018,1046,877,1151
23 | 5/13/2018,1053,884,744
24 | 5/14/2018,1830,1581,764
25 | 5/15/2018,1863,1558,1330
26 | 5/16/2018,1898,1615,1362
27 | 5/17/2018,1715,1463,1381
28 | 5/18/2018,1555,1356,1285
29 | 5/19/2018,1048,875,1166
30 | 5/20/2018,1195,968,743
31 | 5/21/2018,244,200,825
32 |
--------------------------------------------------------------------------------
/data/archive/medium/2018-05-30-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 5/1/2018,2019,1601,1348
3 | 5/2/2018,2173,1806,1358
4 | 5/3/2018,2171,1752,1520
5 | 5/4/2018,1850,1524,1510
6 | 5/5/2018,1100,956,1298
7 | 5/6/2018,1091,836,824
8 | 5/7/2018,1695,1359,731
9 | 5/8/2018,2100,1595,1209
10 | 5/9/2018,2028,1667,1370
11 | 5/10/2018,1692,1399,1389
12 | 5/11/2018,1638,1359,1212
13 | 5/12/2018,1046,877,1151
14 | 5/13/2018,1053,884,744
15 | 5/14/2018,1830,1581,764
16 | 5/15/2018,1863,1558,1330
17 | 5/16/2018,1898,1615,1362
18 | 5/17/2018,1715,1463,1381
19 | 5/18/2018,1555,1356,1285
20 | 5/19/2018,1048,875,1166
21 | 5/20/2018,1195,968,743
22 | 5/21/2018,1664,1400,825
23 | 5/22/2018,1736,1455,1190
24 | 5/23/2018,1819,1419,1240
25 | 5/24/2018,1614,1389,1230
26 | 5/25/2018,1448,1150,1226
27 | 5/26/2018,973,801,1014
28 | 5/27/2018,897,822,677
29 | 5/28/2018,1497,1198,722
30 | 5/29/2018,1701,1375,1016
31 | 5/30/2018,700,551,1200
32 |
--------------------------------------------------------------------------------
/data/general/2018-06-05-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-06-05",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 14710
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2800
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 37571
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1576
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 79000
31 | },
32 | "mentions": {
33 | "count": 139
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 412
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 5
46 | },
47 | "views": {
48 | "count": 60
49 | },
50 | "engagements": {
51 | "count": 42
52 | },
53 | "reach": {
54 | "count": 464
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 63
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 8,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 20,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 17,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 37,
87 | "link": "https://peteroshaughnessy.com/posts/web-bluetooth-controlling-the-real-world/"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-06-11-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-06-11",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 14780
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2900
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 38228
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1591
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 102000
31 | },
32 | "mentions": {
33 | "count": 143
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 414
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 5
46 | },
47 | "views": {
48 | "count": 60
49 | },
50 | "engagements": {
51 | "count": 94
52 | },
53 | "reach": {
54 | "count": 789
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 64
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 9,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 19,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 17,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 37,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-06-18-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-06-18",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 15278
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2900
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 38483
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1603
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 117000
31 | },
32 | "mentions": {
33 | "count": 117
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 414
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 6
46 | },
47 | "views": {
48 | "count": 74
49 | },
50 | "engagements": {
51 | "count": 82
52 | },
53 | "reach": {
54 | "count": 770
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 71
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 9,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 19,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 17,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 37,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-06-25-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-06-25",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 16710
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2900
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 45419
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1612
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 147000
31 | },
32 | "mentions": {
33 | "count": 134
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 418
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 8
46 | },
47 | "views": {
48 | "count": 73
49 | },
50 | "engagements": {
51 | "count": 120
52 | },
53 | "reach": {
54 | "count": 789
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 68
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 9,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 19,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 17,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 37,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-07-02-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-07-02",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 16830
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 2900
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 47305
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1624
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 135000
31 | },
32 | "mentions": {
33 | "count": 136
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 421
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 10
46 | },
47 | "views": {
48 | "count": 82
49 | },
50 | "engagements": {
51 | "count": 107
52 | },
53 | "reach": {
54 | "count": 480
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 69
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 9,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 19,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 17,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 37,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-07-10-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-07-10",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 16321
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 3000
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 47790
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1626
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 120000
31 | },
32 | "mentions": {
33 | "count": 120
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 421
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 9
46 | },
47 | "views": {
48 | "count": 85
49 | },
50 | "engagements": {
51 | "count": 43
52 | },
53 | "reach": {
54 | "count": 180
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 69
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 9,
75 | "link": "https://medium.com/samsung-internet-dev/eleven-examples-of-how-webvr-is-being-used-today-cbcb214b816c"
76 | },
77 | "webPayments": {
78 | "count": 19,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 17,
83 | "link": "https://medium.com/samsung-internet-dev/6-myths-of-progressive-web-apps-81e28ca9d2b1"
84 | },
85 | "webBluetooth": {
86 | "count": 37,
87 | "link": "https://samsunginter.net/docs/web-bluetooth"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-07-16-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-07-16",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 16109
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 3000
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 49127
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1632
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 125000
31 | },
32 | "mentions": {
33 | "count": 105
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 425
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 14
46 | },
47 | "views": {
48 | "count": 87
49 | },
50 | "engagements": {
51 | "count": 70
52 | },
53 | "reach": {
54 | "count": 225
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 71
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 2,
75 | "link": "https://developer.mozilla.org/en-US/docs/Web/API/WebVR_API"
76 | },
77 | "webPayments": {
78 | "count": 12,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 9,
83 | "link": "https://developer.mozilla.org/en-US/Apps/Progressive"
84 | },
85 | "webBluetooth": {
86 | "count": 3,
87 | "link": "https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-07-24-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-07-24",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 15564
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 3000
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 45210
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1632
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 93500
31 | },
32 | "mentions": {
33 | "count": 116
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 425
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 14
46 | },
47 | "views": {
48 | "count": 83
49 | },
50 | "engagements": {
51 | "count": 35
52 | },
53 | "reach": {
54 | "count": 186
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 71
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 2,
75 | "link": "https://developer.mozilla.org/en-US/docs/Web/API/WebVR_API"
76 | },
77 | "webPayments": {
78 | "count": 12,
79 | "link": "https://www.smashingmagazine.com/2018/01/online-purchase-payment-request-api/"
80 | },
81 | "pwas": {
82 | "count": 9,
83 | "link": "https://developer.mozilla.org/en-US/Apps/Progressive"
84 | },
85 | "webBluetooth": {
86 | "count": 3,
87 | "link": "https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-08-07-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-08-07",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 17210
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 3100
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 41750
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1653
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 62700
31 | },
32 | "mentions": {
33 | "count": 100
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 433
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 14
46 | },
47 | "views": {
48 | "count": 63
49 | },
50 | "engagements": {
51 | "count": 40
52 | },
53 | "reach": {
54 | "count": 180
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 75
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 3,
75 | "link": "https://developer.mozilla.org/en-US/docs/Web/API/WebVR_API"
76 | },
77 | "webPayments": {
78 | "count": 13,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 8,
83 | "link": "https://developer.mozilla.org/en-US/Apps/Progressive"
84 | },
85 | "webBluetooth": {
86 | "count": 4,
87 | "link": "https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-08-20-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-08-20",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 15357
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 3100
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 36242
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1676
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 25800
31 | },
32 | "mentions": {
33 | "count": 42
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 440
41 | }
42 | },
43 | "engagement": {
44 | "likes": {
45 | "count": 16
46 | },
47 | "views": {
48 | "count": 100
49 | },
50 | "engagements": {
51 | "count": 13
52 | },
53 | "reach": {
54 | "count": 25
55 | }
56 | }
57 | },
58 | "instagram": {
59 | "audience": {
60 | "followers": {
61 | "count": 73
62 | }
63 | }
64 | },
65 | "github": {
66 | "issues": {
67 | "closeTimeAvg": {
68 | "count": 3
69 | }
70 | }
71 | },
72 | "seo": {
73 | "webvr": {
74 | "count": 3,
75 | "link": "https://developer.mozilla.org/en-US/docs/Web/API/WebVR_API"
76 | },
77 | "webPayments": {
78 | "count": 13,
79 | "link": "https://medium.com/samsung-internet-dev/web-payments-update-new-payment-apps-on-their-way-and-more-cef1c62edaf6"
80 | },
81 | "pwas": {
82 | "count": 8,
83 | "link": "https://developer.mozilla.org/en-US/Apps/Progressive"
84 | },
85 | "webBluetooth": {
86 | "count": 4,
87 | "link": "https://developer.mozilla.org/en-US/docs/Web/API/Web_Bluetooth_API"
88 | }
89 | }
90 | }
--------------------------------------------------------------------------------
/data/general/2018-08-28-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-08-28",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 14206
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 3100
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 36216
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1692
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 27300
31 | },
32 | "mentions": {
33 | "count": 57
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 445
41 | }
42 | }
43 | },
44 | "instagram": {
45 | "audience": {
46 | "followers": {
47 | "count": 75
48 | }
49 | }
50 | },
51 | "github": {
52 | "issues": {
53 | "closeTimeAvg": {
54 | "count": 3
55 | }
56 | }
57 | }
58 | }
--------------------------------------------------------------------------------
/data/general/2018-09-04-stats.json:
--------------------------------------------------------------------------------
1 | {
2 | "updated": "2018-09-04",
3 | "devHub": {
4 | "engagement": {
5 | "uniqueVisitors": {
6 | "count": 13316
7 | }
8 | }
9 | },
10 | "medium": {
11 | "audience": {
12 | "followers": {
13 | "count": 3100
14 | }
15 | },
16 | "engagement": {
17 | "views": {
18 | "count": 37558
19 | }
20 | }
21 | },
22 | "twitter": {
23 | "audience": {
24 | "followers": {
25 | "count": 1701
26 | }
27 | },
28 | "engagement": {
29 | "impressions": {
30 | "count": 37000
31 | },
32 | "mentions": {
33 | "count": 80
34 | }
35 | }
36 | },
37 | "facebook": {
38 | "audience": {
39 | "followers": {
40 | "count": 443
41 | }
42 | }
43 | },
44 | "instagram": {
45 | "audience": {
46 | "followers": {
47 | "count": 77
48 | }
49 | }
50 | },
51 | "github": {
52 | "issues": {
53 | "closeTimeAvg": {
54 | "count": 3
55 | }
56 | }
57 | }
58 | }
--------------------------------------------------------------------------------
/data/medium/2018-06-05-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 5/7/2018,1695,1359,731
3 | 5/8/2018,2100,1595,1209
4 | 5/9/2018,2028,1667,1370
5 | 5/10/2018,1692,1399,1389
6 | 5/11/2018,1638,1359,1212
7 | 5/12/2018,1046,877,1151
8 | 5/13/2018,1053,884,744
9 | 5/14/2018,1830,1581,764
10 | 5/15/2018,1863,1558,1330
11 | 5/16/2018,1898,1615,1362
12 | 5/17/2018,1715,1463,1381
13 | 5/18/2018,1555,1356,1285
14 | 5/19/2018,1048,875,1166
15 | 5/20/2018,1195,968,743
16 | 5/21/2018,1664,1400,825
17 | 5/22/2018,1736,1455,1190
18 | 5/23/2018,1819,1419,1240
19 | 5/24/2018,1614,1389,1230
20 | 5/25/2018,1448,1150,1226
21 | 5/26/2018,973,801,1014
22 | 5/27/2018,897,822,677
23 | 5/28/2018,1497,1198,722
24 | 5/29/2018,1701,1375,1016
25 | 5/30/2018,1766,1473,1200
26 | 5/31/2018,1710,1399,1288
27 | 6/1/2018,1724,1324,1196
28 | 6/2/2018,1044,826,1146
29 | 6/3/2018,1255,1165,708
30 | 6/4/2018,1816,1568,1027
31 | 6/5/2018,259,251,1353
32 |
--------------------------------------------------------------------------------
/data/medium/2018-06-11-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 5/13/2018,1053,884,744
3 | 5/14/2018,1830,1581,764
4 | 5/15/2018,1863,1558,1330
5 | 5/16/2018,1898,1615,1362
6 | 5/17/2018,1715,1463,1381
7 | 5/18/2018,1555,1356,1285
8 | 5/19/2018,1048,875,1166
9 | 5/20/2018,1195,968,743
10 | 5/21/2018,1664,1400,825
11 | 5/22/2018,1736,1455,1190
12 | 5/23/2018,1819,1419,1240
13 | 5/24/2018,1614,1389,1230
14 | 5/25/2018,1448,1150,1226
15 | 5/26/2018,973,801,1014
16 | 5/27/2018,897,822,677
17 | 5/28/2018,1497,1198,722
18 | 5/29/2018,1701,1375,1016
19 | 5/30/2018,1766,1473,1200
20 | 5/31/2018,1710,1399,1288
21 | 6/1/2018,1724,1324,1196
22 | 6/2/2018,1044,826,1146
23 | 6/3/2018,1255,1165,708
24 | 6/4/2018,1816,1568,1027
25 | 6/5/2018,2149,2014,1353
26 | 6/6/2018,2436,2160,1711
27 | 6/7/2018,1887,1567,1862
28 | 6/8/2018,1703,1399,1379
29 | 6/9/2018,1012,889,1185
30 | 6/10/2018,1019,849,760
31 | 6/11/2018,427,286,738
32 |
--------------------------------------------------------------------------------
/data/medium/2018-06-18-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 5/20/2018,1195,968,743
3 | 5/21/2018,1664,1400,825
4 | 5/22/2018,1736,1455,1190
5 | 5/23/2018,1819,1419,1240
6 | 5/24/2018,1614,1389,1230
7 | 5/25/2018,1448,1150,1226
8 | 5/26/2018,973,801,1014
9 | 5/27/2018,897,822,677
10 | 5/28/2018,1497,1198,722
11 | 5/29/2018,1701,1375,1016
12 | 5/30/2018,1766,1473,1200
13 | 5/31/2018,1710,1399,1288
14 | 6/1/2018,1724,1324,1196
15 | 6/2/2018,1044,826,1146
16 | 6/3/2018,1255,1165,708
17 | 6/4/2018,1816,1568,1027
18 | 6/5/2018,2149,2014,1353
19 | 6/6/2018,2436,2160,1711
20 | 6/7/2018,1887,1567,1862
21 | 6/8/2018,1703,1399,1379
22 | 6/9/2018,1012,889,1185
23 | 6/10/2018,1019,849,760
24 | 6/11/2018,1916,1573,738
25 | 6/12/2018,1773,1495,1334
26 | 6/13/2018,1809,1593,1274
27 | 6/14/2018,1658,1384,1319
28 | 6/15/2018,1866,1484,1229
29 | 6/16/2018,1316,1091,1249
30 | 6/17/2018,1137,879,909
31 | 6/18/2018,575,521,766
32 |
--------------------------------------------------------------------------------
/data/medium/2018-06-25-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 5/27/2018,897,822,677
3 | 5/28/2018,1497,1198,722
4 | 5/29/2018,1701,1375,1016
5 | 5/30/2018,1766,1473,1200
6 | 5/31/2018,1710,1399,1288
7 | 6/1/2018,1724,1324,1196
8 | 6/2/2018,1044,826,1146
9 | 6/3/2018,1255,1165,708
10 | 6/4/2018,1816,1568,1027
11 | 6/5/2018,2149,2014,1353
12 | 6/6/2018,2436,2160,1711
13 | 6/7/2018,1887,1567,1862
14 | 6/8/2018,1703,1399,1379
15 | 6/9/2018,1012,889,1185
16 | 6/10/2018,1019,849,760
17 | 6/11/2018,1916,1573,738
18 | 6/12/2018,1773,1495,1334
19 | 6/13/2018,1809,1593,1274
20 | 6/14/2018,1658,1384,1319
21 | 6/15/2018,1866,1484,1229
22 | 6/16/2018,1316,1091,1249
23 | 6/17/2018,1137,879,909
24 | 6/18/2018,1980,1724,766
25 | 6/19/2018,2503,1864,1444
26 | 6/20/2018,1920,1586,1623
27 | 6/21/2018,5461,3196,1340
28 | 6/22/2018,8366,4253,2791
29 | 6/23/2018,1980,1447,3718
30 | 6/24/2018,1384,1172,1214
31 | 6/25/2018,857,650,979
32 |
--------------------------------------------------------------------------------
/data/medium/2018-07-02-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 6/3/2018,1255,1165,708
3 | 6/4/2018,1816,1568,1027
4 | 6/5/2018,2149,2014,1353
5 | 6/6/2018,2436,2160,1711
6 | 6/7/2018,1887,1567,1862
7 | 6/8/2018,1703,1399,1379
8 | 6/9/2018,1012,889,1185
9 | 6/10/2018,1019,849,760
10 | 6/11/2018,1916,1573,738
11 | 6/12/2018,1773,1495,1334
12 | 6/13/2018,1809,1593,1274
13 | 6/14/2018,1658,1384,1319
14 | 6/15/2018,1866,1484,1229
15 | 6/16/2018,1316,1091,1249
16 | 6/17/2018,1137,879,909
17 | 6/18/2018,1980,1724,766
18 | 6/19/2018,2503,1864,1444
19 | 6/20/2018,1920,1586,1623
20 | 6/21/2018,5461,3196,1340
21 | 6/22/2018,8366,4253,2791
22 | 6/23/2018,1980,1447,3718
23 | 6/24/2018,1384,1172,1214
24 | 6/25/2018,2288,1752,979
25 | 6/26/2018,2293,1656,1490
26 | 6/27/2018,2107,1573,1409
27 | 6/28/2018,1970,1542,1377
28 | 6/29/2018,1629,1397,1320
29 | 6/30/2018,1050,941,1190
30 | 7/1/2018,1061,911,787
31 | 7/2/2018,1344,1181,800
32 |
--------------------------------------------------------------------------------
/data/medium/2018-07-10-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 6/11/2018,1900,1571,737
3 | 6/12/2018,1760,1494,1336
4 | 6/13/2018,1814,1581,1270
5 | 6/14/2018,1650,1379,1314
6 | 6/15/2018,1836,1480,1219
7 | 6/16/2018,1347,1111,1255
8 | 6/17/2018,1152,879,923
9 | 6/18/2018,1942,1706,768
10 | 6/19/2018,2529,1870,1425
11 | 6/20/2018,1943,1598,1626
12 | 6/21/2018,5005,2998,1358
13 | 6/22/2018,8755,4417,2617
14 | 6/23/2018,2029,1479,3862
15 | 6/24/2018,1402,1171,1243
16 | 6/25/2018,2271,1736,980
17 | 6/26/2018,2306,1673,1475
18 | 6/27/2018,2082,1575,1425
19 | 6/28/2018,1957,1531,1384
20 | 6/29/2018,1632,1394,1308
21 | 6/30/2018,1093,951,1191
22 | 7/1/2018,1036,917,797
23 | 7/2/2018,1767,1508,793
24 | 7/3/2018,2034,1641,1314
25 | 7/4/2018,1917,1530,1390
26 | 7/5/2018,2313,1665,1294
27 | 7/6/2018,3513,2217,1454
28 | 7/7/2018,2092,1273,1958
29 | 7/8/2018,1939,1205,1111
30 | 7/9/2018,2689,1890,1022
31 | 7/10/2018,0,350,1627
32 |
--------------------------------------------------------------------------------
/data/medium/2018-07-16-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 6/17/2018,1137,879,909
3 | 6/18/2018,1980,1724,766
4 | 6/19/2018,2503,1864,1444
5 | 6/20/2018,1920,1586,1623
6 | 6/21/2018,5461,3196,1340
7 | 6/22/2018,8366,4253,2791
8 | 6/23/2018,1980,1447,3718
9 | 6/24/2018,1384,1172,1214
10 | 6/25/2018,2288,1752,979
11 | 6/26/2018,2293,1656,1490
12 | 6/27/2018,2107,1573,1409
13 | 6/28/2018,1970,1542,1377
14 | 6/29/2018,1629,1397,1320
15 | 6/30/2018,1050,941,1190
16 | 7/1/2018,1061,911,787
17 | 7/2/2018,1789,1525,800
18 | 7/3/2018,2020,1646,1325
19 | 7/4/2018,1921,1514,1397
20 | 7/5/2018,2341,1686,1274
21 | 7/6/2018,3508,2225,1474
22 | 7/7/2018,2093,1241,1964
23 | 7/8/2018,1922,1210,1094
24 | 7/9/2018,2946,1883,1019
25 | 7/10/2018,3456,2155,1625
26 | 7/11/2018,2919,1838,1894
27 | 7/12/2018,2818,1901,1631
28 | 7/13/2018,2700,1840,1646
29 | 7/14/2018,1720,1144,1593
30 | 7/15/2018,1602,1103,985
31 | 7/16/2018,610,323,931
32 |
--------------------------------------------------------------------------------
/data/medium/2018-07-24-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 6/25/2018,2288,1752,979
3 | 6/26/2018,2293,1656,1490
4 | 6/27/2018,2107,1573,1409
5 | 6/28/2018,1970,1542,1377
6 | 6/29/2018,1629,1397,1320
7 | 6/30/2018,1050,941,1190
8 | 7/1/2018,1061,911,787
9 | 7/2/2018,1789,1525,800
10 | 7/3/2018,2020,1646,1325
11 | 7/4/2018,1921,1514,1397
12 | 7/5/2018,2341,1686,1274
13 | 7/6/2018,3508,2225,1474
14 | 7/7/2018,2093,1241,1964
15 | 7/8/2018,1922,1210,1094
16 | 7/9/2018,2946,1883,1019
17 | 7/10/2018,3456,2155,1625
18 | 7/11/2018,2919,1838,1894
19 | 7/12/2018,2818,1901,1631
20 | 7/13/2018,2700,1840,1646
21 | 7/14/2018,1720,1144,1593
22 | 7/15/2018,1602,1103,985
23 | 7/16/2018,2853,1745,931
24 | 7/17/2018,2541,1786,1538
25 | 7/18/2018,2773,1917,1533
26 | 7/19/2018,2783,1950,1669
27 | 7/20/2018,2011,1492,1694
28 | 7/21/2018,1220,895,1311
29 | 7/22/2018,982,924,764
30 | 7/23/2018,1914,1479,790
31 | 7/24/2018,390,339,1287
32 |
--------------------------------------------------------------------------------
/data/medium/2018-08-07-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 7/9/2018,2946,1883,1019
3 | 7/10/2018,3456,2155,1625
4 | 7/11/2018,2919,1838,1894
5 | 7/12/2018,2818,1901,1631
6 | 7/13/2018,2700,1840,1646
7 | 7/14/2018,1720,1144,1593
8 | 7/15/2018,1602,1103,985
9 | 7/16/2018,2853,1745,931
10 | 7/17/2018,2541,1786,1538
11 | 7/18/2018,2773,1917,1533
12 | 7/19/2018,2783,1950,1669
13 | 7/20/2018,2011,1492,1694
14 | 7/21/2018,1220,895,1311
15 | 7/22/2018,982,924,764
16 | 7/23/2018,1914,1479,790
17 | 7/24/2018,1774,1541,1287
18 | 7/25/2018,1668,1475,1308
19 | 7/26/2018,1801,1482,1270
20 | 7/27/2018,1662,1281,1289
21 | 7/28/2018,1010,778,1097
22 | 7/29/2018,1037,846,696
23 | 7/30/2018,1746,1434,740
24 | 7/31/2018,1757,1432,1258
25 | 8/1/2018,1724,1450,1233
26 | 8/2/2018,1979,1485,1243
27 | 8/3/2018,1438,1268,1245
28 | 8/4/2018,974,824,1094
29 | 8/5/2018,944,858,729
30 | 8/6/2018,1556,1303,738
31 | 8/7/2018,230,241,1103
32 |
--------------------------------------------------------------------------------
/data/medium/2018-08-20-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 7/22/2018,982,924,764
3 | 7/23/2018,1914,1479,790
4 | 7/24/2018,1774,1541,1287
5 | 7/25/2018,1668,1475,1308
6 | 7/26/2018,1801,1482,1270
7 | 7/27/2018,1662,1281,1289
8 | 7/28/2018,1010,778,1097
9 | 7/29/2018,1037,846,696
10 | 7/30/2018,1746,1434,740
11 | 7/31/2018,1757,1432,1258
12 | 8/1/2018,1724,1450,1233
13 | 8/2/2018,1979,1485,1243
14 | 8/3/2018,1438,1268,1245
15 | 8/4/2018,974,824,1094
16 | 8/5/2018,944,858,729
17 | 8/6/2018,1556,1303,738
18 | 8/7/2018,1710,1457,1103
19 | 8/8/2018,1938,1551,1285
20 | 8/9/2018,1793,1453,1323
21 | 8/10/2018,1807,1378,1260
22 | 8/11/2018,1015,863,1201
23 | 8/12/2018,984,832,747
24 | 8/13/2018,1835,1443,732
25 | 8/14/2018,1842,1401,1241
26 | 8/15/2018,1575,1281,1208
27 | 8/16/2018,1767,1400,1095
28 | 8/17/2018,1544,1246,1227
29 | 8/18/2018,1034,842,1095
30 | 8/19/2018,867,810,734
31 | 8/20/2018,598,425,708
32 |
--------------------------------------------------------------------------------
/data/medium/2018-08-28-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 7/30/2018,1746,1434,740
3 | 7/31/2018,1757,1432,1258
4 | 8/1/2018,1724,1450,1233
5 | 8/2/2018,1979,1485,1243
6 | 8/3/2018,1438,1268,1245
7 | 8/4/2018,974,824,1094
8 | 8/5/2018,944,858,729
9 | 8/6/2018,1556,1303,738
10 | 8/7/2018,1710,1457,1103
11 | 8/8/2018,1938,1551,1285
12 | 8/9/2018,1793,1453,1323
13 | 8/10/2018,1807,1378,1260
14 | 8/11/2018,1015,863,1201
15 | 8/12/2018,984,832,747
16 | 8/13/2018,1835,1443,732
17 | 8/14/2018,1842,1401,1241
18 | 8/15/2018,1575,1281,1208
19 | 8/16/2018,1767,1400,1095
20 | 8/17/2018,1544,1246,1227
21 | 8/18/2018,1034,842,1095
22 | 8/19/2018,867,810,734
23 | 8/20/2018,1500,1342,708
24 | 8/21/2018,1807,1317,1173
25 | 8/22/2018,1592,1367,1154
26 | 8/23/2018,1668,1391,1170
27 | 8/24/2018,1299,1193,1220
28 | 8/25/2018,1081,942,1040
29 | 8/26/2018,931,810,804
30 | 8/27/2018,1905,1434,700
31 | 8/28/2018,653,493,1206
32 |
--------------------------------------------------------------------------------
/data/medium/2018-09-04-medium-overview.csv:
--------------------------------------------------------------------------------
1 | Date, Minutes Read, Views, Visitors
2 | 8/6/2018,1556,1303,738
3 | 8/7/2018,1710,1457,1103
4 | 8/8/2018,1938,1551,1285
5 | 8/9/2018,1793,1453,1323
6 | 8/10/2018,1807,1378,1260
7 | 8/11/2018,1015,863,1201
8 | 8/12/2018,984,832,747
9 | 8/13/2018,1835,1443,732
10 | 8/14/2018,1842,1401,1241
11 | 8/15/2018,1575,1281,1208
12 | 8/16/2018,1767,1400,1095
13 | 8/17/2018,1544,1246,1227
14 | 8/18/2018,1034,842,1095
15 | 8/19/2018,867,810,734
16 | 8/20/2018,1500,1342,708
17 | 8/21/2018,1807,1317,1173
18 | 8/22/2018,1592,1367,1154
19 | 8/23/2018,1668,1391,1170
20 | 8/24/2018,1299,1193,1220
21 | 8/25/2018,1081,942,1040
22 | 8/26/2018,931,810,804
23 | 8/27/2018,1905,1434,700
24 | 8/28/2018,2027,1609,1206
25 | 8/29/2018,1795,1521,1396
26 | 8/30/2018,1747,1409,1274
27 | 8/31/2018,1538,1439,1246
28 | 9/1/2018,874,860,1221
29 | 9/2/2018,1884,1665,741
30 | 9/3/2018,1664,1610,1433
31 | 9/4/2018,526,479,1383
32 |
--------------------------------------------------------------------------------
/extension/README.md:
--------------------------------------------------------------------------------
1 | ## Dashboard Updater Browser Extension
2 |
3 | This directory contains a Chrome extension to help download our stats data.
4 | You can install it locally from the directory, which makes it easy to update it.
5 | [Here's how](https://developer.chrome.com/extensions/getstarted#unpacked).
6 |
7 | See the [general README](/README.md) for further instructions.
8 |
--------------------------------------------------------------------------------
/extension/content-script-medium-overview.js:
--------------------------------------------------------------------------------
1 | // Injects our script into the page where it can have access
2 | // to the __data__ expando properties of the bar graphs.
3 | // (See: https://stackoverflow.com/questions/44889907/chrome-extension-does-not-have-access-to-dom-data)
4 | var s = document.createElement('script');
5 | s.src = chrome.extension.getURL('page-script-medium.js');
6 | s.onload = function() {
7 | this.remove();
8 | };
9 | (document.head || document.documentElement).appendChild(s);
10 |
--------------------------------------------------------------------------------
/extension/content-script-medium-stories.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Logs the year's total articles and view count to the console
3 | */
4 |
5 | // Update this each year - it will keep counting until it reaches a heading
6 | // that doesn't include this year in the string.
7 | var YEAR_TO_COUNT = '2018';
8 |
9 | var viewsCountTotal = 0;
10 | var statsTableBody = document.getElementsByClassName('js-statsTableBody')[0];
11 | var trs = statsTableBody.getElementsByTagName('tr');
12 |
13 | var storiesCount = 0;
14 | var viewsCount = 0;
15 |
16 | /**
17 | * For each row
18 | */
19 | for (var i=0; i < trs.length; i++) {
20 |
21 | var tr = trs[i];
22 |
23 | if (tr.children.length < 2) {
24 |
25 | // Check date heading
26 | if (tr.classList.contains('sortableTable-row--dateBucket')) {
27 | var dateHeading = tr.querySelector('.heading-title');
28 |
29 | if (dateHeading) {
30 |
31 | if (dateHeading.innerHTML.includes(YEAR_TO_COUNT)) {
32 | console.log('Counting:', dateHeading.innerHTML);
33 | } else {
34 | console.log(`Reached end of year ${YEAR_TO_COUNT}, stopping counting.`);
35 | break;
36 | }
37 | }
38 | }
39 |
40 | // Continue with next 'tr'
41 | continue;
42 | }
43 |
44 | var viewsTd = tr.children[1];
45 | var viewsValue = viewsTd.getElementsByClassName('sortableTable-value')[0].innerText;
46 |
47 | if (viewsValue) {
48 | console.log('Views', viewsValue);
49 |
50 | var viewsInt = parseInt(viewsValue, 10);
51 |
52 | viewsCount += viewsInt;
53 | storiesCount++;
54 | }
55 |
56 | }
57 |
58 | console.log('* Number of stories for ' + YEAR_TO_COUNT, storiesCount);
59 | console.log('* Total views for ' + YEAR_TO_COUNT, viewsCount);
60 |
--------------------------------------------------------------------------------
/extension/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SamsungInternet/dashboard/0fbd7a5cbf514dce8b8e552e2707b7a7db6186e6/extension/icon.png
--------------------------------------------------------------------------------
/extension/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "manifest_version": 2,
3 | "name": "Dashboard Updater",
4 | "description": "Helps to update the data for our Samsung Internet developer advocacy dashboard",
5 | "version": "1.0",
6 | "permissions": [
7 | "activeTab",
8 | "https://ajax.googleapis.com/"
9 | ],
10 | "browser_action": {
11 | "default_icon": "icon.png",
12 | "default_popup": "popup.html",
13 | "default_title": "Dashboard Updater"
14 | },
15 | "web_accessible_resources": ["page-script-medium.js"]
16 | }
17 |
--------------------------------------------------------------------------------
/extension/page-script-medium.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Originally based on the script by Esteban Pintos:
3 | * https://gist.github.com/epintos/a30876b1ce61bf5fafbd884e024b3361
4 | */
5 | (function() {
6 |
7 | var minutesReadValues = []
8 | var viewsValues = [];
9 | var visitorsValues = [];
10 |
11 | // Number of days shown in the graphs
12 | var numDays = 30;
13 |
14 | var initialDay = addDays(new Date(), -numDays + 1);
15 |
16 | function addDays(date, numDays) {
17 | var newDate = new Date(date);
18 | newDate.setDate(date.getDate() + numDays);
19 | return newDate;
20 | }
21 |
22 | // Returns max value of an array
23 | function max(array) {
24 | return Math.max.apply(Math, array);
25 | }
26 |
27 | // Downloads a string with a certain filename
28 | function download(filename, text) {
29 | var pom = document.createElement('a');
30 | pom.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
31 | pom.setAttribute('download', filename);
32 |
33 | if (document.createEvent) {
34 | var event = document.createEvent('MouseEvents');
35 | event.initEvent('click', true, true);
36 | pom.dispatchEvent(event);
37 | }
38 | else {
39 | pom.click();
40 | }
41 | }
42 |
43 | // Generates CSV format string with dates and values
44 | function generateCSVContent(minutesReadValues, viewsValues, visitorsValues) {
45 |
46 | var content = 'Date, Minutes Read, Views, Visitors\n';
47 |
48 | for (var i=0; i < numDays; i++) {
49 | content += addDays(initialDay, i).toLocaleDateString('en-US') + ',' +
50 | Math.round(minutesReadValues[i]) + ',' +
51 | viewsValues[i] + ',' +
52 | visitorsValues[i] + '\n';
53 | }
54 | return content
55 | }
56 |
57 | // Calculates the maximum height (which is relative to, but not equal to, the max value)
58 | function getGraphMaxHeight(graph) {
59 |
60 | var heights = [];
61 | var rects = graph.getElementsByTagName('rect');
62 |
63 | for (var i=0; i < rects.length; i++) {
64 | var rect = rects[i];
65 | heights.push( rect.getAttribute('height') );
66 | };
67 |
68 | return Math.max(...heights);
69 | }
70 |
71 | // Generates array of values from given bar elements
72 | function getValuesFromBars(bars) {
73 | var values = [];
74 | for (var i=0; i < bars.length; i++) {
75 | var bar = bars[i];
76 | console.log('Data ' + i, bar.__data__.value);
77 | values.push(bar.__data__.value);
78 | }
79 | return values;
80 | }
81 |
82 | function downloadMediumStats() {
83 |
84 | var barGraphs = document.getElementsByClassName('js-barGraphBars');
85 |
86 | var minutesReadBars = barGraphs[0].getElementsByTagName('rect');
87 | var viewsBars = barGraphs[1].getElementsByTagName('rect');
88 | var visitorsBars = barGraphs[2].getElementsByTagName('rect');
89 |
90 | var minutesReadValues = getValuesFromBars(minutesReadBars);
91 | var viewsValues = getValuesFromBars(viewsBars);
92 | var visitorsValues = getValuesFromBars(visitorsBars);
93 |
94 | var content = generateCSVContent(minutesReadValues, viewsValues, visitorsValues);
95 |
96 | download(new Date().toISOString().slice(0, 10) + '-medium-overview.csv', content);
97 |
98 | }
99 |
100 | console.log('Download Medium stats');
101 |
102 | downloadMediumStats();
103 |
104 | })();
105 |
--------------------------------------------------------------------------------
/extension/popup.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Dashboard Updater
5 |
18 |
19 |
20 |
21 | Dashboard Updater
22 | Medium
23 | Download the Medium stats overview as a CSV file
24 |
25 | Print the total story views to the console. Remember to scroll down to reveal all the stories first. Check the result in the browser console.
26 |
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/extension/popup.js:
--------------------------------------------------------------------------------
1 | var MEDIUM_OVERVIEW_URL = 'https://medium.com/samsung-internet-dev/stats/overview';
2 | var MEDIUM_STORIES_URL = 'https://medium.com/samsung-internet-dev/stats/stories';
3 | var MEDIUM_STORIES_ME_URL = 'https://medium.com/me/stats';
4 |
5 | var btnMediumOverview;
6 |
7 | // Based on popup sample, copyright (c) 2014 The Chromium Authors
8 | function getCurrentTabUrl(callback) {
9 | var queryInfo = {
10 | active: true,
11 | currentWindow: true
12 | };
13 |
14 | chrome.tabs.query(queryInfo, function(tabs) {
15 | var tab = tabs[0];
16 | var url = tab.url;
17 | console.assert(typeof url == 'string', 'tab.url should be a string');
18 | callback(url);
19 | });
20 | }
21 |
22 | function updateEnabledButtons() {
23 |
24 | getCurrentTabUrl(function(url) {
25 | if (btnMediumOverview) {
26 | btnMediumOverview.disabled = (url !== MEDIUM_OVERVIEW_URL);
27 | }
28 | if (btnMediumStories) {
29 | btnMediumStories.disabled = (url !== MEDIUM_STORIES_URL && url !== MEDIUM_STORIES_ME_URL);
30 | }
31 | });
32 |
33 | }
34 |
35 | document.addEventListener('DOMContentLoaded', function() {
36 |
37 | updateEnabledButtons();
38 |
39 | btnMediumOverview = document.getElementById('btn-medium-overview');
40 | btnMediumStories = document.getElementById('btn-medium-stories');
41 |
42 | btnMediumOverview.addEventListener('click', function() {
43 |
44 | getCurrentTabUrl(function(url) {
45 | if (url === MEDIUM_OVERVIEW_URL) {
46 |
47 | console.log('Medium Overview');
48 |
49 | chrome.tabs.executeScript({
50 | file: 'content-script-medium-overview.js',
51 | runAt: 'document_end'
52 | });
53 | }
54 | });
55 | });
56 |
57 | btnMediumStories.addEventListener('click', function() {
58 |
59 | getCurrentTabUrl(function(url) {
60 | if (url === MEDIUM_STORIES_URL || url === MEDIUM_STORIES_ME_URL) {
61 |
62 | console.log('Medium Stories');
63 |
64 | chrome.tabs.executeScript({
65 | file: 'content-script-medium-stories.js',
66 | runAt: 'document_end'
67 | });
68 | }
69 | });
70 | });
71 |
72 | chrome.tabs.onUpdated.addListener( updateEnabledButtons );
73 |
74 | });
75 |
--------------------------------------------------------------------------------
/images/dashboard-preview-crop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SamsungInternet/dashboard/0fbd7a5cbf514dce8b8e552e2707b7a7db6186e6/images/dashboard-preview-crop.png
--------------------------------------------------------------------------------
/images/dashboard-preview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SamsungInternet/dashboard/0fbd7a5cbf514dce8b8e552e2707b7a7db6186e6/images/dashboard-preview.png
--------------------------------------------------------------------------------
/images/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SamsungInternet/dashboard/0fbd7a5cbf514dce8b8e552e2707b7a7db6186e6/images/favicon.png
--------------------------------------------------------------------------------
/images/icon192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SamsungInternet/dashboard/0fbd7a5cbf514dce8b8e552e2707b7a7db6186e6/images/icon192.png
--------------------------------------------------------------------------------
/images/icon512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SamsungInternet/dashboard/0fbd7a5cbf514dce8b8e552e2707b7a7db6186e6/images/icon512.png
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Dashboard
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
27 |
28 | Audience
29 |
30 |
31 |
3.1K
32 |
Medium followers
33 |
‒ 0.0% (28 days)
34 |
35 |
36 |
1.7K
37 |
Twitter followers
38 |
↑ 2.9% (28 days)
39 |
40 |
41 |
443
42 |
Facebook followers
43 |
↑ 10 (28 days)
44 |
45 |
46 |
77
47 |
Instagram followers
48 |
↑ 2 (28 days)
49 |
50 |
51 | Total social media followers: 5.3K
52 | Engagement
53 |
54 |
55 |
13.3K
56 |
Dev Hub unique visitors
57 |
↓ -22.6% (28 days)
58 |
59 |
60 |
37.0K
61 |
Tweet impressions (28 days)
62 |
↓ -41.0%
63 |
64 |
65 |
80
66 |
Twitter mentions (28 days)
67 |
↓ -20
68 |
69 |
70 |
37.6K
71 |
Medium views (30 days)
72 |
↓ -10.0%
73 |
74 |
75 | Open Source & Support
76 |
77 |
78 |
52
79 |
Github repositories
80 |
81 |
82 |
316
83 |
Github stars
84 |
85 |
86 |
84
87 |
Github forks
88 |
89 |
90 |
34
91 |
Open issues
92 |
93 |
94 |
3
95 |
Time to close issues (months, avg)
96 |
97 |
98 |
4
99 |
Stack Overflow estimated questions asked (28 days)
100 |
101 |
102 |
0
103 |
Stack Overflow answers/comments given (28 days)
104 |
105 |
106 |
107 |
Recent Github Pull Requests (9)
108 |
109 |
110 | Medium Blog
111 |
112 |
113 | — Minutes read
114 | — Views
115 | — Visitors
116 |
117 | Surveys
118 |
119 |
120 |
Twitter poll
121 |
122 |
123 | ■ Not aware of Samsung Internet
124 | ■ Aware of Samsung Internet
125 |
126 |
Source: Peter's Twitter poll, April 2018
127 |
128 |
137 |
138 |
139 |
142 |
143 |
144 |
145 |
--------------------------------------------------------------------------------
/lib/scss/settings/_chartist-settings.scss:
--------------------------------------------------------------------------------
1 | // Scales for responsive SVG containers
2 | $ct-scales: ((1), (15/16), (8/9), (5/6), (4/5), (3/4), (2/3), (5/8), (1/1.618), (3/5), (9/16), (8/15), (1/2), (2/5), (3/8), (1/3), (1/4)) !default;
3 | $ct-scales-names: (ct-square, ct-minor-second, ct-major-second, ct-minor-third, ct-major-third, ct-perfect-fourth, ct-perfect-fifth, ct-minor-sixth, ct-golden-section, ct-major-sixth, ct-minor-seventh, ct-major-seventh, ct-octave, ct-major-tenth, ct-major-eleventh, ct-major-twelfth, ct-double-octave) !default;
4 |
5 | // Class names to be used when generating CSS
6 | $ct-class-chart: ct-chart !default;
7 | $ct-class-chart-line: ct-chart-line !default;
8 | $ct-class-chart-bar: ct-chart-bar !default;
9 | $ct-class-horizontal-bars: ct-horizontal-bars !default;
10 | $ct-class-chart-pie: ct-chart-pie !default;
11 | $ct-class-chart-donut: ct-chart-donut !default;
12 | $ct-class-label: ct-label !default;
13 | $ct-class-series: ct-series !default;
14 | $ct-class-line: ct-line !default;
15 | $ct-class-point: ct-point !default;
16 | $ct-class-area: ct-area !default;
17 | $ct-class-bar: ct-bar !default;
18 | $ct-class-slice-pie: ct-slice-pie !default;
19 | $ct-class-slice-donut: ct-slice-donut !default;
20 | $ct-class-slice-donut-solid: ct-slice-donut-solid !default;
21 | $ct-class-grid: ct-grid !default;
22 | $ct-class-grid-background: ct-grid-background !default;
23 | $ct-class-vertical: ct-vertical !default;
24 | $ct-class-horizontal: ct-horizontal !default;
25 | $ct-class-start: ct-start !default;
26 | $ct-class-end: ct-end !default;
27 |
28 | // Container ratio
29 | $ct-container-ratio: (1/1.618) !default;
30 |
31 | // Text styles for labels
32 | $ct-text-color: rgba(0, 0, 0, 0.4) !default;
33 | $ct-text-size: 0.75rem !default;
34 | $ct-text-align: flex-start !default;
35 | $ct-text-justify: flex-start !default;
36 | $ct-text-line-height: 1;
37 |
38 | // Grid styles
39 | $ct-grid-color: rgba(0, 0, 0, 0.2) !default;
40 | $ct-grid-dasharray: 2px !default;
41 | $ct-grid-width: 1px !default;
42 | $ct-grid-background-fill: none !default;
43 |
44 | // Line chart properties
45 | $ct-line-width: 4px !default;
46 | $ct-line-dasharray: false !default;
47 | $ct-point-size: 10px !default;
48 | // Line chart point, can be either round or square
49 | $ct-point-shape: round !default;
50 | // Area fill transparency between 0 and 1
51 | $ct-area-opacity: 0.1 !default;
52 |
53 | // Bar chart bar width
54 | $ct-bar-width: 10px !default;
55 |
56 | // Donut width (If donut width is to big it can cause issues where the shape gets distorted)
57 | $ct-donut-width: 60px !default;
58 |
59 | // If set to true it will include the default classes and generate CSS output. If you're planning to use the mixins you
60 | // should set this property to false
61 | $ct-include-classes: true !default;
62 |
63 | // If this is set to true the CSS will contain colored series. You can extend or change the color with the
64 | // properties below
65 | $ct-include-colored-series: $ct-include-classes !default;
66 |
67 | // If set to true this will include all responsive container variations using the scales defined at the top of the script
68 | $ct-include-alternative-responsive-containers: $ct-include-classes !default;
69 |
70 | // Series names and colors. This can be extended or customized as desired. Just add more series and colors.
71 | $ct-series-names: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) !default;
72 | $ct-series-colors: (
73 | #d70206,
74 | #f05b4f,
75 | #f4c63d,
76 | #d17905,
77 | #453d3f,
78 | #59922b,
79 | #0544d3,
80 | #6b0392,
81 | #f05b4f,
82 | #dda458,
83 | #eacf7d,
84 | #86797d,
85 | #b2c326,
86 | #6188e2,
87 | #a748ca
88 | ) !default;
89 |
--------------------------------------------------------------------------------
/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Dashboard",
3 | "short_name": "Dashboard",
4 | "start_url": ".",
5 | "display": "standalone",
6 | "background_color": "#222222",
7 | "theme_color": "#222222",
8 | "description": "Samsung Internet Developer Advocacy dashboard",
9 | "icons": [
10 | {
11 | "src": "images/icon192.png",
12 | "sizes": "192x192",
13 | "type": "image/png"
14 | },
15 | {
16 | "src": "images/icon512.png",
17 | "sizes": "512x512",
18 | "type": "image/png"
19 | }
20 | ]
21 | }
22 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "samsung-internet-dashboard",
3 | "version": "1.0.0",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "agent-base": {
8 | "version": "4.2.0",
9 | "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.0.tgz",
10 | "integrity": "sha512-c+R/U5X+2zz2+UCrCFv6odQzJdoqI+YecuhnAJLa1zYaMc13zPfwMwZrr91Pd1DYNo/yPRbiM4WVf9whgwFsIg==",
11 | "dev": true,
12 | "requires": {
13 | "es6-promisify": "5.0.0"
14 | }
15 | },
16 | "d": {
17 | "version": "1.0.0",
18 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz",
19 | "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=",
20 | "dev": true,
21 | "requires": {
22 | "es5-ext": "0.10.35"
23 | }
24 | },
25 | "debug": {
26 | "version": "3.1.0",
27 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
28 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
29 | "dev": true,
30 | "requires": {
31 | "ms": "2.0.0"
32 | }
33 | },
34 | "dotenv": {
35 | "version": "4.0.0",
36 | "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-4.0.0.tgz",
37 | "integrity": "sha1-hk7xN5rO1Vzm+V3r7NzhefegzR0=",
38 | "dev": true
39 | },
40 | "encoding": {
41 | "version": "0.1.12",
42 | "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz",
43 | "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=",
44 | "dev": true,
45 | "requires": {
46 | "iconv-lite": "0.4.19"
47 | }
48 | },
49 | "es5-ext": {
50 | "version": "0.10.35",
51 | "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.35.tgz",
52 | "integrity": "sha1-GO6FjOajxFx9eekcFfzKnsVoSU8=",
53 | "dev": true,
54 | "requires": {
55 | "es6-iterator": "2.0.3",
56 | "es6-symbol": "3.1.1"
57 | }
58 | },
59 | "es6-iterator": {
60 | "version": "2.0.3",
61 | "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
62 | "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=",
63 | "dev": true,
64 | "requires": {
65 | "d": "1.0.0",
66 | "es5-ext": "0.10.35",
67 | "es6-symbol": "3.1.1"
68 | }
69 | },
70 | "es6-promise": {
71 | "version": "4.2.4",
72 | "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz",
73 | "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==",
74 | "dev": true
75 | },
76 | "es6-promisify": {
77 | "version": "5.0.0",
78 | "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz",
79 | "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=",
80 | "dev": true,
81 | "requires": {
82 | "es6-promise": "4.2.4"
83 | }
84 | },
85 | "es6-symbol": {
86 | "version": "3.1.1",
87 | "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz",
88 | "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=",
89 | "dev": true,
90 | "requires": {
91 | "d": "1.0.0",
92 | "es5-ext": "0.10.35"
93 | }
94 | },
95 | "es6-template-strings": {
96 | "version": "2.0.1",
97 | "resolved": "https://registry.npmjs.org/es6-template-strings/-/es6-template-strings-2.0.1.tgz",
98 | "integrity": "sha1-sWbGpiVi9Hi7d3X2ypYQOlmbSyw=",
99 | "dev": true,
100 | "requires": {
101 | "es5-ext": "0.10.35",
102 | "esniff": "1.1.0"
103 | }
104 | },
105 | "esniff": {
106 | "version": "1.1.0",
107 | "resolved": "https://registry.npmjs.org/esniff/-/esniff-1.1.0.tgz",
108 | "integrity": "sha1-xmhJIp+RRk3t4uDUAgHtar9l8qw=",
109 | "dev": true,
110 | "requires": {
111 | "d": "1.0.0",
112 | "es5-ext": "0.10.35"
113 | }
114 | },
115 | "https-proxy-agent": {
116 | "version": "2.2.0",
117 | "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.0.tgz",
118 | "integrity": "sha512-uUWcfXHvy/dwfM9bqa6AozvAjS32dZSTUYd/4SEpYKRg6LEcPLshksnQYRudM9AyNvUARMfAg5TLjUDyX/K4vA==",
119 | "dev": true,
120 | "requires": {
121 | "agent-base": "4.2.0",
122 | "debug": "3.1.0"
123 | }
124 | },
125 | "iconv-lite": {
126 | "version": "0.4.19",
127 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
128 | "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
129 | "dev": true
130 | },
131 | "is-stream": {
132 | "version": "1.1.0",
133 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
134 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
135 | "dev": true
136 | },
137 | "moment": {
138 | "version": "2.21.0",
139 | "resolved": "https://registry.npmjs.org/moment/-/moment-2.21.0.tgz",
140 | "integrity": "sha512-TCZ36BjURTeFTM/CwRcViQlfkMvL1/vFISuNLO5GkcVm1+QHfbSiNqZuWeMFjj1/3+uAjXswgRk30j1kkLYJBQ==",
141 | "dev": true
142 | },
143 | "ms": {
144 | "version": "2.0.0",
145 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
146 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
147 | "dev": true
148 | },
149 | "node-fetch": {
150 | "version": "1.7.3",
151 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz",
152 | "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==",
153 | "dev": true,
154 | "requires": {
155 | "encoding": "0.1.12",
156 | "is-stream": "1.1.0"
157 | }
158 | }
159 | }
160 | }
161 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "samsung-internet-dashboard",
3 | "version": "1.0.0",
4 | "description": "Samsung Internet Developer Advocacy Dashboard",
5 | "main": "update.js",
6 | "scripts": {
7 | "start": "node update",
8 | "test": "echo \"Error: no test specified\" && exit 1"
9 | },
10 | "repository": {
11 | "type": "git",
12 | "url": "git+https://github.com/samsunginternet/dashboard.git"
13 | },
14 | "author": "Peter O'Shaughnessy (https://peteroshaughnessy.com)",
15 | "license": "ISC",
16 | "bugs": {
17 | "url": "https://github.com/samsunginternet/dashboard/issues"
18 | },
19 | "homepage": "https://github.com/samsunginternet/dashboard#readme",
20 | "devDependencies": {
21 | "dotenv": "^4.0.0",
22 | "es6-template-strings": "^2.0.1",
23 | "https-proxy-agent": "^2.2.0",
24 | "moment": "^2.21.0",
25 | "node-fetch": "^1.7.3"
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/src/data-paths.js:
--------------------------------------------------------------------------------
1 | /* Exporting as variables to be used by both front-end and service worker */
2 | var mediumStatsCSVPath = 'data/medium/2018-09-04-medium-overview.csv';
3 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | var twitterSurveyAwarePercent = 48;
2 | var eventSurveyAwarePercent = 42;
3 |
4 | function setupSurveyChart(chartId, awarePercent) {
5 |
6 | var data = {
7 | series: [awarePercent, 100 - awarePercent]
8 | };
9 |
10 | var sum = function(a, b) { return a + b };
11 |
12 | var options = {
13 | width: 250,
14 | height: 250,
15 | fullWidth: false,
16 | labelInterpolationFnc: function(value) {
17 | return value + '%';
18 | }
19 | };
20 |
21 | new Chartist.Pie(`#${chartId}-survey-chart`, data, options);
22 | }
23 |
24 | function setupSurveyCharts() {
25 | setupSurveyChart('twitter', twitterSurveyAwarePercent);
26 | setupSurveyChart('event', eventSurveyAwarePercent);
27 | }
28 |
29 | function fetchMediumData() {
30 | Papa.parse(mediumStatsCSVPath, {
31 | download: true,
32 | complete: function(data) {
33 | console.log('Medium data', data);
34 | setupMediumChart(data);
35 | }
36 | });
37 | }
38 |
39 | function setupMediumChart(mediumData) {
40 |
41 | // Date, Minutes Read, Views, Visitors
42 |
43 | var labelCount = 0;
44 | var labels = [];
45 | var totalTimeReadMins = [];
46 | var views = [];
47 | var dailyUniqueVisitors = [];
48 |
49 | var rows = mediumData.data.slice(1, mediumData.data.length - 1);
50 |
51 | rows.forEach(function(row) {
52 | if (row[2] !== 'null') {
53 | labels.push( row[0] );
54 | totalTimeReadMins.push( row[1] );
55 | views.push( row[2] );
56 | dailyUniqueVisitors.push( row[3] );
57 | }
58 | });
59 |
60 | var data = {
61 | labels: labels,
62 | series: [
63 | totalTimeReadMins,
64 | views,
65 | dailyUniqueVisitors
66 | ]
67 | };
68 |
69 | var options = {
70 | labelOffset: 50,
71 | height: 240,
72 | axisX: {
73 | showGrid: false,
74 | labelInterpolationFnc: function(value) {
75 | // Display one label every week
76 | if (labelCount++ % 7 === 0) {
77 | return moment(value).format('D/M/Y');
78 | }
79 | }
80 | },
81 | axisY: {
82 | onlyInteger: true
83 | },
84 | seriesBarDistance: 5,
85 | showPoint: false,
86 | lineSmooth: false
87 | };
88 |
89 | Chartist.Line('#medium-chart', data, options);
90 | labelCount = 0;
91 | }
92 |
93 | if ('serviceWorker' in navigator) {
94 |
95 | navigator.serviceWorker.register('/sw.js')
96 | .then(function() {
97 | console.log('Service worker successfully registered');
98 | })
99 | .catch(function(err) {
100 | console.error('Service worker failed to register', err);
101 | });
102 |
103 | } else {
104 | console.log('Service workers not supported');
105 | }
106 |
107 | fetchMediumData();
108 | setupSurveyCharts();
109 |
--------------------------------------------------------------------------------
/src/template.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Dashboard
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
27 |
28 | Audience
29 |
30 |
31 |
${medium.audience.followers.formattedCount}
32 |
Medium followers
33 |
${medium.audience.followers.changeArrow} ${medium.audience.followers.change} (${changeSinceLabel})
34 |
35 |
36 |
${twitter.audience.followers.formattedCount}
37 |
Twitter followers
38 |
${twitter.audience.followers.change} (${changeSinceLabel})
39 |
40 |
41 |
${facebook.audience.followers.formattedCount}
42 |
Facebook followers
43 |
${facebook.audience.followers.changeArrow} ${facebook.audience.followers.change} (${changeSinceLabel})
44 |
45 |
46 |
${instagram.audience.followers.formattedCount}
47 |
Instagram followers
48 |
${instagram.audience.followers.changeArrow} ${instagram.audience.followers.change} (${changeSinceLabel})
49 |
50 |
51 | Total social media followers: ${totalFollowers}
52 | Engagement
53 |
54 |
55 |
${devHub.engagement.uniqueVisitors.formattedCount}
56 |
Dev Hub unique visitors
57 |
${devHub.engagement.uniqueVisitors.changeArrow} ${devHub.engagement.uniqueVisitors.change} (${changeSinceLabel})
58 |
59 |
60 |
${twitter.engagement.impressions.formattedCount}
61 |
Tweet impressions (28 days)
62 |
${twitter.engagement.impressions.change}
63 |
64 |
65 |
${twitter.engagement.mentions.formattedCount}
66 |
Twitter mentions (28 days)
67 |
${twitter.engagement.mentions.change}
68 |
69 |
70 |
${medium.engagement.views.formattedCount}
71 |
Medium views (30 days)
72 |
${medium.engagement.views.changeArrow} ${medium.engagement.views.change}
73 |
74 |
75 | Open Source & Support
76 |
77 |
78 |
${github.repositories}
79 |
Github repositories
80 |
81 |
82 |
${github.stars}
83 |
Github stars
84 |
85 |
86 |
${github.forks}
87 |
Github forks
88 |
89 |
90 |
${github.issues.openIssues}
91 |
Open issues
92 |
93 |
94 |
${github.issues.closeTimeAvg.count}
95 |
Time to close issues (months, avg)
96 |
97 |
98 |
${stackoverflow.questions}
99 |
Stack Overflow estimated questions asked (${changeSinceLabel})
100 |
101 |
102 |
${stackoverflow.answersAndComments}
103 |
Stack Overflow answers/comments given (${changeSinceLabel})
104 |
105 |
106 |
107 |
Recent Github Pull Requests (${github.pullrequests.count})
108 |
${github.pullrequests.list}
109 |
110 | Medium Blog
111 |
112 |
113 | — Minutes read
114 | — Views
115 | — Visitors
116 |
117 | Surveys
118 |
119 |
120 |
Twitter poll
121 |
122 |
123 | ■ Not aware of Samsung Internet
124 | ■ Aware of Samsung Internet
125 |
126 |
Source: Peter's Twitter poll, April 2018
127 |
128 |
137 |
138 |
139 |
142 |
143 |
144 |
145 |
--------------------------------------------------------------------------------
/sw.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | var version = 19;
4 |
5 | importScripts('lib/sw-toolbox.js');
6 | importScripts('src/data-paths.js');
7 |
8 | var precacheList = [
9 | 'index.html',
10 | 'src/index.js',
11 | 'images/favicon.png',
12 | 'images/icon192.png',
13 | 'images/icon512.png',
14 | 'images/samsung-internet-logo-text.svg',
15 | mediumStatsCSVPath
16 | ];
17 |
18 | console.log('precacheList', precacheList);
19 |
20 | toolbox.precache(precacheList);
21 |
22 | toolbox.router.get('/images/*', toolbox.cacheFirst);
23 |
24 | toolbox.router.get('/*', toolbox.networkFirst, {
25 | networkTimeoutSeconds: 5
26 | });
27 |
28 | console.log('Service worker version', version);
29 |
--------------------------------------------------------------------------------
/utils.js:
--------------------------------------------------------------------------------
1 | var MAX_DISPLAY_URL_LENGTH = 35;
2 |
3 | const moment = require('moment');
4 |
5 | const utils = {
6 |
7 | isInteger: function(number) {
8 | return typeof number === 'number' && number % 1 === 0;
9 | },
10 |
11 | getDaysDiff: function(dateString1, dateString2) {
12 | return moment(dateString1).diff(moment(dateString2), 'days');
13 | },
14 |
15 | /**
16 | * If thousands or more, use format like 12.3
17 | */
18 | formatNumberValue: function(number, forceThousandsFormat) {
19 | return forceThousandsFormat || number >= 1000 ? (number/1000).toFixed(1) + 'K' : number;
20 | },
21 |
22 | formatChangeValue: function(count, compareWithCount, lowerIsBetter) {
23 |
24 | if (typeof count === 'undefined' || typeof compareWithCount === 'undefined') {
25 | return 'N/A';
26 | }
27 |
28 | if (count === 'N/A' || compareWithCount === 'N/A') {
29 | return 'N/A';
30 | }
31 |
32 | // Use percentage change values for larger numbers
33 | if (count > 1000 || compareWithCount > 1000) {
34 | return ((count - compareWithCount) / compareWithCount * 100).toFixed(1) + '%';
35 | }
36 |
37 | return this.formatNumberValue(lowerIsBetter ? compareWithCount - count : count - compareWithCount);
38 |
39 | },
40 |
41 | /**
42 | * Crop URL, add ellipsis, remove protocol
43 | */
44 | formatDisplayUrl: function(url) {
45 | var formattedUrl = url.length > MAX_DISPLAY_URL_LENGTH ? (url.substring(0,MAX_DISPLAY_URL_LENGTH) + '...') : url;
46 | formattedUrl = formattedUrl.replace('http://', '');
47 | formattedUrl = formattedUrl.replace('https://', '');
48 | return formattedUrl;
49 | },
50 |
51 | /**
52 | * Traverse down pathToStat to get to the specific data point, if it exists
53 | */
54 | getStatWithComparison: function(data, comparisonData, pathToStat) {
55 |
56 | var stat = data,
57 | comparisonStat = comparisonData;
58 |
59 | for (var i=0; i < pathToStat.length; i++) {
60 |
61 | var attribute = pathToStat[i];
62 |
63 | if (stat[attribute]) {
64 | stat = stat[attribute];
65 | }
66 |
67 | if (comparisonStat[attribute]) {
68 | comparisonStat = comparisonStat[attribute];
69 | }
70 |
71 | }
72 |
73 | return [stat, comparisonStat];
74 |
75 | },
76 |
77 | /**
78 | * Return 'up', 'down' or 'same'
79 | */
80 | getChangeDirection: function(count, comparisonCount, lowerIsBetter) {
81 |
82 | if (count - comparisonCount < 0) {
83 | return lowerIsBetter ? 'up' : 'down';
84 | } else if (comparisonCount - count < 0) {
85 | return lowerIsBetter ? 'down' : 'up';
86 | } else {
87 | return 'same';
88 | }
89 |
90 | }
91 |
92 | }
93 |
94 | module.exports = utils;
--------------------------------------------------------------------------------