rails_build 1.2.0 → 2.4.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 6e8b28d514b5404bbcadaca8e7d8ade5021265e8
4
- data.tar.gz: a36bf4c19682e86162b5579122ee776fdd9b20bc
2
+ SHA256:
3
+ metadata.gz: 2fdeb8b08b19d89fe8b117fa6113056fa1c7cc7df38b66780f043fc970cde7ab
4
+ data.tar.gz: dc3342b95ad179fd2da82f57c0c41cf296796b0b7ebc92ef5f8011415ccd08ab
5
5
  SHA512:
6
- metadata.gz: be11ffbdd737215266b85ca7de68a873ecc23b1b59e9dc668045f82bdffd769862c36c0e0cd29d16e3fe57ce564abb08a7c53303f66edcd7d3a785a9c9cb54ec
7
- data.tar.gz: 2e2a593592f58735a55989dbd6af9849b0b74f9b09870708b62a05bbed33b18a1d1d5523735dc4adbe369acf1d00a7492a596295802250a922539776b1ddd2a2
6
+ metadata.gz: 8c50a5d183280afadf89c695190d72fcfda5ed7cb4cfabd29c05acf4931749229d814c366e92f654935d3b4a4975f05c97e881717b3ca4713c91d30fa632dae6
7
+ data.tar.gz: ca443255a67532b1aa5a67edae2b5f745825b0a7f0f94bacdb8cd0c5e553764a33568a36647ee823cb2a60542c224860bc7be236ec834d457dc32e16a6f7aedd
data/LICENSE ADDED
@@ -0,0 +1 @@
1
+ Ruby
data/README.md CHANGED
@@ -1,182 +1,125 @@
1
- # RailsBuild
1
+ # TL;DR;
2
2
 
3
- A very small, very simple, very fast, and bullet proof static site generator
4
- built as a Rails 5 engine.
3
+ - install
5
4
 
5
+ ```sh
6
6
 
7
+ echo 'gem "raild_build"' >> Gemfile
7
8
 
8
- ## How It Works
9
+ bundle
9
10
 
10
- RailsBuild bundles all your assets, public directory, and configured urls into
11
- a static site suitable for deployment to [Netlify](https://www.netlify.com/), Amazon S3, or your favorite
12
- static website hosting solution. It does this by:
11
+ ```
13
12
 
14
- - Booting your application in *production* mode
15
- - Precompiling all assets
16
- - Including every static resource in ./public/
17
- - GET'ing every configured url via super fast parallel downloading
13
+ - setup
18
14
 
19
- RailsBuild let's you leverage the entire Rails' ecosystem for your static
20
- sites and requires learning practically no new techniques to make super fast
21
- building static websites.
15
+ ```sh
22
16
 
17
+ rails_build --init
23
18
 
19
+ ```
24
20
 
25
- ## Configuration
21
+ - build
26
22
 
27
- Configuration is quite simple, typically it will be much less than comparable
28
- static site generators. You need to drop a *./config/rails_build.rb* looking
29
- something like this into your app:
23
+ ```sh
30
24
 
31
- ```ruby
32
-
33
- RailsBuild.configure do |rails_build|
34
-
35
- urls = rails_build.urls
36
-
37
- urls << "/"
38
-
39
- urls << "/about/"
40
-
41
- urls << "/contact/"
42
-
43
-
44
- Post.each do |post|
45
- urls << blog_path(post)
46
- end
47
-
48
- end
49
-
50
-
51
- ```
25
+ rails_build
52
26
 
53
- That's it: simply enumerate the urls - anything additional to your assets and
54
- ./public/ directory - that you want to include in your build.
27
+ ```
55
28
 
56
- ## On Trailing Slashes
29
+ - deploy?
57
30
 
58
- Most static hosting solutions support Apache style directory indexing will be
59
- better behaved with urls that look like
31
+ the contents of ./build/ are good to deploy to *any* static web host
32
+ including netlify, vercel, an s3 bucket, or simply your app's own ./public
33
+ directory in order to 'pre-cache' a ton of pages
60
34
 
61
- ```markdown
35
+ ps. if you want to preview your local static ./build i *highly* recommend
62
36
 
63
- http://my.site.com/blog/
37
+ https://github.com/copiousfreetime/launchy
64
38
 
65
- ```
66
-
67
- vs.
68
39
 
69
- ```markdown
40
+ # ABOUT
70
41
 
71
- http://my.site.com/blog
42
+ rails_build is a very small, fast enough, static site generator built on top
43
+ of the rails you already know and love.
72
44
 
73
- ```
45
+ it's been in production usage for close to a decade but i've been too busy
46
+ to relase it until now. also, #wtf is up with javascript land?!
74
47
 
75
- RailsBuild tries to help you do this with a little bit of Rails' config that
76
- is turned on by default but which can be turned off via
48
+ it has a small set of dependencies, namely the `parallel` gem, and requires
49
+ absolutely minimal configuration. it should be pretty darn self
50
+ explanatory:
77
51
 
