analytic 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +41 -13
- data/Rakefile +12 -2
- data/app/assets/builds/analytic/application.css +810 -0
- data/app/assets/builds/analytic/application.js +54498 -0
- data/app/assets/builds/analytic/application.js.map +7 -0
- data/app/assets/config/analytic_manifest.js +0 -0
- data/app/controllers/analytic/application_controller.rb +6 -0
- data/app/controllers/analytic/dashboard_controller.rb +13 -0
- data/app/controllers/concerns/analytic/trackable.rb +38 -0
- data/app/helpers/analytic/application_helper.rb +6 -0
- data/app/jobs/analytic/application_job.rb +6 -0
- data/app/jobs/analytic/track_job.rb +23 -0
- data/app/mailers/analytic/application_mailer.rb +7 -0
- data/app/models/analytic/application_record.rb +7 -0
- data/app/models/analytic/dashboard.rb +65 -0
- data/app/models/analytic/view.rb +23 -0
- data/app/packs/analytic/application/index.ts +1 -0
- data/app/packs/analytic/application/initializers/fontawesome.ts +23 -0
- data/app/packs/analytic/application/initializers/index.ts +1 -0
- data/app/packs/analytic/entrypoints/application.tailwind.css +65 -0
- data/app/packs/analytic/entrypoints/application.ts +1 -0
- data/app/views/analytic/dashboard/show.html.erb +84 -0
- data/app/views/layouts/analytic/application.html.erb +42 -0
- data/bin/dev +3 -0
- data/bin/rails +11 -0
- data/config/routes.rb +7 -0
- data/db/migrate/20240805210911_create_analytic_views.rb +20 -0
- data/lib/analytic/config.rb +12 -0
- data/lib/analytic/engine.rb +7 -0
- data/lib/analytic/version.rb +3 -1
- data/lib/analytic.rb +15 -3
- metadata +36 -13
- data/lib/analytic/railtie.rb +0 -4
- data/lib/tasks/analytic_tasks.rake +0 -4
- /data/{MIT-LICENSE → LICENSE} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fb82e829dff15357a11068a257ee1fb1ff2c4257de41703580a8f320ffee669a
|
4
|
+
data.tar.gz: 7e1bb82f6cec5b2fa12089fb7fbd3dfed87690da645eb3746ca22017de640f82
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 717be1d6814479751169f69fbdb39bb2413f023a001f0ea9033dbae146fd84357014ba67f3da150f77ac96d44500f45d5cfda0963e8cba428bd876e637e8e678
|
7
|
+
data.tar.gz: 56c3f9f5f29ee9a6564eca830cf9c895290f0eec4d97f179c9d031acb919ad1ff799018ee557c98a75252c28eec9da70ae445ee165e3ba267ec70b4f94761609
|
data/README.md
CHANGED
@@ -1,28 +1,56 @@
|
|
1
|
+
[](https://circleci.com/gh/ksylvest/analytic)
|
2
|
+
[](https://codeclimate.com/github/ksylvest/analytic/maintainability)
|
3
|
+
[](https://codeclimate.com/github/ksylvest/analytic/test_coverage)
|
4
|
+
|
1
5
|
# Analytic
|
2
|
-
Short description and motivation.
|
3
6
|
|
4
|
-
|
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
|
-
|
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
|
-
|
18
|
+
# config/routes.rb
|
19
|
+
Rails.application.routes.draw do
|
20
|
+
mount Analytic::Engine, at: '/analytic'
|
21
|
+
end
|
12
22
|
```
|
13
23
|
|
14
|
-
|
15
|
-
|
16
|
-
|
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
|
-
|
20
|
-
|
21
|
-
|
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
|
-
|
25
|
-
|
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
|
-
|
1
|
+
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require
|
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]
|