Browse Source

allow picking cover photo, add pub dates

Ondřej Hruška 1 month ago
parent
commit
1657c72d34
Signed by: Ondřej Hruška <ondra@ondrovo.com> GPG key ID: 2C5FD5035250423D

+ 363 - 0
Cargo.lock View File

@@ -1,4 +1,9 @@
1 1
 [[package]]
2
+name = "adler32"
3
+version = "1.0.3"
4
+source = "registry+https://github.com/rust-lang/crates.io-index"
5
+
6
+[[package]]
2 7
 name = "aho-corasick"
3 8
 version = "0.6.9"
4 9
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -7,6 +12,14 @@ dependencies = [
7 12
 ]
8 13
 
9 14
 [[package]]
15
+name = "arrayvec"
16
+version = "0.4.10"
17
+source = "registry+https://github.com/rust-lang/crates.io-index"
18
+dependencies = [
19
+ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
20
+]
21
+
22
+[[package]]
10 23
 name = "autocfg"
11 24
 version = "0.1.2"
12 25
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -34,16 +47,33 @@ dependencies = [
34 47
 ]
35 48
 
36 49
 [[package]]
50
+name = "bitflags"
51
+version = "0.7.0"
52
+source = "registry+https://github.com/rust-lang/crates.io-index"
53
+
54
+[[package]]
55
+name = "bitflags"
56
+version = "1.0.4"
57
+source = "registry+https://github.com/rust-lang/crates.io-index"
58
+
59
+[[package]]
37 60
 name = "bread"
38 61
 version = "0.1.0"
39 62
 dependencies = [
40 63
  "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
64
+ "image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)",
65
+ "image-utils 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
41 66
  "markdown 0.2.0 (git+https://github.com/johannhof/markdown.rs)",
42 67
  "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
43 68
  "rss 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
44 69
 ]
45 70
 
46 71
 [[package]]
72
+name = "byteorder"
73
+version = "1.2.7"
74
+source = "registry+https://github.com/rust-lang/crates.io-index"
75
+
76
+[[package]]
47 77
 name = "cc"
48 78
 version = "1.0.28"
49 79
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -64,6 +94,42 @@ dependencies = [
64 94
 ]
65 95
 
66 96
 [[package]]
97
+name = "color_quant"
98
+version = "1.0.1"
99
+source = "registry+https://github.com/rust-lang/crates.io-index"
100
+
101
+[[package]]
102
+name = "crossbeam-deque"
103
+version = "0.2.0"
104
+source = "registry+https://github.com/rust-lang/crates.io-index"
105
+dependencies = [
106
+ "crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
107
+ "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
108
+]
109
+
110
+[[package]]
111
+name = "crossbeam-epoch"
112
+version = "0.3.1"
113
+source = "registry+https://github.com/rust-lang/crates.io-index"
114
+dependencies = [
115
+ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
116
+ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
117
+ "crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
118
+ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
119
+ "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
120
+ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
121
+ "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
122
+]
123
+
124
+[[package]]
125
+name = "crossbeam-utils"
126
+version = "0.2.2"
127
+source = "registry+https://github.com/rust-lang/crates.io-index"
128
+dependencies = [
129
+ "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
130
+]
131
+
132
+[[package]]
67 133
 name = "darling"
68 134
 version = "0.8.3"
69 135
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -95,6 +161,15 @@ dependencies = [
95 161
 ]
96 162
 
97 163
 [[package]]
164
+name = "deflate"
165
+version = "0.7.19"
166
+source = "registry+https://github.com/rust-lang/crates.io-index"
167
+dependencies = [
168
+ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
169
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
170
+]
171
+
172
+[[package]]
98 173
 name = "derive_builder"
99 174
 version = "0.7.0"
100 175
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -118,6 +193,11 @@ dependencies = [
118 193
 ]
119 194
 
120 195
 [[package]]
196
+name = "either"
197
+version = "1.5.0"
198
+source = "registry+https://github.com/rust-lang/crates.io-index"
199
+
200
+[[package]]
121 201
 name = "encoding_rs"
122 202
 version = "0.8.14"
123 203
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -126,6 +206,14 @@ dependencies = [
126 206
 ]
127 207
 
128 208
 [[package]]
209
+name = "enum_primitive"
210
+version = "0.1.1"
211
+source = "registry+https://github.com/rust-lang/crates.io-index"
212
+dependencies = [
213
+ "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
214
+]
215
+
216
+[[package]]
129 217
 name = "failure"
130 218
 version = "0.1.5"
131 219
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -151,11 +239,104 @@ version = "1.0.6"
151 239
 source = "registry+https://github.com/rust-lang/crates.io-index"
152 240
 
153 241
 [[package]]
242
+name = "gif"
243
+version = "0.9.2"
244
+source = "registry+https://github.com/rust-lang/crates.io-index"
245
+dependencies = [
246
+ "color_quant 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
247
+ "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
248
+]
249
+
250
+[[package]]
251
+name = "gif"
252
+version = "0.10.1"
253
+source = "registry+https://github.com/rust-lang/crates.io-index"
254
+dependencies = [
255
+ "color_quant 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
256
+ "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
257
+]
258
+
259
+[[package]]
260
+name = "gif-dispose"
261
+version = "1.0.2"
262
+source = "registry+https://github.com/rust-lang/crates.io-index"
263
+dependencies = [
264
+ "gif 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
265
+ "rgb 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
266
+]
267
+
268
+[[package]]
154 269
 name = "ident_case"
155 270
 version = "1.0.0"
156 271
 source = "registry+https://github.com/rust-lang/crates.io-index"
157 272
 
158 273
 [[package]]
