analytic 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +41 -13
  3. data/Rakefile +12 -2
  4. data/app/assets/builds/analytic/application.css +810 -0
  5. data/app/assets/builds/analytic/application.js +54498 -0
  6. data/app/assets/builds/analytic/application.js.map +7 -0
  7. data/app/assets/config/analytic_manifest.js +0 -0
  8. data/app/controllers/analytic/application_controller.rb +6 -0
  9. data/app/controllers/analytic/dashboard_controller.rb +13 -0
  10. data/app/controllers/concerns/analytic/trackable.rb +38 -0
  11. data/app/helpers/analytic/application_helper.rb +6 -0
  12. data/app/jobs/analytic/application_job.rb +6 -0
  13. data/app/jobs/analytic/track_job.rb +23 -0
  14. data/app/mailers/analytic/application_mailer.rb +7 -0
  15. data/app/models/analytic/application_record.rb +7 -0
  16. data/app/models/analytic/dashboard.rb +65 -0
  17. data/app/models/analytic/view.rb +23 -0
  18. data/app/packs/analytic/application/index.ts +1 -0
  19. data/app/packs/analytic/application/initializers/fontawesome.ts +23 -0
  20. data/app/packs/analytic/application/initializers/index.ts +1 -0
  21. data/app/packs/analytic/entrypoints/application.tailwind.css +65 -0
  22. data/app/packs/analytic/entrypoints/application.ts +1 -0
  23. data/app/views/analytic/dashboard/show.html.erb +84 -0
  24. data/app/views/layouts/analytic/application.html.erb +42 -0
  25. data/bin/dev +3 -0
  26. data/bin/rails +11 -0
  27. data/config/routes.rb +7 -0
  28. data/db/migrate/20240805210911_create_analytic_views.rb +20 -0
  29. data/lib/analytic/config.rb +12 -0
  30. data/lib/analytic/engine.rb +7 -0
  31. data/lib/analytic/version.rb +3 -1
  32. data/lib/analytic.rb +15 -3
  33. metadata +36 -13
  34. data/lib/analytic/railtie.rb +0 -4
  35. data/lib/tasks/analytic_tasks.rake +0 -4
  36. /data/{MIT-LICENSE → LICENSE} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7f82cc36d3c55179402d2d047fe8cc8a1fd42307a6c9d4b73192f474ad37fd75
4
- data.tar.gz: 66c0e7ee85886d4bc48fa0784dc5d73a7edc48763a8b9c57aa5ae6b86b5b8046
3
+ metadata.gz: fb82e829dff15357a11068a257ee1fb1ff2c4257de41703580a8f320ffee669a
4
+ data.tar.gz: 7e1bb82f6cec5b2fa12089fb7fbd3dfed87690da645eb3746ca22017de640f82
5
5
  SHA512:
6
- metadata.gz: 37f89e7abb0cf9130bd7bac4ad1dc352eccd7f1aa88027185e31150fb04b6486c4636516cf320205c81f58884867e32dbb4273ed476e06013f0bba7ecdb2dbb8
7
- data.tar.gz: c1dc5dec42746d70d519c3da69c2ae7af5e5d364c951ad88506857ab5cc6fe5220ba9be25dffa0e1973571a8eb4bfadd051eb61a28876be3111381e5aadb76e7
6
+ metadata.gz: 717be1d6814479751169f69fbdb39bb2413f023a001f0ea9033dbae146fd84357014ba67f3da150f77ac96d44500f45d5cfda0963e8cba428bd876e637e8e678
7
+ data.tar.gz: 56c3f9f5f29ee9a6564eca830cf9c895290f0eec4d97f179c9d031acb919ad1ff799018ee557c98a75252c28eec9da70ae445ee165e3ba267ec70b4f94761609
data/README.md CHANGED
@@ -1,28 +1,56 @@
1
+ [![CircleCI](https://circleci.com/gh/ksylvest/analytic.svg?style=svg)](https://circleci.com/gh/ksylvest/analytic)
2
+ [![CodeClimate Maintainability](https://api.codeclimate.com/v1/badges/005074b4a948038893a9/maintainability)](https://codeclimate.com/github/ksylvest/analytic/maintainability)
3
+ [![CodeClimate Test Coverage](https://api.codeclimate.com/v1/badges/005074b4a948038893a9/test_coverage)](https://codeclimate.com/github/ksylvest/analytic/test_coverage)
4
+
1
5
  # Analytic
2
- Short description and motivation.
3
6
 
4
- ## Usage
5
- How to use my plugin.
7
+ Analytic provides visitor / session / view tracking without the need for any third-party service.
6
8
 
7
9
  ## Installation
8
- Add this line to your application's Gemfile:
10
+
11
+ ```bash
12
+ $ bundle add analytic
13
+ $ bin/rails analytic:install:migrations
14
+ $ bin/rails db:migrate
15
+ ```
9
16
 
10
17
  ```ruby
11
- gem "analytic"
18
+ # config/routes.rb
19
+ Rails.application.routes.draw do
20
+ mount Analytic::Engine, at: '/analytic'
21
+ end
12
22
  ```
13
23
 
14
- And then execute:
15
- ```bash
16
- $ bundle
24
+ ```ruby
25
+ # config/initializer/analytic.rb
26
+ Analytic.configure do |config|
27
+ config.timezone = Time.find_zone('Canada/Pacific') # default is `Time.zone`
28
+ end
17
29
  ```
18
30
 
19
- Or install it yourself as:
20
- ```bash
21
- $ gem install analytic
31
+ ## Usage
32
+
33
+ Default inline tracking is configured with:
34
+
35
+ ```ruby
36
+ class ApplicationController
37
+ include Analytic::Trackable
38
+
39
+ before_action { analytic_track! }
40
+ end
22
41
  ```
23
42
 
24
- ## Contributing
25
- Contribution directions go here.
43
+ Alternative job tracking is configured with:
44
+
45
+ ```ruby
46
+ class ApplicationController
47
+ include Analytic::Trackable
48
+
49
+ before_action { analytic_enqueue_track_job! }
50
+ ```
51
+
52
+ _note: a queue such as sidekiq, rescue, etc must be running to see tracking_
26
53
 
27
54
  ## License
55
+
28
56
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
data/Rakefile CHANGED
@@ -1,3 +1,13 @@
1
- require "bundler/setup"
1
+ # frozen_string_literal: true
2
2
 
3
- require "bundler/gem_tasks"
3
+ require 'bundler/setup'
4
+
5
+ require 'bundler/gem_tasks'
6
+ require 'rspec/core/rake_task'
7
+ require 'rubocop/rake_task'
8
+
9
+ RSpec::Core::RakeTask.new(:spec)
10
+
11
+ RuboCop::RakeTask.new
12
+
13
+ task default: %i[spec rubocop]