Commit Graph

243 Commits

Author SHA1 Message Date
Danny 813eb460a3 increase left-margin of chart to allow for larger numbers on y-axis 2018-05-23 16:06:20 +02:00
Danny e2218d0736 fix chart padding 2018-05-23 11:12:05 +02:00
Danny b8f0369724 add basic tooltips in chart 2018-05-23 09:56:33 +02:00
Danny c5b0d051a2 stretch totals sidebar to top, move chart to right area 2018-05-23 09:24:55 +02:00
Danny 60008aa205 show pageview & visitor chart for week/month/year periods 2018-05-22 16:01:59 +02:00
Danny 0101afdc9f fill dates with no data with zeroes & add d3-transition 2018-05-22 15:45:22 +02:00
Danny 7adc5d3bec wip on chart implementation using d3 2018-05-22 12:23:17 +02:00
Danny van Kooten 72c2952e15 use singular if visitor count == 1. closes #34 2018-05-21 11:37:12 +02:00
Danny ae74bb39cc hide custom date nav on very small screens, #32 2018-05-18 11:04:16 +02:00
Danny 16d9fdcf6c minor styling changes to datepicker elements 2018-05-16 17:37:10 +02:00
Danny 44ae5d38f2 move custom date selector to far right, #32 2018-05-16 17:25:50 +02:00
Danny bcae762a35 update document title with realtime visitor count 2018-05-16 17:25:29 +02:00
Danny 0ecd4ec251 use pikaday for the date component, closes #32 2018-05-16 17:02:46 +02:00
Danny f082231b12 implement logic to get a working html5 input date. #32 2018-05-16 13:54:52 +02:00
Danny a0bb890210 wip... show input date field 2018-05-16 12:57:03 +02:00
Danny 7d8d0b9c42 show current date range in date-nav, #32 2018-05-16 11:51:40 +02:00
Danny 50771a6314 browser offset should be substracted, not added #31 2018-05-16 03:26:56 -06:00
Danny f0d255c26b limit animation progress to 1 in case tab loses focus or lags 2018-05-16 03:26:44 -06:00
Danny 9cb8d443ec add local timezone offset to utc timestamps we send to server. #31 2018-05-16 11:10:53 +02:00
Danny 0caf52b780 use local timezone in client, utc timezone on server. should close #31 2018-05-16 03:54:51 -05:00
Danny fc552b0508 set start variable outside of tick loop 2018-05-16 10:16:13 +02:00
Danny 9f6684f0fb fix rounding issue for percentage values 2018-05-16 10:10:23 +02:00
Danny van Kooten ce00a975b4 animate numbers in count widget 2018-05-15 22:26:24 +02:00
Danny bbfb5d0b5f check for unauthorized status code to auto-logout on auth errors 2018-05-15 14:32:30 +02:00
Danny a4be3ef3a7 use status code as error message 2018-05-15 14:32:01 +02:00
Danny 1e60fc8102 access props through function arg 2018-05-15 14:31:51 +02:00
Danny 73e011b6cc implement notfound handler with simple 404 page, closes #19 2018-05-14 12:08:18 +02:00
Danny 6482378734 serve assets from /assets subdir and re-use packr box for index.html & tracker.js 2018-05-14 11:17:41 +02:00
Danny 9b037389f5 fire off request for fetching totals earlier 2018-05-11 16:07:13 +02:00
Danny 04d1065698 use pageviews sum to show green percentage bar in pseudo-element 2018-05-11 15:49:52 +02:00
Danny c25e164eac ignore prerendered pages, #13 2018-05-11 14:42:10 +02:00
Danny 931cc8f775 don't send unneeded var in collect request 2018-05-11 14:34:56 +02:00
Danny 224124c1c9 derive tracker URL from script element if not explicitly set 2018-05-11 14:34:39 +02:00
Danny fb5cd41a34 restyle login page 2018-05-11 14:15:58 +02:00
Danny 3c823e9351 delay initial request until datepicker component bubbled up the correct period 2018-05-09 10:55:56 +02:00
Danny b5d5996c90 use UTC times in client-side datepicker 2018-05-09 10:35:31 +02:00
Danny 61753a713c delete unused img files for country flags 2018-05-08 14:52:03 +02:00
Danny b4c7de0880 store hostname for each pageview & page stat 2018-05-08 13:21:36 +02:00
Danny 5fe5b97e94 use realtime poll to catch expired/invalid login sessions 2018-05-08 13:21:14 +02:00
Danny 0a0476b5ae store accurate new session count & use that to determine bounce rate 2018-05-08 11:52:01 +02:00
Danny fe7eee2b73 clean-up data structure & add indices 2018-05-08 10:45:17 +02:00
Danny van Kooten 5e0ac22fe4 and finally, delete pageviews after processing to keep pageviews table nice & small 2018-05-07 19:45:42 +02:00
Danny van Kooten 95cd0e4053 implement referrers table 2018-05-07 19:33:52 +02:00
Danny van Kooten 9a9ea1687c imment referrer stats api route 2018-05-07 19:20:58 +02:00
Danny dac50c3da9 start cleaning up & implement page stats again 2018-05-07 17:01:20 +02:00
Danny 433c6e2f4d get general data flow up & running again for site stats 2018-05-07 16:05:53 +02:00
Danny van Kooten 082073afb8 [wip] move bulk of storage to client-side for improved scalability, simplicity and privacy. see #14. 2018-05-06 11:53:19 +02:00
Danny 5a403d536a first stab at time on site tracking. #20 2018-05-04 15:43:05 +02:00
Danny 86e5a7a957 simple bounce rate implementation. #21 2018-05-04 12:20:37 +02:00
Danny 5f626f1143 use simple loading class to indicate loading state. 2018-05-04 11:05:55 +02:00
Danny f2258acafb add querystring to url's in table component 2018-05-04 10:42:43 +02:00
Danny van Kooten 11775e063b minor js clean-up 2018-05-03 10:54:22 +02:00
Danny van Kooten 9d291f3e49 add <meta> tags in html head, set mobile viewport 2018-05-03 09:20:37 +02:00
Danny van Kooten 956dd539c8 fix path parsing to not include hostname when using https. closes #22 2018-05-03 08:40:15 +02:00
Danny van Kooten c47fc3d893 only output notification HTML if there is one 2018-05-02 17:10:59 +02:00
Danny van Kooten 68d52a15f7 add simple styles for login page, use normalize.css 2018-05-02 17:03:18 +02:00
Danny d76cb6f24d stop storing ip address & browser version details. 2018-05-02 15:33:01 +02:00
Danny 47d8347ef1 universal handling of retrieving totals from datastore, incl. uniques. 2018-05-02 14:52:52 +02:00
Danny van Kooten 50556c44e9 prepare json data for new components, use fallback values in components 2018-05-01 20:02:05 +02:00
Danny van Kooten 0a9ef8d4f6 move before & after calculation to datepicker component 2018-05-01 19:45:52 +02:00
Danny 399c486209 pass period to table component 2018-05-01 16:10:39 +02:00
Danny 8137f10fbc first stab at new design, needs work 2018-05-01 16:06:17 +02:00
Danny ba6a86cae0 account for empty record sets in js components 2018-04-30 16:11:20 +02:00
Danny van Kooten 0bb0c1356b
Merge pull request #16 from da2x/patch-2
Let querySelector do all the work when finding canonical href
2018-04-25 13:46:59 +02:00
Daniel Aleksandersen 1b007cdda9
Let querySelector do all the work 2018-04-25 13:27:50 +02:00
Daniel Aleksandersen 028f8f9307
Correct doNotTrack property name
It has to be lower camel case for it to work in browsers, and it’s the way its defined in the spec.
2018-04-25 13:21:08 +02:00
Danny 08ce5e651d simplify build steps & don't store dist assets in VC 2018-04-25 10:15:24 +02:00
pjrvs 6ae3b422d1 updated screenshot
screenshot of the v1 dash.
2018-04-24 09:22:26 -07:00
Danny 0b68a519fb rebrand executable & README to fathom 2018-04-24 10:12:38 +02:00
Danny d8e458625d rebrand to fathom - usefathom.com 2018-04-24 09:45:46 +02:00
Danny bfdf25f8a1 fix typo in DoNotTrack variable name 2018-04-23 14:50:25 +02:00
Danny 1e59d66e6d link to referrer url directly, since we store absolute url's 2018-04-23 14:50:12 +02:00
Danny e736573a57 upgrade client-side code for Preact 8.x 2018-04-23 10:11:51 +02:00
Danny 779b6db134 update JS deps 2018-04-20 13:26:00 +02:00
Danny 93b285c0a9 change project directory structure to clean-up root dir 2018-04-20 13:12:23 +02:00
Danny van Kooten f6cab7c297 when a new message is set, clear previous timeout 2017-01-13 13:41:30 +01:00
Danny van Kooten b5b31d89f8 parse json in all responses & handle login error 2017-01-13 12:47:21 +01:00
Danny van Kooten d6a7cb0365 misc CS fixes 2017-01-06 15:58:50 +01:00
Danny van Kooten 440a0e5bfa fix resource URL 2017-01-06 15:58:29 +01:00
Danny van Kooten 1b107a55d5 Get rid of `archive` table & introduce `total_*` tables for each metric. 2016-12-24 13:07:33 +02:00
Danny van Kooten d8e074191f Update location hash when choosing time period & parse on component init. 2016-12-24 10:42:05 +02:00
Danny van Kooten ccc93b12e0 Decrease global font-size to 14px. 2016-12-24 10:27:43 +02:00
Danny van Kooten 524bc4f6bd Repeat date in Graph tooltip. 2016-12-24 10:27:29 +02:00
Danny van Kooten 42e3f2134b Account for empty dataset in Table component. 2016-12-24 10:12:20 +02:00
Danny van Kooten 9bd461f8d5 Add `.italic` util class. 2016-12-24 10:11:25 +02:00
Danny van Kooten 6b672c55b4 archive pageviews per page 2016-12-11 16:23:13 +01:00
Danny van Kooten 4468b70601 Abstract calculating totals per category into count.Custom 2016-12-11 12:52:10 +01:00
Danny van Kooten f25c18a7fe introduced table to x1000 UI performance when working with big datasets 2016-12-11 10:58:58 +01:00
Danny van Kooten f304b082a5 add loading indicator to most widgets 2016-12-10 18:19:44 +01:00
Danny van Kooten c79e8407a0 link to referrer site 2016-12-10 16:07:03 +01:00
Danny van Kooten f3e8731fae add /referrers endpoint and show table with referrers in period 2016-12-10 14:31:46 +01:00
Danny van Kooten a68c97e701 normalize data & seperate visitors into their own table 2016-12-10 14:16:05 +01:00
Danny van Kooten 0f77812c77 update roadmap 2016-12-09 10:12:44 +01:00
Danny van Kooten 265e7a2973 fix POST requests in client & add DB migrations for user tables 2016-12-08 18:44:49 +01:00
Danny van Kooten 7d55a7b25a include URL & title in tracking request 2016-12-08 13:09:21 +01:00
Danny van Kooten dabb89e863 add gulp task for minification 2016-12-08 12:43:13 +01:00
Danny van Kooten 0681a4b4e3 add small wrapper around fetch for requesting API 2016-12-08 12:27:19 +01:00
Danny van Kooten bae8615cf5 update screenshot 2016-12-08 09:26:50 +01:00
Danny van Kooten 06e9c5fdfd add limit choice to table overviews 2016-12-07 22:00:55 +01:00
Danny van Kooten c84f6edc30 add toggle checkboxes for bars in visitor & pageview graph 2016-12-07 21:40:06 +01:00
Danny van Kooten e4ea46db80 format all numbers with a comma as thousand separator 2016-12-05 21:55:25 +01:00
Danny van Kooten a95096cee1 separate chart into component & don't redraw component, reuse chart elements 2016-12-05 21:48:33 +01:00
Danny van Kooten f1c037864b replace screenshot with new graph pic 2016-12-05 17:16:14 +01:00
Danny van Kooten 1d2fd050f2 add visitor & pageview data to chart, combined. 2016-12-05 16:34:41 +01:00
Danny van Kooten b40ef9f84c add bandscale to x-axis 2016-12-05 15:31:34 +01:00
Danny van Kooten e314d0971f replace chartjs with d3 2016-12-04 13:23:09 +01:00
Danny van Kooten acd9e99855 compare period totals to previous period and show % diff 2016-11-26 17:40:37 +01:00
Danny van Kooten fded071f7a remove 'period' query parameter in favor of before & after 2016-11-26 17:19:15 +01:00
Danny van Kooten ab770c6c21 add country flags to country overview 2016-11-26 16:17:52 +01:00
Danny van Kooten 512a256ebd add widget component for totals per period 2016-11-26 15:39:29 +01:00
Danny van Kooten 3c77eb14b1 add suport for x-forwarded-for header 2016-11-25 16:39:51 +01:00
Danny van Kooten 78932ede14 get secret & db creds from environment (file) 2016-11-25 16:30:38 +01:00
Danny van Kooten 31130b8fe4 add async tracking snippet with command queue exampel 2016-11-25 16:03:47 +01:00
Danny van Kooten 87e7020ce2 prevent height change when redrawing graph 2016-11-25 14:24:00 +01:00
Danny van Kooten 8d8a95b74e crop screenshot 2016-11-25 13:57:30 +01:00
Danny van Kooten 874d7cd59a replace image with new styling 2016-11-25 13:55:12 +01:00
Danny van Kooten 7c0d78ac2f replace image with new styling 2016-11-25 13:54:18 +01:00
Danny van Kooten 39c19e924b replace image with new styling 2016-11-25 13:51:59 +01:00
Danny van Kooten 47fdb6db35 style tables 2016-11-25 13:49:59 +01:00
Danny van Kooten 11bf89350e general styling improvements 2016-11-25 13:38:20 +01:00
Danny van Kooten b2c64d6de9 add black header bar 2016-11-25 13:16:42 +01:00
Danny van Kooten 6e57b59e20 add screenshot to readme 2016-11-24 16:49:30 +01:00
Danny van Kooten f78dfe7f9e add simple grid system 2016-11-24 16:47:33 +01:00
Danny van Kooten c3c78e2ff1 split app into page components 2016-11-24 16:29:11 +01:00
Danny van Kooten f767c8de9f add screen res component 2016-11-24 14:37:41 +01:00
Danny van Kooten cbd1020bbf add countries table to interface 2016-11-24 14:21:02 +01:00
Danny van Kooten 516660b211 start table component & add languages endpoint 2016-11-24 13:55:59 +01:00
Danny van Kooten fda7f64714 don't redraw canvas when choosing same data point 2016-11-24 13:10:40 +01:00
Danny van Kooten e0a6a16a0f clear canvas when updating chart. use stacked bar chart 2016-11-23 22:26:47 +01:00
Danny van Kooten 5c39e1f1df add period date picker 2016-11-23 21:29:54 +01:00
Danny van Kooten 11ad2d5da4 add pageviews to graph 2016-11-23 20:30:09 +01:00
Danny van Kooten a7af934f23 rewrite mithril to react 2016-11-23 19:40:35 +01:00
Danny van Kooten fbd591547c get auth state from cookie upon render 2016-11-23 16:33:52 +01:00
Danny van Kooten 86cbfa8dd4 add logout component 2016-11-23 16:29:07 +01:00
Danny van Kooten f5a25c7c28 remove JWT & replace React with Mithril 2016-11-23 15:51:19 +01:00
Danny van Kooten 5d6796dfe5 add basic JWT auth structure 2016-11-22 22:33:50 +01:00
Danny van Kooten 7c15fa26bb clean-up chart code 2016-11-22 17:13:37 +01:00
Danny van Kooten 8d26212ddd add visitor graph 2016-11-22 17:03:29 +01:00
Danny van Kooten 5eae716a9c add pageviews component 2016-11-21 17:36:25 +01:00
Danny van Kooten 2380f9a88a add realtime visitor count & split up react components 2016-11-21 17:08:24 +01:00
Danny van Kooten 23af04d15d get basic data view & auto-update to work 2016-11-21 16:01:14 +01:00
Danny van Kooten f96c893b2b add sass file 2016-11-21 13:31:06 +01:00
Danny van Kooten 677cb2ca63 split-up in multiple file & basic app structure 2016-11-21 13:24:50 +01:00