ppl 4.0.2 → 4.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (156) hide show
  1. checksums.yaml +4 -4
  2. data/.editorconfig +12 -0
  3. data/.eleventy.js +86 -0
  4. data/.eleventyignore +1 -0
  5. data/.github/workflows/build.yml +30 -2
  6. data/.gitignore +3 -1
  7. data/Rakefile +1 -1
  8. data/features/step_definitions/ppl_steps.rb +24 -24
  9. data/gh-pages/Gemfile +2 -0
  10. data/gh-pages/_config.yml +5 -0
  11. data/gh-pages/_includes/changelog.html +23 -0
  12. data/gh-pages/_includes/development-sidebar.html +25 -0
  13. data/gh-pages/_includes/footer.html +22 -0
  14. data/gh-pages/_includes/header.html +43 -0
  15. data/gh-pages/_includes/news.html +36 -0
  16. data/gh-pages/_includes/tip.html +54 -0
  17. data/gh-pages/_layouts/changelog.html +1 -0
  18. data/gh-pages/_layouts/command.html +104 -0
  19. data/gh-pages/_layouts/configuration.html +71 -0
  20. data/gh-pages/_layouts/development.html +20 -0
  21. data/gh-pages/_layouts/frontpage.html +6 -0
  22. data/gh-pages/_layouts/integration.html +44 -0
  23. data/gh-pages/_layouts/news.html +2 -0
  24. data/gh-pages/_layouts/page.html +6 -0
  25. data/gh-pages/_layouts/tip.html +2 -0
  26. data/gh-pages/_posts/2012-01-15-first-post.md +16 -0
  27. data/gh-pages/_posts/2012-12-20-1.0.0.md +19 -0
  28. data/gh-pages/_posts/2012-12-20-1.1.0.md +28 -0
  29. data/gh-pages/_posts/2012-12-20-1.2.0.md +18 -0
  30. data/gh-pages/_posts/2012-12-21-1.3.0.md +20 -0
  31. data/gh-pages/_posts/2012-12-21-thank-you-for-your-all-your-feedback.md +26 -0
  32. data/gh-pages/_posts/2012-12-22-1.4.1.md +21 -0
  33. data/gh-pages/_posts/2012-12-22-1.5.0.md +17 -0
  34. data/gh-pages/_posts/2012-12-23-1.5.1.md +13 -0
  35. data/gh-pages/_posts/2012-12-23-1.5.2.md +15 -0
  36. data/gh-pages/_posts/2012-12-26-1.5.3.md +19 -0
  37. data/gh-pages/_posts/2012-12-27-1.6.0.md +18 -0
  38. data/gh-pages/_posts/2012-12-29-1.7.0.md +18 -0
  39. data/gh-pages/_posts/2013-01-05-1.8.0.md +18 -0
  40. data/gh-pages/_posts/2013-01-06-1.9.0.md +20 -0
  41. data/gh-pages/_posts/2013-01-10-1.10.0.md +18 -0
  42. data/gh-pages/_posts/2013-01-20-1.11.0.md +14 -0
  43. data/gh-pages/_posts/2013-02-16-1.12.0.md +14 -0
  44. data/gh-pages/_posts/2013-02-17-1.13.0.md +29 -0
  45. data/gh-pages/_posts/2013-02-17-1.14.0.md +15 -0
  46. data/gh-pages/_posts/2013-02-17-1.14.1.md +18 -0
  47. data/gh-pages/_posts/2013-02-17-two-months-in.md +27 -0
  48. data/gh-pages/_posts/2013-03-16-1.15.0.md +28 -0
  49. data/gh-pages/_posts/2013-03-16-coloured-output-released.md +27 -0
  50. data/gh-pages/_posts/2013-04-10-ruby-2.0-compatibility.md +28 -0
  51. data/gh-pages/_posts/2013-04-11-1.15.1.md +13 -0
  52. data/gh-pages/_posts/2013-04-12-1.16.0.md +22 -0
  53. data/gh-pages/_posts/2013-04-14-1.17.0.md +15 -0
  54. data/gh-pages/_posts/2013-04-14-1.17.1.md +20 -0
  55. data/gh-pages/_posts/2013-04-14-1.17.2.md +13 -0
  56. data/gh-pages/_posts/2013-04-15-sync-alias.md +31 -0
  57. data/gh-pages/_posts/2013-04-15-utf8-fixed-and-more.md +37 -0
  58. data/gh-pages/_posts/2013-04-16-1.18.0.md +15 -0
  59. data/gh-pages/_posts/2013-04-16-set-up-color-output.md +47 -0
  60. data/gh-pages/_posts/2013-04-19-1.19.0.md +13 -0
  61. data/gh-pages/_posts/2013-04-19-1.20.0.md +15 -0
  62. data/gh-pages/_posts/2013-04-20-1.21.0.md +16 -0
  63. data/gh-pages/_posts/2013-04-20-1.22.0.md +14 -0
  64. data/gh-pages/_posts/2013-04-20-1.22.1.md +13 -0
  65. data/gh-pages/_posts/2013-04-21-1.22.2.md +15 -0
  66. data/gh-pages/_posts/2013-04-21-1.23.0.md +35 -0
  67. data/gh-pages/_posts/2013-04-23-1.24.0.md +16 -0
  68. data/gh-pages/_posts/2013-04-24-1.25.0.md +21 -0
  69. data/gh-pages/_posts/2013-05-09-2.0.0.md +33 -0
  70. data/gh-pages/_posts/2013-05-09-version-2.0.0-released.md +32 -0
  71. data/gh-pages/_posts/2013-07-20-2.1.0.md +36 -0
  72. data/gh-pages/_posts/2013-07-20-2.2.0.md +20 -0
  73. data/gh-pages/_posts/2013-10-12-2.3.0.md +19 -0
  74. data/gh-pages/_posts/2014-03-30-2.3.1.md +25 -0
  75. data/gh-pages/_posts/2015-01-05-2.3.2.md +18 -0
  76. data/gh-pages/_posts/2015-12-03-get-involved.md +29 -0
  77. data/gh-pages/_posts/2015-12-05-2.3.3.md +16 -0
  78. data/gh-pages/_posts/2016-01-02-2.4.0.md +19 -0
  79. data/gh-pages/_posts/2017-05-01-2.4.1.md +12 -0
  80. data/gh-pages/_posts/2017-10-23-sleep-mode.md +18 -0
  81. data/gh-pages/_posts/2018-01-03-3.0.1.md +12 -0
  82. data/gh-pages/_stylesheets/ppl/color.less +119 -0
  83. data/gh-pages/_stylesheets/ppl/layout.less +54 -0
  84. data/gh-pages/_stylesheets/ppl/style.less +185 -0
  85. data/gh-pages/_stylesheets/ppl/typography.less +59 -0
  86. data/gh-pages/development/changelog/index.md +18 -0
  87. data/gh-pages/development/changelog/split.rb +51 -0
  88. data/gh-pages/development/index.html +32 -0
  89. data/gh-pages/development/roadmap/index.md +15 -0
  90. data/gh-pages/documentation/about/index.html +63 -0
  91. data/gh-pages/documentation/commands/add/index.md +43 -0
  92. data/gh-pages/documentation/commands/age/add/index.md +40 -0
  93. data/gh-pages/documentation/commands/age/index.md +38 -0
  94. data/gh-pages/documentation/commands/bday/index.md +44 -0
  95. data/gh-pages/documentation/commands/completion/index.md +38 -0
  96. data/gh-pages/documentation/commands/email/index.md +64 -0
  97. data/gh-pages/documentation/commands/grep/index.md +32 -0
  98. data/gh-pages/documentation/commands/init/index.md +28 -0
  99. data/gh-pages/documentation/commands/ls/index.md +55 -0
  100. data/gh-pages/documentation/commands/mutt/index.md +36 -0
  101. data/gh-pages/documentation/commands/mv/index.md +26 -0
  102. data/gh-pages/documentation/commands/name/index.md +45 -0
  103. data/gh-pages/documentation/commands/nick/index.md +44 -0
  104. data/gh-pages/documentation/commands/org/index.md +45 -0
  105. data/gh-pages/documentation/commands/phone/index.md +56 -0
  106. data/gh-pages/documentation/commands/post/index.md +61 -0
  107. data/gh-pages/documentation/commands/pull/index.md +39 -0
  108. data/gh-pages/documentation/commands/push/index.md +36 -0
  109. data/gh-pages/documentation/commands/remote/index.md +40 -0
  110. data/gh-pages/documentation/commands/rm/index.md +23 -0
  111. data/gh-pages/documentation/commands/scrape/index.md +38 -0
  112. data/gh-pages/documentation/commands/shell/index.md +39 -0
  113. data/gh-pages/documentation/commands/show/index.md +33 -0
  114. data/gh-pages/documentation/commands/url/index.md +44 -0
  115. data/gh-pages/documentation/commands/version/index.md +27 -0
  116. data/gh-pages/documentation/configuration/address_book/index.md +22 -0
  117. data/gh-pages/documentation/configuration/alias/index.md +45 -0
  118. data/gh-pages/documentation/configuration/color/index.md +47 -0
  119. data/gh-pages/documentation/configuration/color_age/index.md +20 -0
  120. data/gh-pages/documentation/configuration/color_bday/index.md +20 -0
  121. data/gh-pages/documentation/configuration/color_email/index.md +21 -0
  122. data/gh-pages/documentation/configuration/color_ls/index.md +21 -0
  123. data/gh-pages/documentation/configuration/color_name/index.md +20 -0
  124. data/gh-pages/documentation/configuration/color_nick/index.md +20 -0
  125. data/gh-pages/documentation/configuration/color_org/index.md +20 -0
  126. data/gh-pages/documentation/configuration/color_phone/index.md +22 -0
  127. data/gh-pages/documentation/configuration/color_post/index.md +20 -0
  128. data/gh-pages/documentation/configuration/color_url/index.md +20 -0
  129. data/gh-pages/documentation/configuration/index.html +8 -0
  130. data/gh-pages/documentation/index.html +183 -0
  131. data/gh-pages/documentation/integration/bash/index.md +23 -0
  132. data/gh-pages/documentation/integration/google/index.md +26 -0
  133. data/gh-pages/documentation/integration/index.html +8 -0
  134. data/gh-pages/documentation/integration/mutt/index.md +35 -0
  135. data/gh-pages/documentation/integration/zsh/index.md +19 -0
  136. data/gh-pages/documentation/quick-start/index.html +88 -0
  137. data/gh-pages/documentation/tips/index.html +9 -0
  138. data/gh-pages/index.html +108 -0
  139. data/gh-pages/news/index.html +9 -0
  140. data/gh-pages/robots.txt +3 -0
  141. data/gh-pages/stylesheets/flatstrap.css +10 -0
  142. data/gh-pages/stylesheets/ppl.scss +235 -0
  143. data/gh-pages/wiki.png +0 -0
  144. data/lib/ppl.rb +4 -1
  145. data/makefile +18 -0
  146. data/package.json +23 -0
  147. data/ppl.gemspec +1 -1
  148. data/site/_data/url.js +4 -0
  149. data/site/casts/hero.cast +189 -0
  150. data/site/development.njk +6 -0
  151. data/site/documentation.njk +6 -0
  152. data/site/index.njk +75 -0
  153. data/site/news.njk +6 -0
  154. data/site/style.scss +140 -0
  155. data/yarn.lock +3605 -0
  156. metadata +149 -1