78
52
  ```ruby
79
53
 
80
- RailsBuild.configure do |rails_build|
81
-
82
- rails_build.trailing_slash false # the default is 'true'
83
-
84
- end
85
-
86
- ```
87
-
88
- The only real impact will be felt if you are using relative urls in your site
89
- like './about' vs. '../about'
90
-
91
-
54
+ # file : ./config/rails_build.rb
92
55
 
93
- ## Optimization and Notes
56
+ <<~________
94
57
 
95
- RailsBuild is fast. Very fast. [DOJO4](http://dojo4.com) has seen optimized [Middleman](https://middlemanapp.com/) builds of > 30 minutes dropped to *60 seconds* by simply making basic use of Rails' built-in caching facilites.
58
+ this file should to enumerate all the urls you'd like to build
96
59
 
97
- You app has to run in production mode to build! Don't forget to setup
98
- secrets, or anything else generally required in production mode.
60
+ the contents of your ./public directory, and any assets, are automaticaly
61
+ included
99
62
 
100
- When trying to squeeze out performance just remember that RailsBuild runs in
101
- production mode and, therefore, making a build go fast follows the *exact same
102
- rules* as making anything other Rails' application fast. The first place to
103
- reach is typically fragment caching of partials used in your app.
63
+ therefore you need only declare which dynamic urls, that is to say, 'routes'
104
64
 
65
+ you would like included in your build
105
66
 
106
- Finally, don't forget about *./config/initializers/assets.rb* - RailsBuild
107
- doesn't do anything special to the asset pipeline and only those assets
108
- normally built when
67
+ it is not loaded except during build time, and will not affect your normal
68
+ rails app in any way
109
69
 
110
- ```bash
111
-
112
- ~> rake assets:precompile
113
-
114
- ```
70
+ ________
115
71
 
116
- is run will be included in the build.
117
72
 
73
+ RailsBuild.configure do |config|
118
74
 
75
+ # most of the time you are going to want your route included, which will
76
+ # translate into an ./index.html being output in the build
77
+ #
119
78
 
120
- ## Installation
79
+ config.urls << '/'
121
80
 
122
- Add this line to your application's Gemfile:
81
+ # include any/all additional routes youd' like built thusly
82
+ #
123
83
 
124
- ```ruby
125
-
126
- gem 'rails_build'
127
-
128
-
129
- ```
130
-
131
- And then execute:
132
-
133
- ```bash
134
-
135
- $ bundle
136
-
137
- $ bundle binstubs rails_build
138
-
139
-
140
- ```
141
-
142
-
143
-
144
- ## Building Your Site
145
-
146
-
147
- After installation and configuration simply run
148
-
149
- ```bash
150
-
151
- ~> ./bin/rails_build
152
-
153
-
154
- # or, if you prefer, simply
84
+ Post.each do |post|
85
+ config.urls << "/posts/#{ post.id }"
86
+ end
155
87
 
156
- ~> rails build
88
+ # thats it! - now just run `rails_build` and you are GTG
157
89
 
90
+ end
158
91
 
159
92
  ```
160
93
 
94
+ # MOTIVATION
161
95
 
96
+ why another static site builder? why not hugo or, the
97
+ other-soon-to-be-released-blazing-fast-one-i-am-building-on Roda?
162
98
 
163
- ## Netlify
99
+ because:
164
100
 
165
- We love [Netlify](https://www.netlify.com/) at [DOJO4](http://dojo4.com). RailsBuild works with netlify
166
- out of the box and simply requires
101
+ - there are a lot of Rails apps
102
+ - nothing is as fast as static
103
+ - Rails has no facility to 'pre-render' routes on deployment
167
104
 
168
- ```yaml
105
+ so, you can use this tool to leverage the code and the app you already have,
106
+ and/or to utilize the entire Rails ecosystem, it's docs and gems, to build
107
+ sophisticated sites without needing to learn yet another framework.
169
108
 
170
- build_command : ./bin/rails_build
109
+ # HOW IT WORKS
171
110
 
172
- build_directory: build
111
+ as always, docs are worthless and Ruby is beautiful, so #RTFC ->
173
112
 
174
- ```
113
+ https://github.com/ahoward/rails_build/blob/main/bin/rails_build
175
114
 
176
- to be configured as the build command and directory respectively.
177
115
 
116
+ # LICENSE
178
117
 
118
+ The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
179
119
 
180
- ## License
120
+ # AI _boo_
181
121
 
182
- The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
122
+ Any and all usage, in any way, shape, or form, in prohibited by any AI
123
+ application, or LLM. This includes indexing, knowing about, training on, or
124
+ existing inside a commercial LLM or training data set. Iff (and *only* if)
125
+ your LLM is OSS, please contact me directly before including this source.