274
+name = "image"
275
+version = "0.12.4"
276
+source = "registry+https://github.com/rust-lang/crates.io-index"
277
+dependencies = [
278
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
279
+ "enum_primitive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
280
+ "gif 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
281
+ "jpeg-decoder 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
282
+ "num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)",
283
+ "num-rational 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
284
+ "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
285
+ "png 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)",
286
+ "scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
287
+]
288
+
289
+[[package]]
290
+name = "image"
291
+version = "0.21.0"
292
+source = "registry+https://github.com/rust-lang/crates.io-index"
293
+dependencies = [
294
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
295
+ "gif 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
296
+ "jpeg-decoder 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)",
297
+ "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
298
+ "num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)",
299
+ "num-rational 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
300
+ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
301
+ "png 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)",
302
+ "safe-transmute 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
303
+ "scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
304
+ "tiff 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
305
+]
306
+
307
+[[package]]
308
+name = "image-utils"
309
+version = "0.2.0"
310
+source = "registry+https://github.com/rust-lang/crates.io-index"
311
+dependencies = [
312
+ "gif 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
313
+ "gif-dispose 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
314
+ "image 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)",
315
+]
316
+
317
+[[package]]
318
+name = "inflate"
319
+version = "0.1.1"
320
+source = "registry+https://github.com/rust-lang/crates.io-index"
321
+
322
+[[package]]
323
+name = "inflate"
324
+version = "0.4.4"
325
+source = "registry+https://github.com/rust-lang/crates.io-index"
326
+dependencies = [
327
+ "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
328
+]
329
+
330
+[[package]]
331
+name = "jpeg-decoder"
332
+version = "0.1.15"
333
+source = "registry+https://github.com/rust-lang/crates.io-index"
334
+dependencies = [
335
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
336
+ "rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
337
+]
338
+
339
+[[package]]
159 340
 name = "lazy_static"
160 341
 version = "0.2.11"
161 342
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -179,6 +360,11 @@ dependencies = [
179 360
 ]
180 361
 
181 362
 [[package]]
363
+name = "lzw"
364
+version = "0.10.0"
365
+source = "registry+https://github.com/rust-lang/crates.io-index"
366
+
367
+[[package]]
182 368
 name = "markdown"
183 369
 version = "0.2.0"
184 370
 source = "git+https://github.com/johannhof/markdown.rs#788aa51284ef71e18bf237f91a4c7cb77de6dbaf"
@@ -198,6 +384,27 @@ dependencies = [
198 384
 ]
199 385
 
200 386
 [[package]]
387
+name = "memoffset"
388
+version = "0.2.1"
389
+source = "registry+https://github.com/rust-lang/crates.io-index"
390
+
391
+[[package]]
392
+name = "nodrop"
393
+version = "0.1.13"
394
+source = "registry+https://github.com/rust-lang/crates.io-index"
395
+
396
+[[package]]
397
+name = "num-derive"
398
+version = "0.2.3"
399
+source = "registry+https://github.com/rust-lang/crates.io-index"
400
+dependencies = [
401
+ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
402
+ "proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)",
403
+ "quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)",
404
+ "syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)",
405
+]
406
+
407
+[[package]]
201 408
 name = "num-integer"
202 409
 version = "0.1.39"
203 410
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -206,11 +413,54 @@ dependencies = [
206 413
 ]
207 414
 
208 415
 [[package]]
416
+name = "num-iter"
417
+version = "0.1.37"
418
+source = "registry+https://github.com/rust-lang/crates.io-index"
419
+dependencies = [
420
+ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
421
+ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
422
+]
423
+
424
+[[package]]
425
+name = "num-rational"
426
+version = "0.1.42"
427
+source = "registry+https://github.com/rust-lang/crates.io-index"
428
+dependencies = [
429
+ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
430
+ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
431
+]
432
+
433
+[[package]]
434
+name = "num-rational"
435
+version = "0.2.1"
436
+source = "registry+https://github.com/rust-lang/crates.io-index"
437
+dependencies = [
438
+ "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
439
+ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
440
+]
441
+
442
+[[package]]
443
+name = "num-traits"
444
+version = "0.1.43"
445
+source = "registry+https://github.com/rust-lang/crates.io-index"
446
+dependencies = [
447
+ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
448
+]
449
+
450
+[[package]]
209 451
 name = "num-traits"
210 452
 version = "0.2.6"
211 453
 source = "registry+https://github.com/rust-lang/crates.io-index"
212 454
 
213 455
 [[package]]
456
+name = "num_cpus"
457
+version = "1.9.0"
458
+source = "registry+https://github.com/rust-lang/crates.io-index"
459
+dependencies = [
460
+ "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
461
+]
462
+
463
+[[package]]
214 464
 name = "percent-encoding"
215 465
 version = "1.0.1"
216 466
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -221,6 +471,28 @@ version = "0.5.0"
221 471
 source = "registry+https://github.com/rust-lang/crates.io-index"
222 472
 
223 473
 [[package]]
474
+name = "png"
475
+version = "0.6.2"
476
+source = "registry+https://github.com/rust-lang/crates.io-index"
477
+dependencies = [
478
+ "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
479
+ "deflate 0.7.19 (registry+https://github.com/rust-lang/crates.io-index)",
480
+ "inflate 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
481
+ "num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)",
482
+]
483
+
484
+[[package]]
485
+name = "png"
486
+version = "0.14.0"
487
+source = "registry+https://github.com/rust-lang/crates.io-index"
488
+dependencies = [
489
+ "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
490
+ "deflate 0.7.19 (registry+https://github.com/rust-lang/crates.io-index)",
491
+ "inflate 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
492
+ "num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)",
493
+]
494
+
495
+[[package]]
224 496
 name = "proc-macro2"
225 497
 version = "0.4.26"
226 498
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -248,6 +520,27 @@ dependencies = [
248 520
 ]
249 521
 
250 522
 [[package]]
523
+name = "rayon"
524
+version = "1.0.3"
525
+source = "registry+https://github.com/rust-lang/crates.io-index"
526
+dependencies = [
527
+ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
528
+ "either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
529
+ "rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
530
+]
531
+
532
+[[package]]
533
+name = "rayon-core"
534
+version = "1.4.1"
535
+source = "registry+https://github.com/rust-lang/crates.io-index"
536
+dependencies = [
537
+ "crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
538
+ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
539
+ "libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)",
540
+ "num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
541
+]
542
+
543
+[[package]]
251 544
 name = "redox_syscall"
252 545
 version = "0.1.51"
253 546
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -273,6 +566,11 @@ dependencies = [
273 566
 ]
274 567
 
275 568
 [[package]]
569
+name = "rgb"
570
+version = "0.7.2"
571
+source = "registry+https://github.com/rust-lang/crates.io-index"
572
+
573
+[[package]]
276 574
 name = "rss"
277 575
 version = "1.6.1"
278 576
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -288,6 +586,21 @@ version = "0.1.13"
288 586
 source = "registry+https://github.com/rust-lang/crates.io-index"
289 587
 
290 588
 [[package]]
