liquid_markdown 0.2.1 → 0.2.2
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 +2 -0
- data/lib/liquid_markdown/converter/plain_text.rb +1 -1
- data/lib/liquid_markdown/resolver.rb +0 -2
- data/lib/liquid_markdown/version.rb +1 -1
- data/liquid_markdown.gemspec +1 -1
- data/liquid_markdown.iml +33 -4
- data/presentation.md +78 -0
- data/presentation.pdf +0 -0
- metadata +8 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 17eb33f1e4bce5d17bcb38554b269225327e3f06
|
|
4
|
+
data.tar.gz: 432d01acd958edd79df49b3c77d2a6aaef80fff2
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 17ee388dcc1d06bf7cbaad6f043585424ed89fe34e52dc6dc4035e00babcf61cc3b3ce49ea33a818d0261b6f5906cb510212a8b2327549d22484d3715b4b5007
|
|
7
|
+
data.tar.gz: 99e965482bcfe948c3bce208d54a86646c577e417e91faea7fe50cb71d7be000358b3ea842189513f0483fc24bbcbd72e43f6b55daea607ded2d4b53972ea145
|
data/README.md
CHANGED
data/liquid_markdown.gemspec
CHANGED
|
@@ -9,7 +9,7 @@ Gem::Specification.new do |spec|
|
|
|
9
9
|
spec.authors = ['Gary McGhee']
|
|
10
10
|
spec.email = ['gary@buzzware.com.au']
|
|
11
11
|
|
|
12
|
-
spec.summary = %q{Combines Liquid and Markdown templating for
|
|
12
|
+
spec.summary = %q{Combines Liquid and Markdown templating for safe customer-editable pages and emails. Also supports templates from the database}
|
|
13
13
|
spec.description = spec.summary
|
|
14
14
|
spec.homepage = 'https://github.com/buzzware/liquid_markdown'
|
|
15
15
|
spec.license = 'MIT'
|
data/liquid_markdown.iml
CHANGED
|
@@ -18,22 +18,47 @@
|
|
|
18
18
|
</content>
|
|
19
19
|
<orderEntry type="jdk" jdkName="RVM: ruby-2.2.5" jdkType="RUBY_SDK" />
|
|
20
20
|
<orderEntry type="sourceFolder" forTests="false" />
|
|
21
|
-
<orderEntry type="library" scope="PROVIDED" name="
|
|
22
|
-
<orderEntry type="library" scope="PROVIDED" name="
|
|
21
|
+
<orderEntry type="library" scope="PROVIDED" name="actioncable (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
22
|
+
<orderEntry type="library" scope="PROVIDED" name="actionmailer (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
23
|
+
<orderEntry type="library" scope="PROVIDED" name="actionpack (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
24
|
+
<orderEntry type="library" scope="PROVIDED" name="actionview (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
25
|
+
<orderEntry type="library" scope="PROVIDED" name="activejob (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
26
|
+
<orderEntry type="library" scope="PROVIDED" name="activemodel (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
27
|
+
<orderEntry type="library" scope="PROVIDED" name="activerecord (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
28
|
+
<orderEntry type="library" scope="PROVIDED" name="activesupport (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
29
|
+
<orderEntry type="library" scope="PROVIDED" name="arel (v8.0.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
30
|
+
<orderEntry type="library" scope="PROVIDED" name="awesome_print (v1.7.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
31
|
+
<orderEntry type="library" scope="PROVIDED" name="builder (v3.2.3, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
23
32
|
<orderEntry type="library" scope="PROVIDED" name="bundler (v1.14.6, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
24
33
|
<orderEntry type="library" scope="PROVIDED" name="byebug (v9.0.6, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
25
34
|
<orderEntry type="library" scope="PROVIDED" name="coderay (v1.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
35
|
+
<orderEntry type="library" scope="PROVIDED" name="concurrent-ruby (v1.0.5, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
26
36
|
<orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.2.5, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
27
|
-
<orderEntry type="library" scope="PROVIDED" name="
|
|
37
|
+
<orderEntry type="library" scope="PROVIDED" name="erubi (v1.6.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
38
|
+
<orderEntry type="library" scope="PROVIDED" name="globalid (v0.4.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
39
|
+
<orderEntry type="library" scope="PROVIDED" name="i18n (v0.8.4, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
40
|
+
<orderEntry type="library" scope="PROVIDED" name="kramdown (v1.13.2, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
41
|
+
<orderEntry type="library" scope="PROVIDED" name="liquid (v4.0.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
28
42
|
<orderEntry type="library" scope="PROVIDED" name="loofah (v2.0.3, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
43
|
+
<orderEntry type="library" scope="PROVIDED" name="mail (v2.6.6, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
29
44
|
<orderEntry type="library" scope="PROVIDED" name="method_source (v0.8.2, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
30
45
|
<orderEntry type="library" scope="PROVIDED" name="mime-types (v3.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
31
46
|
<orderEntry type="library" scope="PROVIDED" name="mime-types-data (v3.2016.0521, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
32
|
-
<orderEntry type="library" scope="PROVIDED" name="mini_portile2 (v2.
|
|
47
|
+
<orderEntry type="library" scope="PROVIDED" name="mini_portile2 (v2.2.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
48
|
+
<orderEntry type="library" scope="PROVIDED" name="minitest (v5.10.2, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
49
|
+
<orderEntry type="library" scope="PROVIDED" name="nio4r (v2.1.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
50
|
+
<orderEntry type="library" scope="PROVIDED" name="nokogiri (v1.8.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
33
51
|
<orderEntry type="library" scope="PROVIDED" name="panoramic (v0.0.6, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
34
52
|
<orderEntry type="library" scope="PROVIDED" name="pry (v0.10.4, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
53
|
+
<orderEntry type="library" scope="PROVIDED" name="pry-byebug (v3.4.2, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
54
|
+
<orderEntry type="library" scope="PROVIDED" name="pry-meta (v0.0.10, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
55
|
+
<orderEntry type="library" scope="PROVIDED" name="pry-remote (v0.1.8, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
56
|
+
<orderEntry type="library" scope="PROVIDED" name="rack (v2.0.3, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
35
57
|
<orderEntry type="library" scope="PROVIDED" name="rack-test (v0.6.3, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
58
|
+
<orderEntry type="library" scope="PROVIDED" name="rails (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
59
|
+
<orderEntry type="library" scope="PROVIDED" name="rails-dom-testing (v2.0.3, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
36
60
|
<orderEntry type="library" scope="PROVIDED" name="rails-html-sanitizer (v1.0.3, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
61
|
+
<orderEntry type="library" scope="PROVIDED" name="railties (v5.1.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
37
62
|
<orderEntry type="library" scope="PROVIDED" name="rake (v10.4.2, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
38
63
|
<orderEntry type="library" scope="PROVIDED" name="rspec (v3.5.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
39
64
|
<orderEntry type="library" scope="PROVIDED" name="rspec-core (v3.5.2, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
@@ -41,8 +66,12 @@
|
|
|
41
66
|
<orderEntry type="library" scope="PROVIDED" name="rspec-mocks (v3.5.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
42
67
|
<orderEntry type="library" scope="PROVIDED" name="rspec-support (v3.5.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
43
68
|
<orderEntry type="library" scope="PROVIDED" name="slop (v3.6.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
69
|
+
<orderEntry type="library" scope="PROVIDED" name="sprockets (v3.7.1, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
44
70
|
<orderEntry type="library" scope="PROVIDED" name="sprockets-rails (v3.2.0, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
45
71
|
<orderEntry type="library" scope="PROVIDED" name="thor (v0.19.4, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
72
|
+
<orderEntry type="library" scope="PROVIDED" name="thread_safe (v0.3.6, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
73
|
+
<orderEntry type="library" scope="PROVIDED" name="tzinfo (v1.2.3, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
74
|
+
<orderEntry type="library" scope="PROVIDED" name="websocket-driver (v0.6.5, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
46
75
|
<orderEntry type="library" scope="PROVIDED" name="websocket-extensions (v0.1.2, RVM: ruby-2.2.5) [gem]" level="application" />
|
|
47
76
|
</component>
|
|
48
77
|
</module>
|
data/presentation.md
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
theme: Next, 0
|
|
2
|
+
build-lists: true
|
|
3
|
+
|
|
4
|
+
# [fit] liquid_markdown gem
|
|
5
|
+
## by Buzzware
|
|
6
|
+
<br>
|
|
7
|
+
##simple, logical, customer-editable templates for pages and emails
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
# liquid_markdown solves all these problems at once :
|
|
11
|
+
|
|
12
|
+
1) HTML gives customers too much control, they make a mess and can create security risks eg. script tags
|
|
13
|
+
2) Customer editable templates need {{merge fields}} and perhaps some basic logic eg. if/then & loops but we can't let them insert arbitrary code (so no erb)
|
|
14
|
+
3) Editable templates means templates in the database, but sometimes you also want them in the file system too
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
# liquid_markdown solves all these problems at once (cont.) :
|
|
18
|
+
4) We want to do all this for pages and emails (rendered the same in Rails by ActionView)
|
|
19
|
+
5) We want to generate the text and html parts of an email with a single template
|
|
20
|
+
6) We want a html layout for inserting css, javascript, header tags etc for a non-html template despite Rails restriction on this
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
# Dependencies
|
|
24
|
+
|
|
25
|
+
1. liquid gem for {{templating}}
|
|
26
|
+
|
|
27
|
+
2. kramdown gem for \*\*markdown\*\*
|
|
28
|
+
|
|
29
|
+
3. panoramic gem for database templates
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
# liquid gem solves the customer facing template problem
|
|
33
|
+
|
|
34
|
+
1. Developed by Shopify.com, one of the oldest and most successful Rails sites
|
|
35
|
+
2. We can trust them for keeping customers from executing arbitray code on the server
|
|
36
|
+
3. merge fields, loops, conditionals, filters eg. strip_html_tags
|
|
37
|
+
4. Works with any text
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
# kramdown gem provides Markdown rendering, and some important extras
|
|
41
|
+
1. HTML class support for styling
|
|
42
|
+
2. Tables
|
|
43
|
+
3. PlainText converter (markdown can look a bit funky)
|
|
44
|
+
4. "probably the fastest pure-Ruby Markdown converter available"
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
# panoramic gem enables templates stored in the database
|
|
48
|
+
1. Implemented using Rails ActionView::Resolver
|
|
49
|
+
2. Can still use file-based templates eg. for development
|
|
50
|
+
3. Supports both database-first and file-first when loading
|
|
51
|
+
4. An optional integration, not a hard dependency
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
# Markdown is awesome for emails!
|
|
55
|
+
1. text and html parts of an email from a single template
|
|
56
|
+
2. raw markdown is almost good enough for the text part (we use Kramdown's PlainText converter to clean it up)
|
|
57
|
+
3. HTML part is rendered from Markdown
|
|
58
|
+
4. Unlike other markdown email gems, we support HTML layouts
|
|
59
|
+
5. Works with Zurb Foundation for Emails (formerly Ink)
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
# Crafting Rails 4 Applications
|
|
63
|
+
|
|
64
|
+

|
|
65
|
+
|
|
66
|
+
... for Detail on Rails ActionView::Resolver
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
### Thankyou to the gem authors
|
|
70
|
+
|
|
71
|
+
|
|
72
|
+
### Available from :
|
|
73
|
+
* https://github.com/buzzware/liquid_markdown
|
|
74
|
+
* https://rubygems.org/gems/liquid_markdown
|
|
75
|
+
|
|
76
|
+
### Happy to give access and credit for any contributions in documentation, features, fixes, examples
|
|
77
|
+
|
|
78
|
+
This presentation was written in markdown and is in the github repo above. It was rendered and played by Deskset for Mac.
|
data/presentation.pdf
ADDED
|
Binary file
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: liquid_markdown
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Gary McGhee
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2017-
|
|
11
|
+
date: 2017-06-19 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: kramdown
|
|
@@ -148,8 +148,8 @@ dependencies:
|
|
|
148
148
|
- - "~>"
|
|
149
149
|
- !ruby/object:Gem::Version
|
|
150
150
|
version: 0.0.10
|
|
151
|
-
description: Combines Liquid and Markdown templating for
|
|
152
|
-
|
|
151
|
+
description: Combines Liquid and Markdown templating for safe customer-editable pages
|
|
152
|
+
and emails. Also supports templates from the database
|
|
153
153
|
email:
|
|
154
154
|
- gary@buzzware.com.au
|
|
155
155
|
executables: []
|
|
@@ -176,6 +176,8 @@ files:
|
|
|
176
176
|
- lib/liquid_markdown/version.rb
|
|
177
177
|
- liquid_markdown.gemspec
|
|
178
178
|
- liquid_markdown.iml
|
|
179
|
+
- presentation.md
|
|
180
|
+
- presentation.pdf
|
|
179
181
|
homepage: https://github.com/buzzware/liquid_markdown
|
|
180
182
|
licenses:
|
|
181
183
|
- MIT
|
|
@@ -199,6 +201,6 @@ rubyforge_project:
|
|
|
199
201
|
rubygems_version: 2.4.8
|
|
200
202
|
signing_key:
|
|
201
203
|
specification_version: 4
|
|
202
|
-
summary: Combines Liquid and Markdown templating for
|
|
203
|
-
|
|
204
|
+
summary: Combines Liquid and Markdown templating for safe customer-editable pages
|
|
205
|
+
and emails. Also supports templates from the database
|
|
204
206
|
test_files: []
|