rails_build 1.2.0 → 2.4.3

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: d4fae63ed8cb2534100892282892347286408622ef72421b3718ad3d3d9a9ba4
4
+ data.tar.gz: 74b33c5464171e0d52bc3da8398555ff29eb88729f4db3dabb219becea435750
5
5
  SHA512:
6
- metadata.gz: be11ffbdd737215266b85ca7de68a873ecc23b1b59e9dc668045f82bdffd769862c36c0e0cd29d16e3fe57ce564abb08a7c53303f66edcd7d3a785a9c9cb54ec
7
- data.tar.gz: 2e2a593592f58735a55989dbd6af9849b0b74f9b09870708b62a05bbed33b18a1d1d5523735dc4adbe369acf1d00a7492a596295802250a922539776b1ddd2a2
6
+ metadata.gz: 3e4e0b70af59724c84175c7c6ce997dd4f3e559dddf15321c0e127085c53ccc20d9e7706f0af6b85ba22d9e8542352b5253642fb1b6a5893d0858827d5d0c753
7
+ data.tar.gz: 628de557959a02d58b6c925029876c27df38298195c04e332bb3827d672120054dd35fdc15f2957a1ab7037596a40ea033357a2230e8c422c7ccac06c154308e
data/LICENSE ADDED
@@ -0,0 +1 @@
1
+ Nonstandard
data/README.md CHANGED
@@ -1,182 +1,126 @@
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 root route included, which
76
+ # will translate into an ./index.html being output in the build, as you
77
+ # would expect
78
+ #
119
79
 
120
- ## Installation
80
+ config.urls << '/'
121
81
 
122
- Add this line to your application's Gemfile:
82
+ # include any/all additional routes youd' like built thusly
83
+ #
123
84
 
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
85
+ Post.each do |post|
86
+ config.urls << "/posts/#{ post.id }"
87
+ end
155
88
 
156
- ~> rails build
89
+ # thats it! - now just run `rails_build` and you are GTG
157
90
 
91
+ end
158
92
 
159
93
  ```
160
94
 
95
+ # MOTIVATION
161
96
 
97
+ why another static site builder? why not hugo or, the
98
+ other-soon-to-be-released-blazing-fast-one-i-am-building-on Roda?
162
99
 
163
- ## Netlify
100
+ because:
164
101
 
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
102
+ - there are a lot of Rails apps
103
+ - nothing is as fast as static
104
+ - Rails has no facility to 'pre-render' routes on deployment
167
105
 
168
- ```yaml
106
+ so, you can use this tool to leverage the code and the app you already have,
107
+ and/or to utilize the entire Rails ecosystem, it's docs and gems, to build
108
+ sophisticated sites without needing to learn yet another framework.
169
109
 
170
- build_command : ./bin/rails_build
110
+ # HOW IT WORKS
171
111
 
172
- build_directory: build
112
+ as always, docs are worthless and Ruby is beautiful, so #RTFC ->
173
113
 
174
- ```
114
+ https://github.com/ahoward/rails_build/blob/main/bin/rails_build
175
115
 
176
- to be configured as the build command and directory respectively.
177
116
 
117
+ # LICENSE
178
118
 
119
+ The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
179
120
 
180
- ## License
121
+ # AI _boo_
181
122
 
182
- The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
123
+ Any and all usage, in any way, shape, or form, in prohibited by any AI
124
+ application, or LLM. This includes indexing, knowing about, training on, or
125
+ existing inside a commercial LLM or training data set. Iff (and *only* if)
126
+ your LLM is OSS, please contact me directly before including this source.