589
+name = "safe-transmute"
590
+version = "0.10.1"
591
+source = "registry+https://github.com/rust-lang/crates.io-index"
592
+
593
+[[package]]
594
+name = "scoped_threadpool"
595
+version = "0.1.9"
596
+source = "registry+https://github.com/rust-lang/crates.io-index"
597
+
598
+[[package]]
599
+name = "scopeguard"
600
+version = "0.3.3"
601
+source = "registry+https://github.com/rust-lang/crates.io-index"
602
+
603
+[[package]]
291 604
 name = "syn"
292 605
 version = "0.15.26"
293 606
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -317,6 +630,17 @@ dependencies = [
317 630
 ]
318 631
 
319 632
 [[package]]
633
+name = "tiff"
634
+version = "0.2.1"
635
+source = "registry+https://github.com/rust-lang/crates.io-index"
636
+dependencies = [
637
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
638
+ "lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
639
+ "num-derive 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
640
+ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
641
+]
642
+
643
+[[package]]
320 644
 name = "time"
321 645
 version = "0.1.42"
322 646
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -361,44 +685,83 @@ version = "0.4.0"
361 685
 source = "registry+https://github.com/rust-lang/crates.io-index"
362 686
 
363 687
 [metadata]
688
+"checksum adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c"
364 689
 "checksum aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e"
690
+"checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71"
365 691
 "checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799"
366 692
 "checksum backtrace 0.3.13 (registry+https://github.com/rust-lang/crates.io-index)" = "b5b493b66e03090ebc4343eb02f94ff944e0cbc9ac6571491d170ba026741eb5"
367 693
 "checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6"
694
+"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
695
+"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
696
+"checksum byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d"
368 697
 "checksum cc 1.0.28 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4a8b715cb4597106ea87c7c84b2f1d452c7492033765df7f32651e66fcf749"
369 698
 "checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"
370 699
 "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"
700
+"checksum color_quant 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0dbbb57365263e881e805dc77d94697c9118fd94d8da011240555aa7b23445bd"
701
+"checksum crossbeam-deque 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f739f8c5363aca78cfb059edf753d8f0d36908c348f3d8d1503f03d8b75d9cf3"
702
+"checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150"
703
+"checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9"
371 704
 "checksum darling 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "540f3246eaeecb3fc7ff9ac258f8958a57d3d87a637466fd5ad077663eabae80"
372 705
 "checksum darling_core 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "69e5f4498f3c21a65d0477542d691dac79b0f44048f5174901fdbf1b676b94b7"
373 706
 "checksum darling_macro 0.8.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b8c04b3c08354a7d8a70d633931852de9e11b664881d8dd4d686e6bc7761e7fd"
707
+"checksum deflate 0.7.19 (registry+https://github.com/rust-lang/crates.io-index)" = "8a6abb26e16e8d419b5c78662aa9f82857c2386a073da266840e474d5055ec86"
374 708
 "checksum derive_builder 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "15d9e4f0be540b522e95c1de6200be0b12946fdd8408c093a1948de638e16f55"
375 709
 "checksum derive_builder_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e1cffc940f53a89045824e676302b840a5a60d447560704d352316e2039125a2"
710
+"checksum either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0"
376 711
 "checksum encoding_rs 0.8.14 (registry+https://github.com/rust-lang/crates.io-index)" = "a69d152eaa438a291636c1971b0a370212165ca8a75759eb66818c5ce9b538f7"
712
+"checksum enum_primitive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "be4551092f4d519593039259a9ed8daedf0da12e5109c5280338073eaeb81180"
377 713
 "checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2"
378 714
 "checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1"
379 715
 "checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
716
+"checksum gif 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4bca55ac1f213920ce3527ccd62386f1f15fa3f1714aeee1cf93f2c416903f"
717
+"checksum gif 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e2e41945ba23db3bf51b24756d73d81acb4f28d85c3dccc32c6fae904438c25f"
718
+"checksum gif-dispose 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4c14b308f5d2295408f2bddc6628aec17382486357e7d9aed7fcd76e30a11c41"
380 719
 "checksum ident_case 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c9826188e666f2ed92071d2dadef6edc430b11b158b5b2b3f4babbcc891eaaa"
720
+"checksum image 0.12.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d95816db758249fe16f23a4e23f1a3a817fe11892dbfd1c5836f625324702158"
721
+"checksum image 0.21.0 (registry+https://github.com/rust-lang/crates.io-index)" = "52fb0666a1273dac46f9725aa4859bcd5595fc3554cf3495051b4de8db745e7d"
722
+"checksum image-utils 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "de1a02b03a2f8b850cc97a9cd11b6bb4cca189904873f0570ee69635093b551f"
723
+"checksum inflate 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "e7e0062d2dc2f17d2f13750d95316ae8a2ff909af0fda957084f5defd87c43bb"
724
+"checksum inflate 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "84c683bde2d8413b8f1be3e459c30e4817672b6e7a31d9212b0323154e76eba7"
725
+"checksum jpeg-decoder 0.1.15 (registry+https://github.com/rust-lang/crates.io-index)" = "c8b7d43206b34b3f94ea9445174bda196e772049b9bddbc620c9d29b2d20110d"
381 726
 "checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73"
382 727
 "checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1"
383 728
 "checksum libc 0.2.47 (registry+https://github.com/rust-lang/crates.io-index)" = "48450664a984b25d5b479554c29cc04e3150c97aa4c01da5604a2d4ed9151476"
384 729
 "checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
730
+"checksum lzw 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7d947cbb889ed21c2a84be6ffbaebf5b4e0f4340638cba0444907e38b56be084"
385 731
 "checksum markdown 0.2.0 (git+https://github.com/johannhof/markdown.rs)" = "<none>"
386 732
 "checksum memchr 2.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e1dd4eaac298c32ce07eb6ed9242eda7d82955b9170b7d6db59b2e02cc63fcb8"
733
+"checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3"
734
+"checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
735
+"checksum num-derive 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8af1847c907c2f04d7bfd572fb25bbb4385c637fe5be163cf2f8c5d778fe1e7d"
387 736
 "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea"
737
+"checksum num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "af3fdbbc3291a5464dc57b03860ec37ca6bf915ed6ee385e7c6c052c422b2124"
738
+"checksum num-rational 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "ee314c74bd753fc86b4780aa9475da469155f3848473a261d2d18e35245a784e"
739
+"checksum num-rational 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4e96f040177bb3da242b5b1ecf3f54b5d5af3efbbfb18608977a5d2767b22f10"
740
+"checksum num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
388 741
 "checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
