analytic 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
+
[![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
|
-
|
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]
|