data/gh-pages/wiki.png ADDED
Binary file
data/lib/ppl.rb CHANGED
@@ -1,6 +1,9 @@
1
+ require "rubygems"
2
+
1
3
  module Ppl
2
4
 
3
- Version = "3.0.1"
5
+ spec = Gem::Specification::load("ppl.gemspec")
6
+ Version = spec.version
4
7
 
5
8
  module Adapter
6
9
  end
data/makefile ADDED
@@ -0,0 +1,18 @@
1
+ CASTS_DIR := ./site/casts
2
+ CASTS_SRC := $(wildcard $(CASTS_DIR)/*.cast)
3
+ CASTS_DST := $(patsubst %.cast, %.svg, $(CASTS_SRC))
4
+ SVGTERM_BIN := yarn svg-term
5
+ SVGTERM_ARGS := --width 60 --height 28 --padding 8
6
+
7
+ _site: $(CASTS_DST)
8
+ yarn eleventy
9
+
10
+ $(CASTS_DIR)/%.svg:
11
+ cat $(CASTS_DIR)/$*.cast | $(SVGTERM_BIN) --out $@ $(SVGTERM_ARGS)
12
+
13
+ clean:
14
+ rm -f site/casts/*.svg
15
+ rm -rf _site
16
+
17
+ .PHONY: clean
18
+
data/package.json ADDED
@@ -0,0 +1,23 @@
1
+ {
2
+ "name": "@hendotcat/ppl",
3
+ "description": "The command-line address book",
4
+ "version": "0.0.0",
5
+ "license": "MIT",
6
+ "author": {
7
+ "name": "Henry Catalini Smith",
8
+ "email": "hen@hey.com",
9
+ "url": "https://github.com/hendotcat/ppl"
10
+ },
11
+ "devDependencies": {
12
+ "@11ty/eleventy": "^0.12.1",
13
+ "chokidar": "^3.5.1",
14
+ "fs-extra": "^9.1.0",
15
+ "html-minifier": "^4.0.0",
16
+ "sass": "^1.32.8",
17
+ "svg-term-cli": "^2.1.1"
18
+ },
19
+ "scripts": {
20
+ "build": "eleventy",
21
+ "start": "eleventy --serve"
22
+ }
23
+ }
data/ppl.gemspec CHANGED
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |spec|
2
2
 
3
3
  spec.name = "ppl"
4
- spec.version = "4.0.2"
4
+ spec.version = "4.0.3"
5
5
  spec.date = "2021-04-02"
6
6
 
7
7
  spec.required_ruby_version = ">= 3.0.0"
data/site/_data/url.js ADDED
@@ -0,0 +1,4 @@
1
+ module.exports = process.env.GITHUB_ACTIONS
2
+ ? "https://hen.cat/ppl"
3
+ : ""
4
+
@@ -0,0 +1,189 @@
1
+ {"version": 2, "width": 67, "height": 20, "timestamp": 1617475887, "env": {"SHELL": "/bin/zsh", "TERM": "xterm-256color"}}
2
+ [0.022404, "o", "\u001b[?1034h$ "]
3
+ [0.143601, "o", "\u001b[H\u001b[2J$ "]
4
+ [0.855827, "o", "p"]
5
+ [0.994948, "o", "p"]
6
+ [1.024583, "o", "l"]
7
+ [1.144753, "o", " "]
8
+ [1.246416, "o", "i"]
9
+ [1.274999, "o", "n"]
10
+ [1.40282, "o", "i"]
11
+ [1.506733, "o", "t"]
12
+ [1.590055, "o", " "]
13
+ [1.740583, "o", "c"]
14
+ [1.796451, "o", "o"]
15
+ [1.836608, "o", "n"]
16
+ [1.933692, "o", "t"]
17
+ [2.116569, "o", "a"]
18
+ [2.282556, "o", "c"]
19
+ [2.444916, "o", "t"]
20
+ [2.608654, "o", "s"]
21
+ [2.72387, "o", "\r\n"]
22
+ [3.82721, "o", "$ "]
23
+ [4.953388, "o", "c"]
24
+ [5.013487, "o", "d"]
25
+ [5.121529, "o", " "]
26
+ [5.206338, "o", "c"]
27
+ [5.327298, "o", "o"]
28
+ [5.343115, "o", "n"]
29
+ [5.427276, "o", "t"]
30
+ [5.593647, "o", "a"]
31
+ [5.695478, "o", "c"]
32
+ [5.892517, "o", "t"]
33
+ [6.061918, "o", "s"]
34
+ [6.167732, "o", "\r\n"]
35
+ [6.168801, "o", "$ "]
36
+ [7.036513, "o", "p"]
37
+ [7.174764, "o", "p"]
38
+ [7.218565, "o", "l"]
39
+ [7.337711, "o", " "]
40
+ [7.495551, "o", "a"]
41
+ [7.564116, "o", "d"]
42
+ [7.716513, "o", "d"]
43
+ [7.805091, "o", " "]
44
+ [7.986316, "o", "p"]
45
+ [8.048534, "o", "i"]
46
+ [8.35928, "o", "p"]
47
+ [8.498522, "o", "p"]
48
+ [8.586445, "o", "i"]
49
+ [8.72882, "o", " "]
50
+ [8.936575, "o", "\""]
51
+ [9.280333, "o", "P"]
52
+ [9.525508, "o", "i"]
53
+ [9.762522, "o", "p"]
54
+ [9.887212, "o", "p"]
55
+ [10.105491, "o", "i"]
56
+ [10.216623, "o", " "]
57
+ [10.651046, "o", "L"]
58
+ [10.936587, "o", "å"]
59
+ [11.254346, "o", "n"]
60
+ [11.404346, "o", "g"]
61
+ [11.625528, "o", "s"]
62
+ [11.787552, "o", "t"]
63
+ [11.81952, "o", "r"]
64
+ [11.940004, "o", "u"]
65
+ [12.164137, "o", "m"]
66
+ [12.200539, "o", "p"]
67
+ [12.540324, "o", "\""]
68
+ [12.821759, "o", "\r\n"]
69
+ [13.474599, "o", "$ "]
70
+ [14.049401, "o", "p"]
71
+ [14.203211, "o", "p"]
72
+ [14.247452, "o", "l"]
73
+ [14.378448, "o", " "]
74
+ [15.449555, "o", "p"]
75
+ [15.50515, "o", "o"]
76
+ [15.573199, "o", "s"]
77
+ [15.699574, "o", "t"]
78
+ [15.76914, "o", " "]
79
+ [16.036999, "o", "p"]
80
+ [16.163044, "o", "i"]
81
+ [16.652924, "o", "p"]
82
+ [16.813243, "o", "p"]
83
+ [16.917135, "o", "i"]
84
+ [17.080562, "o", " "]
85
+ [17.201808, "o", "h"]
86
+ [17.368848, "o", "o"]
87
+ [17.413542, "o", "m"]
88
+ [17.48414, "o", "e"]
89
+ [17.568197, "o", " "]
90
+ [17.742182, "o", "-"]
91
+ [17.864295, "o", "s"]
92
+ [17.979325, "o", " "]
93
+ [18.242493, "o", "\""]
94
+ [18.440636, "o", "V"]
95
+ [18.663198, "o", "i"]
96
+ [18.869829, "o", "l"]
97
+ [19.003247, "o", "l"]
98
+ [19.147136, "o", " "]
99
+ [19.573385, "o", "\b\u001b[K"]
100
+ [19.605033, "o", "a"]
101
+ [19.713884, "o", " "]
102
+ [19.989035, "o", "V"]
103
+ [20.203604, "o", "i"]
104
+ [20.420199, "o", "l"]
105
+ [20.543928, "o", "l"]
106
+ [20.621966, "o", "e"]
107
+ [20.801954, "o", "k"]
108
+ [20.997196, "o", "u"]
109
+ [21.221267, "o", "l"]
110
+ [21.343979, "o", "l"]
111
+ [21.406573, "o", "a"]
112
+ [21.695081, "o", "\""]
113
+ [22.045301, "o", "\r\n"]
114
+ [22.623404, "o", "$ "]
115
+ [23.046212, "o", "p"]
116
+ [23.187992, "o", "p"]
117
+ [23.232119, "o", "l"]
118
+ [23.376733, "o", " "]
119
+ [23.532971, "o", "p"]
120
+ [23.568856, "o", "o"]
121
+ [23.664967, "o", "s"]
122
+ [23.78287, "o", "t"]
123
+ [23.867012, "o", " "]
124
+ [24.089129, "o", "p"]
125
+ [24.18896, "o", "i"]
126
+ [24.537432, "o", "p"]
127
+ [24.671921, "o", "p"]
128
+ [24.75389, "o", "i"]
129
+ [24.912881, "o", " "]
130
+ [25.244919, "o", "h"]
131
+ [25.445018, "o", "o"]
132
+ [25.472957, "o", "m"]
133
+ [25.5329, "o", "e"]
134
+ [25.617171, "o", " "]
135
+ [25.790839, "o", "-"]
136
+ [25.87546, "o", "r"]
137
+ [25.958428, "o", " "]
138
+ [26.163913, "o", "G"]
139
+ [26.330864, "o", "o"]
140
+ [26.398742, "o", "t"]
141
+ [26.539044, "o", "l"]
142
+ [26.664821, "o", "a"]
143
+ [26.756851, "o", "n"]
144
+ [26.887805, "o", "d"]
145
+ [27.174229, "o", "\r\n"]
146
+ [27.754473, "o", "$ "]
147
+ [28.710519, "o", "p"]
148
+ [28.852863, "o", "p"]
149
+ [28.884783, "o", "l"]
150
+ [29.026707, "o", " "]
151
+ [29.110911, "o", "p"]
152
+ [29.297789, "o", "h"]
153
+ [29.458775, "o", "o"]
154
+ [29.502703, "o", "n"]
155
+ [29.54685, "o", "e"]
156
+ [29.63878, "o", " "]
157
+ [29.821813, "o", "p"]
158
+ [29.90475, "o", "i"]
159
+ [30.192829, "o", "p"]
160
+ [30.343097, "o", "p"]
161
+ [30.406836, "o", "i"]
162
+ [30.581877, "o", " "]
163
+ [31.131683, "o", "0"]
164
+ [31.234479, "o", "1"]
165
+ [31.355551, "o", "2"]
166
+ [31.400856, "o", "3"]
167
+ [31.453295, "o", "4"]
168
+ [31.500886, "o", "5"]
169
+ [31.556114, "o", "6"]
170
+ [31.624319, "o", "7"]
171
+ [31.692674, "o", "8"]
172
+ [31.767559, "o", "9"]
173
+ [32.716806, "o", "\r\n"]
174
+ [33.287926, "o", "$ "]
175
+ [33.583786, "o", "g"]
176
+ [33.701428, "o", "i"]
177
+ [33.765884, "o", "t"]
178
+ [33.86645, "o", " "]
179
+ [34.030689, "o", "r"]
180
+ [34.07851, "o", "e"]
181
+ [34.214903, "o", "f"]
182
+ [34.303057, "o", "l"]
183
+ [34.439927, "o", "o"]
184
+ [34.536749, "o", "g"]
185
+ [34.846417, "o", "\r\n"]
186
+ [35.037765, "o", "\u001b[?1h\u001b=\r"]
187
+ [35.038025, "o", "\u001b[33ma9152d0\u001b[m\u001b[33m (\u001b[m\u001b[36mHEAD -> \u001b[m\u001b[35mtrunk\u001b[m\u001b[33m)\u001b[m HEAD@{0}: commit: save_contact(pippi)\u001b[m\r\n\u001b[33mff1e87b\u001b[m HEAD@{1}: commit: save_contact(pippi)\u001b[m\r\n\u001b[33mcf92220\u001b[m HEAD@{2}: commit: save_contact(pippi)\u001b[m\r\n\u001b[33m239279e\u001b[m HEAD@{3}: commit: save_contact(pippi)\u001b[m\r\n\u001b[33m602b33a\u001b[m HEAD@{4}: commit (initial): first commit\u001b[m\r\n\r\u001b[K\u001b[?1l\u001b>"]
188
+ [35.052991, "o", "$ "]
189
+ [36.967416, "o", "exit\r\n"]
@@ -0,0 +1,6 @@
1
+ ---
2
+ title: ppl development
3
+ ---
4
+
5
+ {{ title }}
6
+
@@ -0,0 +1,6 @@
1
+ ---
2
+ title: ppl documentation
3
+ ---
4
+
5
+ {{ title }}
6
+
data/site/index.njk ADDED
@@ -0,0 +1,75 @@
1
+ ---
2
+ title: ppl
3
+ description: The command-line address book
4
+ ---
5
+ <!doctype html>
6
+ <html
7
+ lang="en"
8
+ dir="ltr"
9
+ itemscope
10
+ itemtype="http://schema.org/SoftwareApplication">
11
+ <head>
12
+ <meta
13
+ name="viewport"
14
+ content="width=device-width,initial-scale=1"
15
+ />
16
+
17
+ <link rel="stylesheet" href="{{ url }}/style.css" />
18
+ <title>
19
+ {{ title }}
20
+ </title>
21
+ </head>
22
+ <body>
23
+ <main>
24
+ <header>
25
+ <h1>
26
+ <span itemprop="name">
27
+ {{ title }}
28
+ </span>
29
+ <svg
30
+ xmlns="http://www.w3.org/2000/svg"
31
+ xmlns:xlink="http://www.w3.org/1999/xlink"
32
+ viewBox="-1 0 15 8"
33
+ stroke-linecap="round"
34
+ stroke-linejoin="round"
35
+ height="32px"
36
+ width="64px">
37
+ <defs>
38
+ <path id="p" d="M0,6 L0,3 L2,3 L2,5 L0,5" />
39
+ <path id="l" d="M0,3 L0,6 L2,6" />
40
+ </defs>
41
+ <use xlink:href="#p" fill="none" stroke="#000000" stroke-width="2.8" x="0" y="0" />
42
+ <use xlink:href="#p" fill="none" stroke="#fff1e8" stroke-width="1" x="0" y="0" />
43
+ <use xlink:href="#p" fill="none" stroke="#000000" stroke-width="2.8" x="4" y="0" />
44
+ <use xlink:href="#p" fill="none" stroke="#fff1e8" stroke-width="1" x="4" y="0" />
45
+ <use xlink:href="#l" fill="none" stroke="#000000" stroke-width="2.8" x="8" y="0" />
46
+ <use xlink:href="#l" fill="none" stroke="#fff1e8" stroke-width="1" x="8" y="0" />
47
+ </svg>
48
+ </h1>
49
+ <p itemprop="description">
50
+ {{ description }}
51
+ </p>
52
+ </header>
53
+
54
+ <img
55
+ alt="Animated demo showing Pippi Långstrump being added to a new address book"
56
+ src="{{ url }}/casts/hero.svg"
57
+ />
58
+
59
+ <footer>
60
+ <p
61
+ itemprop="creator"
62
+ itemscope
63
+ itemtype="http://schema.org/Person">
64
+ <a href="https://hen.cat/" target="_blank">
65
+ <span itemprop="name">
66
+ Henry Catalini Smith
67
+ </span>
68
+ </a>
69
+ </p>
70
+ </footer>
71
+
72
+ </main>
73
+ </body>
74
+ </html>
75
+
data/site/news.njk ADDED
@@ -0,0 +1,6 @@
1
+ ---
2
+ title: ppl news
3
+ ---
4
+
5
+ {{ title }}
6
+
data/site/style.scss ADDED
@@ -0,0 +1,140 @@
1
+ @function str-replace($string, $search, $replace: "") {
2
+ $index: str-index($string, $search);
3
+ @if ($index) {
4
+ @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
5
+ }
6
+ @return $string;
7
+ }
8
+
9
+ @function svg-to-data-uri($svg, $fill: null) {
10
+ $svg: if($fill, str-replace($svg, "<svg", "<svg fill='#{$fill}'"), $svg);
11
+ $svg: str-replace($svg, "<svg", "<svg xmlns='http://www.w3.org/2000/svg' ");
12
+ $svg: str-replace($svg, "<", "%3C");
13
+ $svg: str-replace($svg, ">", "%3E");
14
+ $svg: str-replace($svg, "\"", "'");
15
+ $svg: str-replace($svg, "#", "%23");
16
+ $svg: str-replace($svg, "&", "%26");
17
+ @return url("data:image/svg+xml,#{$svg}");
18
+ }
19
+
20
+ :root {
21
+ --padding: 1rem;
22
+ --tiny: calc(100vmin - var(--padding) * 2);
23
+ --wide: 32rem;
24
+ --box: min(var(--tiny), var(--wide));
25
+ }
26
+
27
+ html {
28
+ box-sizing: border-box;
29
+ }
30
+
31
+ *, *:before, *:after {
32
+ box-sizing: inherit;
33
+ }
34
+
35
+ body {
36
+ margin: 0;
37
+ }
38
+
39
+ [itemtype="http://schema.org/SoftwareApplication"] {
40
+ --descriptionFontSize: 1rem;
41
+
42
+ @media (min-width: 24rem) and (min-height: 24rem) {
43
+ --descriptionFontSize: 1.2rem;
44
+ }
45
+
46
+ @media (min-width: 34rem) and (min-height: 34rem) {
47
+ --descriptionFontSize: 1.8rem;
48
+ }
49
+
50
+ main {
51
+ align-items: center;
52
+ display: flex;
53
+ flex-direction: column;
54
+ }
55
+
56
+ header {
57
+ display: flex;
58
+ flex-direction: column;
59
+ justify-content: center;
60
+ height: var(--box);
61
+ width: var(--box);
62
+ }
63
+
64
+ h1 {
65
+ margin: 0;
66
+ }
67
+
68
+ h1 [itemprop="name"] {
69
+ border: 0;
70
+ padding: 0;
71
+ margin: 0;
72
+ position: absolute;
73
+ height: 1px;
74
+ width: 1px;
75
+ overflow: hidden;
76
+ clip-path: inset(50%);
77
+ white-space: nowrap;
78
+ }
79
+
80
+ h1 svg {
81
+ height: 4rem;
82
+ width: 8rem;
83
+ }
84
+
85
+ header [itemprop="description"] {
86
+ font-family: "Menlo", monospace;
87
+ font-size: var(--descriptionFontSize);
88
+ margin: 0;
89
+ }
90
+
91
+ img {
92
+ background-image: svg-to-data-uri(
93
+ '<svg viewBox="0 0 64 16">'
94
+ + '<circle cx="14" cy="4" r="6" fill="#657b83" />'
95
+ + '<circle cx="30" cy="4" r="6" fill="#839496" />'
96
+ + '<circle cx="46" cy="4" r="6" fill="#008751" />'
97
+ + '</svg>'
98
+ );
99
+ background-size: 64px 32px;
100
+ background-repeat: no-repeat;
101
+ background-position: top left;
102
+
103
+ border: 3px solid #282d35;
104
+ border-radius: 8px;
105
+ padding-top: 32px;
106
+ background-color: #282d35;
107
+ height: var(--box);
108
+ width: var(--box);
109
+ }
110
+
111
+ footer {
112
+ align-items: flex-end;
113
+ display: flex;
114
+ height: var(--box);
115
+ justify-content: flex-end;
116
+ width: var(--box);
117
+ }
118
+
119
+ [itemprop="creator"] {
120
+ font-family: Futura, Helvetica, sans-serif;
121
+ margin: 0 0 0.2rem 0;
122
+ text-align: right;
123
+ }
124
+
125
+ [itemprop="creator"] a {
126
+ text-decoration: none;
127
+ }
128
+
129
+ [itemprop="creator"] [itemprop="name"] {
130
+ color: darkslategray;
131
+ font-size: 1rem;
132
+ font-weight: bold;
133
+ }
134
+
135
+ [itemprop="creator"] [itemprop="name"]:hover {
136
+ text-decoration-line: underline;
137
+ text-decoration-color: deepskyblue;
138
+ }
139
+ }
140
+