742
+"checksum num_cpus 1.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5a69d464bdc213aaaff628444e99578ede64e9c854025aa43b9796530afa9238"
389 743
 "checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831"
390 744
 "checksum pipeline 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d15b6607fa632996eb8a17c9041cb6071cb75ac057abd45dece578723ea8c7c0"
745
+"checksum png 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9adebf7fb91ccf5eac9da1a8e00e83cb8ae882c3e8d8e4ad59da73cb8c82a2c9"
746
+"checksum png 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "3cb773e9a557edb568ce9935cf783e3cdcabe06a9449d41b3e5506d88e582c82"
391 747
 "checksum proc-macro2 0.4.26 (registry+https://github.com/rust-lang/crates.io-index)" = "38fddd23d98b2144d197c0eca5705632d4fe2667d14a6be5df8934f8d74f1978"
392 748
 "checksum quick-xml 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)" = "98d8d2d671bd29c6122a98b45ce3106391e89ba378f731274de677f1eff06e5f"
393 749
 "checksum quote 0.6.11 (registry+https://github.com/rust-lang/crates.io-index)" = "cdd8e04bd9c52e0342b406469d494fcb033be4bdbe5c606016defbb1681411e1"
750
+"checksum rayon 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "373814f27745b2686b350dd261bfd24576a6fb0e2c5919b3a2b6005f820b0473"
751
+"checksum rayon-core 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b055d1e92aba6877574d8fe604a63c8b5df60f60e5982bf7ccbb1338ea527356"
394 752
 "checksum redox_syscall 0.1.51 (registry+https://github.com/rust-lang/crates.io-index)" = "423e376fffca3dfa06c9e9790a9ccd282fafb3cc6e6397d01dbf64f9bacc6b85"
395 753
 "checksum regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384"
396 754
 "checksum regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7"
755
+"checksum rgb 0.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "86f1b65e8f82c504764808b22afb26fdd8f6e508dde18adf9e204825718511c8"
397 756
 "checksum rss 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "afa0a5ea775a1ff4d94ac2e4fc504d7ff3f0f0a378ab05a40621ee8af42d8aeb"
398 757
 "checksum rustc-demangle 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "adacaae16d02b6ec37fdc7acfcddf365978de76d1983d3ee22afc260e1ca9619"
758
+"checksum safe-transmute 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9604873ffe1980bc1f179103704a65c8aca141c248d9e52b7af95ff10578166e"
759
+"checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8"
760
+"checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27"
399 761
 "checksum syn 0.15.26 (registry+https://github.com/rust-lang/crates.io-index)" = "f92e629aa1d9c827b2bb8297046c1ccffc57c99b947a680d3ccff1f136a3bee9"
400 762
 "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015"
401 763
 "checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
764
+"checksum tiff 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a2cc6c4fd13cb1cfd20abdb196e794ceccb29371855b7e7f575945f920a5b3c2"
402 765
 "checksum time 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "db8dcfca086c1143c9270ac42a2bbd8a7ee477b78ac8e45b19abfb0cbede4b6f"
403 766
 "checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86"
404 767
 "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"

+ 2 - 0
Cargo.toml View File

@@ -9,3 +9,5 @@ markdown = { git = "https://github.com/johannhof/markdown.rs" }
9 9
 chrono = "0.4"
10 10
 rss = "1.6.1"
11 11
 percent-encoding = "1.0.1"
12
+image-utils = "0.2.0"
13
+image = "0.21.0"

+ 4 - 0
build.sh View File

