js-packer-rails 0.0.1 → 0.1.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 +5 -5
- data/README.md +33 -17
- data/js-packer-rails.gemspec +4 -4
- data/lib/js/packer/rails/version.rb +1 -1
- metadata +9 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 8595018f505d7070e8e1ddd771029b7aead0cf13c84720891a18c791c9aec204
|
4
|
+
data.tar.gz: bfabe95949ce07c5eba7039aad031351bb0c20ab255234ec795a29ab5d407191
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0b43b865c8f85c203382c1ee750d9cdd5776a7a7a2f779f503270bb67d07f41f44a1e876517e786bed0f6c8c60b4e0e2aea41472bdd2106084f1eac7737e5e6d
|
7
|
+
data.tar.gz: 0cfa22626ba9c9801ee1cc6b390ec0333d89445c1ce0364cbf42e94a927adc85030236b2d2c192d47837a6ae386d2a66c0afb7656a354e85bb89d7174cecf009
|
data/README.md
CHANGED
@@ -2,20 +2,30 @@
|
|
2
2
|
The Packer allows you to easily include JavaScript bundle into your Rails project.
|
3
3
|
JavaScript world offers a lot of great tools for bundling, uglifying, minifying... So, use it in your Rails app!
|
4
4
|
It could be Webpack or Grunt or Gulp or Any New Awesome JS tool :)
|
5
|
-
I believe the choice of the tools should depend on issues you want to solve, so use JS tool to
|
5
|
+
I believe the choice of the tools should depend on the issues you want to solve, so use JS tool to bundle your source JS code.
|
6
6
|
|
7
7
|
The Packer:
|
8
|
-
*
|
9
|
-
*
|
10
|
-
* is only for Rails
|
11
|
-
*
|
12
|
-
*
|
8
|
+
* doesn't care how do you bundle your JavaScript
|
9
|
+
* doesn't use Rails assets pipeline
|
10
|
+
* is dedicated only for Rails
|
11
|
+
* requires JavaScript manifest file
|
12
|
+
* adds 3 helper methods to your views:
|
13
13
|
```
|
14
14
|
js_bundle_tag(*sources)
|
15
15
|
js_bundle_hash(source)
|
16
16
|
js_bundle_name(source)
|
17
17
|
```
|
18
18
|
|
19
|
+
## Example
|
20
|
+
|
21
|
+
How to use `js-packer-rails` gem in Rails app with:
|
22
|
+
|
23
|
+
* Webpack
|
24
|
+
* Babel
|
25
|
+
* React
|
26
|
+
|
27
|
+
[https://github.com/jcieslar/js_packer_rails_example](https://github.com/jcieslar/js_packer_rails_example)
|
28
|
+
|
19
29
|
## Installation
|
20
30
|
|
21
31
|
Add this line to your application's Gemfile:
|
@@ -36,7 +46,7 @@ Or install it yourself as:
|
|
36
46
|
|
37
47
|
### JavaScript manifest file
|
38
48
|
|
39
|
-
|
49
|
+
Generate manifest:
|
40
50
|
|
41
51
|
```json
|
42
52
|
/* admin-bundle.json */
|
@@ -45,8 +55,8 @@ Example format of manifest:
|
|
45
55
|
}
|
46
56
|
```
|
47
57
|
|
48
|
-
So if your bundle name is: `bundle-example-name` then you have to generate manifest
|
49
|
-
`bundle-example-name.json`
|
58
|
+
So if your JS bundle name is: `bundle-example-name` then you have to generate the following manifest:
|
59
|
+
`bundle-example-name.json`
|
50
60
|
|
51
61
|
```json
|
52
62
|
{
|
@@ -58,13 +68,15 @@ So if your bundle name is: `bundle-example-name` then you have to generate manif
|
|
58
68
|
|
59
69
|
#### js_bundle_tag
|
60
70
|
|
61
|
-
|
71
|
+
Use `js_bundle_tag` helper in your view/layout by passing your JS bundle name as an argument.
|
72
|
+
It returns the script tag with the proper path to your JS bundle:
|
62
73
|
|
63
74
|
```
|
64
75
|
<%= js_bundle_tag 'admin-bundle' %>
|
76
|
+
# => <script src='bundle/javascripts/admin-bundle-f65a6b9fb09ba93b7ea6.js'></script>
|
65
77
|
```
|
66
78
|
|
67
|
-
If you would like to include more
|
79
|
+
If you would like to include more than one JS bundle, just add another argument:
|
68
80
|
|
69
81
|
```
|
70
82
|
<%= js_bundle_tag 'admin-bundle', 'user-bundle' %>
|
@@ -72,31 +84,35 @@ If you would like to include more then one bundle for view or layout just add mo
|
|
72
84
|
|
73
85
|
#### js_bundle_hash
|
74
86
|
|
75
|
-
|
87
|
+
Use `js_bundle_hash` helper to get your JS bundle code version:
|
76
88
|
|
77
89
|
```
|
78
90
|
<%= js_bundle_hash 'admin-bundle' %>
|
91
|
+
# => f65a6b9fb09ba93b7ea6
|
79
92
|
```
|
80
93
|
|
81
94
|
### js_bundle_name
|
82
95
|
|
83
|
-
|
96
|
+
Use `js_bundle_name` helper to get your JS bundle full name with a hash:
|
84
97
|
|
85
98
|
```
|
86
99
|
<%= js_bundle_name 'admin-bundle' %>
|
100
|
+
# => admin-bundle-f65a6b9fb09ba93b7ea6.js
|
87
101
|
```
|
88
102
|
|
89
103
|
### Bundle JavaScript
|
90
104
|
|
91
|
-
|
105
|
+
Put your JSON manifest and JS bundle in `public/bundles/javascripts/` directory.
|
92
106
|
|
93
107
|
### Configuration
|
94
108
|
|
95
|
-
You can change default directory of your manifest and bundle via YAML file: `config/packer.yml`
|
109
|
+
You can change the default directory of your manifest and bundle via YAML file: `config/packer.yml`
|
96
110
|
|
97
|
-
You can define paths by two params: `manifest_path` and `bundle_path`.
|
111
|
+
You can define paths by two params: `manifest_path` and `bundle_path`.
|
112
|
+
The manifest and bundle should be in the public directory.
|
113
|
+
`manifest_path` should contain the path starting from `public/` while the `bundle_path` should skip `public/`
|
98
114
|
|
99
|
-
|
115
|
+
For example:
|
100
116
|
|
101
117
|
```yml
|
102
118
|
default: &default
|
data/js-packer-rails.gemspec
CHANGED
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["Jakub Cieslar"]
|
10
10
|
spec.email = ["cieslar.jakub@gmail.com"]
|
11
11
|
|
12
|
-
spec.summary = %q{Pack your JS bundle into Rails app! Use whatever tool you want for your JS assets}
|
13
|
-
spec.description = %q{Pack your JS bundle into Rails app! Use whatever tool you want for your JS assets}
|
12
|
+
spec.summary = %q{Pack your JS bundle into Rails app! Use whatever tool you want for your JS assets. You do not need webpacker!}
|
13
|
+
spec.description = %q{Pack your JS bundle into Rails app! Use whatever tool you want for your JS assets. You do not need webpacker!}
|
14
14
|
spec.homepage = "https://github.com/jcieslar/js-packer-rails"
|
15
15
|
spec.license = "MIT"
|
16
16
|
|
@@ -21,9 +21,9 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
22
|
spec.require_paths = ["lib"]
|
23
23
|
|
24
|
-
spec.add_dependency "railties", ">= 4.0.
|
24
|
+
spec.add_dependency "railties", ">= 4.0.13"
|
25
25
|
|
26
26
|
spec.add_development_dependency "bundler", "~> 1.16"
|
27
27
|
spec.add_development_dependency "rake", "~> 10.0"
|
28
|
-
spec.add_development_dependency "rails", ">= 4.0.
|
28
|
+
spec.add_development_dependency "rails", ">= 4.0.13"
|
29
29
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: js-packer-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jakub Cieslar
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-10-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: railties
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 4.0.
|
19
|
+
version: 4.0.13
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 4.0.
|
26
|
+
version: 4.0.13
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,16 +58,16 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 4.0.
|
61
|
+
version: 4.0.13
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 4.0.
|
68
|
+
version: 4.0.13
|
69
69
|
description: Pack your JS bundle into Rails app! Use whatever tool you want for your
|
70
|
-
JS assets
|
70
|
+
JS assets. You do not need webpacker!
|
71
71
|
email:
|
72
72
|
- cieslar.jakub@gmail.com
|
73
73
|
executables: []
|
@@ -104,9 +104,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
104
104
|
version: '0'
|
105
105
|
requirements: []
|
106
106
|
rubyforge_project:
|
107
|
-
rubygems_version: 2.6
|
107
|
+
rubygems_version: 2.7.6
|
108
108
|
signing_key:
|
109
109
|
specification_version: 4
|
110
110
|
summary: Pack your JS bundle into Rails app! Use whatever tool you want for your JS
|
111
|
-
assets
|
111
|
+
assets. You do not need webpacker!
|
112
112
|
test_files: []
|