@@ -0,0 +1,4 @@
1
+#!/bin/bash
2
+
3
+cargo run --release
4
+cp -R web/* /home/ondra/devel/ondrovo/blog/base/bread/

+ 5 - 0
deploy.sh View File

@@ -0,0 +1,5 @@
1
+#!/bin/bash
2
+
3
+cd /home/ondra/devel/ondrovo/blog/
4
+cp -R base/bread public
5
+./deploy.sh

+ 31 - 3
src/main.rs View File

@@ -10,6 +10,10 @@ use markdown;
10 10
 use std::fs::OpenOptions;
11 11
 use rss::{Channel, ChannelBuilder, Item, ItemBuilder, Guid};
12 12
 use percent_encoding::{utf8_percent_encode, DEFAULT_ENCODE_SET};
13
+use image_utils;
14
+use chrono::offset::TimeZone;
15
+use chrono::Date;
16
+use chrono::Utc;
13 17
 
14 18
 #[derive(Debug)]
15 19
 struct Bread {
@@ -22,7 +26,14 @@ struct Bread {
22 26
 
23 27
 impl Bread {
24 28
     fn thumb_photo(&self) -> (&str, &str) {
25
-        let first_img : &PathBuf = self.images.get(0).unwrap();
29
+        let mut first_img : &PathBuf = self.images.get(0).unwrap();
30
+
31
+        for im in &self.images {
32
+            if im.file_name().unwrap().to_str().unwrap().contains("cover") {
33
+                first_img = im;
34
+                break;
35
+            }
36
+        }
26 37
 
27 38
         let img_path = first_img.to_str().unwrap();
28 39
         let img_alt = first_img.file_name().unwrap().to_str().unwrap();
@@ -75,6 +86,7 @@ fn main() {
75 86
     let web_path = Path::new(&cwd).join("web");
76 87
     let data_path = web_path.join("data");
77 88
     let tpl_path = web_path.join("templates");
89
+    let thumbs_path = web_path.join("thumbs");
78 90
 
79 91
     let mut bread_dirs: Vec<DirEntry> = fs::read_dir(&data_path).unwrap().map(|e| e.unwrap()).collect();
80 92
     bread_dirs.sort_by(|x, y| x.file_name().cmp(&y.file_name()));
@@ -107,12 +119,24 @@ fn main() {
107 119
 
108 120
     for bread in &breads {
109 121
         let date = bread.date.format("%Y/%m/%d").to_string();
110
-        let detail_file = bread.date.format("%Y-%m-%d.html").to_string();
122
+        let date_slug = bread.date.format("%Y-%m-%d").to_string();
123
+        let detail_file = date_slug.clone() + ".html";
111 124
 
112 125
         let (img_path, img_alt) = bread.thumb_photo();
113 126
         let note = if bread.note.is_empty() { "<i>There's no note about this bread.</i>" } else { &bread.note };
114 127
 
115
-        let image_path_encoded = utf8_percent_encode(img_path, DEFAULT_ENCODE_SET).to_string();
128
+        let thumb_fname = date_slug.clone() + "." + Path::new(&img_path).extension().unwrap().to_str().unwrap();
129
+        let thumb_path = thumbs_path.join(&thumb_fname);
130
+        let thumb_relpath = thumb_path.strip_prefix(&web_path).unwrap();
131
+
132
+        let image_path_encoded = utf8_percent_encode(thumb_relpath.to_str().unwrap(), DEFAULT_ENCODE_SET).to_string();
133
+
134
+        let im = image::open(&web_path.join(img_path)).unwrap();
135
+        let im = im.thumbnail(500, 500);
136
+        //let mut output = File::create(&thumb_path);
137
+        im.save(&thumb_path).unwrap();
138
+
139
+        //image_utils::resize(&web_path.join(img_path), 500, 500, &thumb_path).unwrap();
116 140
 
117 141
         // bread pic for the thumbnails page
118 142
         {
@@ -134,11 +158,15 @@ fn main() {
134 158
             guid.set_value(link.clone());
135 159
             guid.set_permalink(true);
136 160
 
161
+            let date_formatted : Date<Utc> = chrono::Utc.from_local_date(&bread.date).unwrap();
162
+            let dt = date_formatted.and_hms(12,0,0);
163
+
137 164
             channel_items.push(ItemBuilder::default()
138 165
                 .title(date.clone())
139 166
                 .link(link.clone())
140 167
                 .description(note.to_string() + &format!("<img src=\"{}\" alt=\"{}\"><p>Open the link for more...</p>", image_url, img_alt))
141 168
                 .guid(guid)
169
+                .pub_date(dt.to_rfc2822())
142 170
                 .build().unwrap());
143 171
         }
144 172
 

+ 14 - 0
web/assets/style.css View File

@@ -79,4 +79,18 @@ a {
79 79
     max-height: 500px;
80 80
     box-shadow: 0 0 5px black;
81 81
     border-radius: 5px;
82
+}
83
+
84
+#crumb {
85
+    text-align: center;
86
+    color: #999;
87
+}
88
+
89
+#crumb a {
90
+    text-decoration: underline;
91
+    color: #999;
92
+}
93
+
94
+#crumb a:hover {
95
+    color: #ccc;
82 96
 }

web/data/2018-09-19/dgs - 2 sep 19.jpg → web/data/2018-09-19/dgs - 2 sep 19 cover.jpg View File


web/data/2018-09-30/dgs - 7 sep 30.jpg → web/data/2018-09-30/dgs - 7 sep 30 cover.jpg View File


+ 2 - 1
web/data/2018-12-28/note.txt View File

@@ -1,2 +1,3 @@
1 1
 I didn't bake any bread for almost a month and the starter culture went bad. This bread didn't rise at all and was super sour.
2
-I threw the whole thing out and refreshed the starter for about a week.
2
+
3
+Was planning to eat it, but it was just disgusting. I threw the whole thing out and refreshed the starter for about a week.

web/data/2019-01-08/pleroma - 2019-01-09.jpg → web/data/2019-01-08/pleroma - 2019-01-09 cover.jpg View File


web/data/2019-01-11/pleroma - 2019-01-11 b.jpg → web/data/2019-01-11/pleroma - 2019-01-11 b cover.jpg View File


BIN
web/data/2019-01-23/2019-01-23 12.28.25.jpg View File


BIN
web/data/2019-01-23/2019-01-23 19.39.51.jpg View File


BIN
web/data/2019-01-23/2019-01-23 19.42.04 cover.jpg View File


+ 9 - 0
web/data/2019-01-23/note.txt View File

@@ -0,0 +1,9 @@
1
+This was one of the best breads yet. I didn't use any of the wholegrain wheat this time, 
2
+but the main difference was probably that I made the dough more wet (after the small dry bread
3
+fiasco) and gave it more time to rise.
4
+
5
+The starter with rye was sitting in its bowl overnight, then I mixed it with wheat, salt and spices in 
6
+the morning and let it do its work til about 2 PM. The dough was nice and stringy, as you can see in 
7
+the pictures.
8
+
9
+Also the crust came out excellent, not too thick and crunchy.

+ 55 - 20
web/feed.xml View File

@@ -10,133 +10,150 @@
10 10
         <![CDATA[<p>This was my first bread ever.</p>
11 11
 
12 12
 <p>I didn&#8217;t have a sourdough starter yet, so it used store-bought yeast. It looked okay, tasted mediocre.</p>
13
-<img src="https://www.ondrovo.com/bread/data/2018-09-19/dgs%20-%201%20sep%2019.jpg" alt="dgs - 1 sep 19.jpg"><p>Open the link for more...</p>]]>
13
+<img src="https://www.ondrovo.com/bread/thumbs/2018-09-19.jpg" alt="dgs - 2 sep 19 cover.jpg"><p>Open the link for more...</p>]]>
14 14
       </description>
15 15
       <guid>https://www.ondrovo.com/bread/2018-09-19.html</guid>
16
+      <pubDate>Wed, 19 Sep 2018 12:00:00 +0000</pubDate>
16 17
     </item>
17 18
     <item>
18 19
       <title>2018/09/26</title>
19 20
       <link>https://www.ondrovo.com/bread/2018-09-26.html</link>
20 21
       <description>
21 22
         <![CDATA[<p>My first sourdough bread. I added coriander seeds to it. Pretty good</p>
22
-<img src="https://www.ondrovo.com/bread/data/2018-09-26/dgs%20-%203%20sep%2026.jpg" alt="dgs - 3 sep 26.jpg"><p>Open the link for more...</p>]]>
23
+<img src="https://www.ondrovo.com/bread/thumbs/2018-09-26.jpg" alt="dgs - 3 sep 26.jpg"><p>Open the link for more...</p>]]>
23 24
       </description>
24 25
       <guid>https://www.ondrovo.com/bread/2018-09-26.html</guid>
26
+      <pubDate>Wed, 26 Sep 2018 12:00:00 +0000</pubDate>
25 27
     </item>
26 28
     <item>
27 29
       <title>2018/09/30</title>
28 30
       <link>https://www.ondrovo.com/bread/2018-09-30.html</link>
29 31
       <description>
30
-        <![CDATA[<i>There's no note about this bread.</i><img src="https://www.ondrovo.com/bread/data/2018-09-30/dgs%20-%205%20sep%2030.jpg" alt="dgs - 5 sep 30.jpg"><p>Open the link for more...</p>]]>
32
+        <![CDATA[<i>There's no note about this bread.</i><img src="https://www.ondrovo.com/bread/thumbs/2018-09-30.jpg" alt="dgs - 7 sep 30 cover.jpg"><p>Open the link for more...</p>]]>
31 33
       </description>
32 34
       <guid>https://www.ondrovo.com/bread/2018-09-30.html</guid>
35
+      <pubDate>Sun, 30 Sep 2018 12:00:00 +0000</pubDate>
33 36
     </item>
34 37
     <item>
35 38
       <title>2018/10/04</title>
36 39
       <link>https://www.ondrovo.com/bread/2018-10-04.html</link>
37 40
       <description>
38 41
         <![CDATA[<p>Tried cutting the dough blob before baking, like I saw in some tutorial. I think I overdid it a bit</p>
39
-<img src="https://www.ondrovo.com/bread/data/2018-10-04/dgs%20-%209%20oct%204.jpg" alt="dgs - 9 oct 4.jpg"><p>Open the link for more...</p>]]>
42
+<img src="https://www.ondrovo.com/bread/thumbs/2018-10-04.jpg" alt="dgs - 9 oct 4.jpg"><p>Open the link for more...</p>]]>
40 43
       </description>
41 44
       <guid>https://www.ondrovo.com/bread/2018-10-04.html</guid>
45
+      <pubDate>Thu,  4 Oct 2018 12:00:00 +0000</pubDate>
42 46
     </item>
43 47
     <item>
44 48
       <title>2018/10/09</title>
45 49
       <link>https://www.ondrovo.com/bread/2018-10-09.html</link>
46 50
       <description>
47 51
         <![CDATA[<p>a bit flat, but tasty</p>
48
-<img src="https://www.ondrovo.com/bread/data/2018-10-09/dgs%20-%2010%20oct%209.jpg" alt="dgs - 10 oct 9.jpg"><p>Open the link for more...</p>]]>
52
+<img src="https://www.ondrovo.com/bread/thumbs/2018-10-09.jpg" alt="dgs - 10 oct 9.jpg"><p>Open the link for more...</p>]]>
49 53
       </description>
50 54
       <guid>https://www.ondrovo.com/bread/2018-10-09.html</guid>
55
+      <pubDate>Tue,  9 Oct 2018 12:00:00 +0000</pubDate>
51 56
     </item>
52 57
     <item>
53 58
       <title>2018/10/15</title>
54 59
       <link>https://www.ondrovo.com/bread/2018-10-15.html</link>
55 60
       <description>
56 61
         <![CDATA[<p>nice crust</p>
57
-<img src="https://www.ondrovo.com/bread/data/2018-10-15/dgs%20-%2012%20oct%2015.jpg" alt="dgs - 12 oct 15.jpg"><p>Open the link for more...</p>]]>
62
+<img src="https://www.ondrovo.com/bread/thumbs/2018-10-15.jpg" alt="dgs - 12 oct 15.jpg"><p>Open the link for more...</p>]]>
58 63
       </description>
59 64
       <guid>https://www.ondrovo.com/bread/2018-10-15.html</guid>
65
+      <pubDate>Mon, 15 Oct 2018 12:00:00 +0000</pubDate>
60 66
     </item>
61 67
     <item>
62 68
       <title>2018/10/20</title>
63 69
       <link>https://www.ondrovo.com/bread/2018-10-20.html</link>
64 70
       <description>
65 71
         <![CDATA[<p>I made the dough too runny–too much water–so it spilled over the whole baking form. That&#8217;s why it&#8217;s round. I dont remember what it tasted like, probably average</p>
66
-<img src="https://www.ondrovo.com/bread/data/2018-10-20/dgs%20-%2013%20oct%2020.jpg" alt="dgs - 13 oct 20.jpg"><p>Open the link for more...</p>]]>
72
+<img src="https://www.ondrovo.com/bread/thumbs/2018-10-20.jpg" alt="dgs - 13 oct 20.jpg"><p>Open the link for more...</p>]]>
67 73
       </description>
68 74
       <guid>https://www.ondrovo.com/bread/2018-10-20.html</guid>
75
+      <pubDate>Sat, 20 Oct 2018 12:00:00 +0000</pubDate>
69 76
     </item>
70 77
     <item>
71 78
       <title>2018/10/24</title>
72 79
       <link>https://www.ondrovo.com/bread/2018-10-24.html</link>
73 80
       <description>
74
-        <![CDATA[<i>There's no note about this bread.</i><img src="https://www.ondrovo.com/bread/data/2018-10-24/dgs%20-%2014%20oct%2024.jpg" alt="dgs - 14 oct 24.jpg"><p>Open the link for more...</p>]]>
81
+        <![CDATA[<i>There's no note about this bread.</i><img src="https://www.ondrovo.com/bread/thumbs/2018-10-24.jpg" alt="dgs - 14 oct 24.jpg"><p>Open the link for more...</p>]]>
75 82
       </description>
76 83
       <guid>https://www.ondrovo.com/bread/2018-10-24.html</guid>
84
+      <pubDate>Wed, 24 Oct 2018 12:00:00 +0000</pubDate>
77 85
     </item>
78 86
     <item>
79 87
       <title>2018/10/30</title>
80 88
       <link>https://www.ondrovo.com/bread/2018-10-30.html</link>
81 89
       <description>
82 90
         <![CDATA[<p>this came out a bit more &quot;rustic&quot; than usual. the cracked crust looks nice, but it makes slicing difficult</p>
83
-<img src="https://www.ondrovo.com/bread/data/2018-10-30/dgs%20-%2015%20oct%2030.jpg" alt="dgs - 15 oct 30.jpg"><p>Open the link for more...</p>]]>
91
+<img src="https://www.ondrovo.com/bread/thumbs/2018-10-30.jpg" alt="dgs - 15 oct 30.jpg"><p>Open the link for more...</p>]]>
84 92
       </description>
85 93
       <guid>https://www.ondrovo.com/bread/2018-10-30.html</guid>
94
+      <pubDate>Tue, 30 Oct 2018 12:00:00 +0000</pubDate>
86 95
     </item>
87 96
     <item>
88 97
       <title>2018/11/06</title>
89 98
       <link>https://www.ondrovo.com/bread/2018-11-06.html</link>
90 99
       <description>
91 100
         <![CDATA[<p>Experimenting with chia seeds. Tasted okay, but a lot of the seeds didn&#8217;t stick to the bread. Maybe I should&#8217;ve put them in water for a bit first.. they get all slimy in water, might stick better</p>
92
-<img src="https://www.ondrovo.com/bread/data/2018-11-06/dgs%20-%2017%20nov%206.jpg" alt="dgs - 17 nov 6.jpg"><p>Open the link for more...</p>]]>
101
+<img src="https://www.ondrovo.com/bread/thumbs/2018-11-06.jpg" alt="dgs - 17 nov 6.jpg"><p>Open the link for more...</p>]]>
93 102
       </description>
94 103
       <guid>https://www.ondrovo.com/bread/2018-11-06.html</guid>
104
+      <pubDate>Tue,  6 Nov 2018 12:00:00 +0000</pubDate>
95 105
     </item>
96 106
     <item>
97 107
       <title>2018/11/20</title>
98 108
       <link>https://www.ondrovo.com/bread/2018-11-20.html</link>
99 109
       <description>
100 110
         <![CDATA[<p>cracked crust again</p>
101
-<img src="https://www.ondrovo.com/bread/data/2018-11-20/dgs%20-%2018%20-%20nov%2020.jpg" alt="dgs - 18 - nov 20.jpg"><p>Open the link for more...</p>]]>
111
+<img src="https://www.ondrovo.com/bread/thumbs/2018-11-20.jpg" alt="dgs - 18 - nov 20.jpg"><p>Open the link for more...</p>]]>
102 112
       </description>
103 113
       <guid>https://www.ondrovo.com/bread/2018-11-20.html</guid>
114
+      <pubDate>Tue, 20 Nov 2018 12:00:00 +0000</pubDate>
104 115
     </item>
105 116
     <item>
106 117
       <title>2018/12/28</title>
107 118
       <link>https://www.ondrovo.com/bread/2018-12-28.html</link>
108 119
       <description>
109
-        <![CDATA[<p>I didn&#8217;t bake any bread for almost a month and the starter culture went bad. This bread didn&#8217;t rise at all and was super sour. I threw the whole thing out and refreshed the starter for about a week.</p>
110
-<img src="https://www.ondrovo.com/bread/data/2018-12-28/pleroma%20-%202018-12-28.jpg" alt="pleroma - 2018-12-28.jpg"><p>Open the link for more...</p>]]>
120
+        <![CDATA[<p>I didn&#8217;t bake any bread for almost a month and the starter culture went bad. This bread didn&#8217;t rise at all and was super sour.</p>
121
+
122
+<p>Was planning to eat it, but it was just disgusting. I threw the whole thing out and refreshed the starter for about a week.</p>
123
+<img src="https://www.ondrovo.com/bread/thumbs/2018-12-28.jpg" alt="pleroma - 2018-12-28.jpg"><p>Open the link for more...</p>]]>
111 124
       </description>
112 125
       <guid>https://www.ondrovo.com/bread/2018-12-28.html</guid>
126
+      <pubDate>Fri, 28 Dec 2018 12:00:00 +0000</pubDate>
113 127
     </item>
114 128
     <item>
115 129
       <title>2019/01/02</title>
116 130
       <link>https://www.ondrovo.com/bread/2019-01-02.html</link>
117 131
       <description>
118 132
         <![CDATA[<p>First bread with the renewed starter culture. Didn&#8217;t rise much, but tasted okay.</p>
119
-<img src="https://www.ondrovo.com/bread/data/2019-01-02/pleroma%20-%202019-01-02.jpg" alt="pleroma - 2019-01-02.jpg"><p>Open the link for more...</p>]]>
133
+<img src="https://www.ondrovo.com/bread/thumbs/2019-01-02.jpg" alt="pleroma - 2019-01-02.jpg"><p>Open the link for more...</p>]]>
120 134
       </description>
121 135
       <guid>https://www.ondrovo.com/bread/2019-01-02.html</guid>
136
+      <pubDate>Wed,  2 Jan 2019 12:00:00 +0000</pubDate>
122 137
     </item>
123 138
     <item>
124 139
       <title>2019/01/06</title>
125 140
       <link>https://www.ondrovo.com/bread/2019-01-06.html</link>
126 141
       <description>
127 142
         <![CDATA[<p>that&#8217;s more like it</p>
128
-<img src="https://www.ondrovo.com/bread/data/2019-01-06/pleroma%20-%202019-01-06.jpg" alt="pleroma - 2019-01-06.jpg"><p>Open the link for more...</p>]]>
143
+<img src="https://www.ondrovo.com/bread/thumbs/2019-01-06.jpg" alt="pleroma - 2019-01-06.jpg"><p>Open the link for more...</p>]]>
129 144
       </description>
130 145
       <guid>https://www.ondrovo.com/bread/2019-01-06.html</guid>
146
+      <pubDate>Sun,  6 Jan 2019 12:00:00 +0000</pubDate>
131 147
     </item>
132 148
     <item>
133 149
       <title>2019/01/08</title>
134 150
       <link>https://www.ondrovo.com/bread/2019-01-08.html</link>
135 151
       <description>
136 152
         <![CDATA[<p>trying a new recipe - I may have finally found the right ratio of rye vs wheat flour. It&#8217;s quite simple - 1:1. Baked with 200g of each and one spoon of salt. Note the starter is rye only, so it counts into the rye amount.</p>
137
-<img src="https://www.ondrovo.com/bread/data/2019-01-08/pleroma%20-%202019-01-08.jpg" alt="pleroma - 2019-01-08.jpg"><p>Open the link for more...</p>]]>
153
+<img src="https://www.ondrovo.com/bread/thumbs/2019-01-08.jpg" alt="pleroma - 2019-01-09 cover.jpg"><p>Open the link for more...</p>]]>
138 154
       </description>
139 155
       <guid>https://www.ondrovo.com/bread/2019-01-08.html</guid>
156
+      <pubDate>Tue,  8 Jan 2019 12:00:00 +0000</pubDate>
140 157
     </item>
141 158
     <item>
142 159
       <title>2019/01/10</title>
@@ -161,27 +178,30 @@
161 178
 
162 179
 <li>5g of <em>instant</em> yeast (bought in a bunch of small bags)</li>
163 180
 </ul>
164
-<img src="https://www.ondrovo.com/bread/data/2019-01-10/pleroma%20-%202019-01-10%20a.jpg" alt="pleroma - 2019-01-10 a.jpg"><p>Open the link for more...</p>]]>
181
+<img src="https://www.ondrovo.com/bread/thumbs/2019-01-10.jpg" alt="pleroma - 2019-01-10 a.jpg"><p>Open the link for more...</p>]]>
165 182
       </description>
166 183
       <guid>https://www.ondrovo.com/bread/2019-01-10.html</guid>
184
+      <pubDate>Thu, 10 Jan 2019 12:00:00 +0000</pubDate>
167 185
     </item>
168 186
     <item>
169 187
       <title>2019/01/11</title>
170 188
       <link>https://www.ondrovo.com/bread/2019-01-11.html</link>
171 189
       <description>
172 190
         <![CDATA[<p>this one was very good</p>
173
-<img src="https://www.ondrovo.com/bread/data/2019-01-11/pleroma%20-%202019-01-11%20a.jpg" alt="pleroma - 2019-01-11 a.jpg"><p>Open the link for more...</p>]]>
191
+<img src="https://www.ondrovo.com/bread/thumbs/2019-01-11.jpg" alt="pleroma - 2019-01-11 b cover.jpg"><p>Open the link for more...</p>]]>
174 192
       </description>
175 193
       <guid>https://www.ondrovo.com/bread/2019-01-11.html</guid>
194
+      <pubDate>Fri, 11 Jan 2019 12:00:00 +0000</pubDate>
176 195
     </item>
177 196
     <item>
178 197
       <title>2019/01/14</title>
179 198
       <link>https://www.ondrovo.com/bread/2019-01-14.html</link>
180 199
       <description>
181 200
         <![CDATA[<p>nice texture, not cracked at all. this is because I added some water into the baking form, so it made steam. like you&#8217;re supposed to.</p>
182
-<img src="https://www.ondrovo.com/bread/data/2019-01-14/pleroma%20-%202019-01-14.jpg" alt="pleroma - 2019-01-14.jpg"><p>Open the link for more...</p>]]>
201
+<img src="https://www.ondrovo.com/bread/thumbs/2019-01-14.jpg" alt="pleroma - 2019-01-14.jpg"><p>Open the link for more...</p>]]>
183 202
       </description>
184 203
       <guid>https://www.ondrovo.com/bread/2019-01-14.html</guid>
204
+      <pubDate>Mon, 14 Jan 2019 12:00:00 +0000</pubDate>
185 205
     </item>
186 206
     <item>
187 207
       <title>2019/01/19</title>
@@ -190,9 +210,24 @@
190 210
         <![CDATA[<p>made the dough too dry, so it couldn&#8217;t rise properly. also didn&#8217;t do the steam thing. all in all a disaster</p>
191 211
 
192 212
 <p>but it tasted okay regardless</p>
193
-<img src="https://www.ondrovo.com/bread/data/2019-01-19/pleroma%20-%202019-01-19%20a.jpg" alt="pleroma - 2019-01-19 a.jpg"><p>Open the link for more...</p>]]>
213
+<img src="https://www.ondrovo.com/bread/thumbs/2019-01-19.jpg" alt="pleroma - 2019-01-19 a.jpg"><p>Open the link for more...</p>]]>
194 214
       </description>
195 215
       <guid>https://www.ondrovo.com/bread/2019-01-19.html</guid>
216
+      <pubDate>Sat, 19 Jan 2019 12:00:00 +0000</pubDate>
217
+    </item>
218
+    <item>
219
+      <title>2019/01/23</title>
220
+      <link>https://www.ondrovo.com/bread/2019-01-23.html</link>
221
+      <description>
222
+        <![CDATA[<p>This was one of the best breads yet. I didn&#8217;t use any of the wholegrain wheat this time, but the main difference was probably that I made the dough more wet (after the small dry bread fiasco) and gave it more time to rise.</p>
223
+
224
+<p>The starter with rye was sitting in its bowl overnight, then I mixed it with wheat, salt and spices in the morning and let it do its work til about 2 PM. The dough was nice and stringy, as you can see in the pictures.</p>
225
+
226
+<p>Also the crust came out excellent, not too thick and crunchy.</p>
227
+<img src="https://www.ondrovo.com/bread/thumbs/2019-01-23.jpg" alt="2019-01-23 19.42.04 cover.jpg"><p>Open the link for more...</p>]]>
228
+      </description>
229
+      <guid>https://www.ondrovo.com/bread/2019-01-23.html</guid>
230
+      <pubDate>Wed, 23 Jan 2019 12:00:00 +0000</pubDate>
196 231
     </item>
197 232
   </channel>
198 233
 </rss>

+ 2 - 0
web/templates/detail.html View File

@@ -19,5 +19,7 @@
19 19
             {images}
20 20
         </div>
21 21
     </section>
22
+
23
+    <p id="crumb"><a href="index.html">Back to gallery</a></p>
22 24
 </body>
23 25
 </html>

+ 2 - 0
web/templates/index.html View File

@@ -12,6 +12,8 @@
12 12
   <body>
13 13
     <h1>Piggo's Bread Gallery</h1>
14 14
 
15
+    <p id="crumb">Like and <a href="feed.xml">subscribe</a></p>
16
+
15 17
     <div class="MainGallery">
16 18
         {breads}
17 19
     </div>

BIN
web/thumbs/2018-09-19.jpg View File


BIN
web/thumbs/2018-09-26.jpg View File


BIN
web/thumbs/2018-09-30.jpg View File


BIN
web/thumbs/2018-10-04.jpg View File


BIN
web/thumbs/2018-10-09.jpg View File


BIN
web/thumbs/2018-10-15.jpg View File


BIN
web/thumbs/2018-10-20.jpg View File


BIN
web/thumbs/2018-10-24.jpg View File


BIN
web/thumbs/2018-10-30.jpg View File


BIN
web/thumbs/2018-11-06.jpg View File


BIN
web/thumbs/2018-11-20.jpg View File


BIN
web/thumbs/2018-12-28.jpg View File


BIN
web/thumbs/2019-01-02.jpg View File


BIN
web/thumbs/2019-01-06.jpg View File


BIN
web/thumbs/2019-01-08.jpg View File


BIN
web/thumbs/2019-01-10.jpg View File


BIN
web/thumbs/2019-01-11.jpg View File


BIN
web/thumbs/2019-01-14.jpg View File


BIN
web/thumbs/2019-01-19.jpg View File


BIN
web/thumbs/2019-01-23.jpg View File