I get told to shut up a lot by my friend. This is the microsite that documents this in detail. shutup.jp
postcards microsite
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

Upgrade for new version of postcards!

- Decreases size of postcard files (11MB still though!)
- Allows for auto-processing of transparency

+60 -109
+2
TODO.md
··· 7 7 - [ ] Safari rotates the back side of the postcard the opposite direction to _every other browser_. Which is extremely annoying. I need to figure out a workaround. 8 8 - [ ] Fix locale flags for Windows users 9 9 - [ ] In roughly square mode (portrait side), clicking on a postcard jumps to the previous postcard? 10 + - [ ] Reintroduce locale flags, now I'm using the new format 10 11 11 12 ### Ideas 12 13 13 14 - [ ] Include a map, blocking off the parts of the world that I've received a postcard from. Voronoi colouring for countries with more than one? 14 15 - [ ] Add forward/back buttons (use these as spacers to vertically centre the portrait version?) 16 + - [ ] Swap over to using XMP metadata (once decoding is supported by the library) 15 17 16 18 ### Done ✔ 17 19
+2 -1
Taskfile.yml
··· 21 21 postcards: 22 22 desc: Pulls postcards from `ORIGINAL_POSTCARDS` (as specified in `.env`) 23 23 cmds: 24 - - for y in "${ORIGINAL_POSTCARDS}"/*.yaml; do postcards compile --outdir ./postcards --web --override "$y"; done 24 + - postcards -f web,json --out-dir ./postcards "${ORIGINAL_POSTCARDS}"/* 25 +
+2 -2
feed.xml.tmpl
··· 16 16 <link>https://shutup.jp/#{{ .Name }}</link> 17 17 <pubDate>{{ with .Meta.SentOn }}{{ .Format "Mon, 02 Jan 2006 15:04:05 -0700" }}{{ end }}</pubDate> 18 18 <guid isPermaLink="false">{{ .Name }}</guid> 19 - <description>{{- .Meta.Back.Transcription.Text -}}</description> 19 + <description>{{- .Meta.Back.Transcription.Text | htmlEscape -}}</description> 20 20 <content:encoded> 21 21 <![CDATA[ 22 - <img src="https://shutup.jp/{{.Name}}.webp" alt="{{ .Meta | altText }}”" /> 22 + <img src="https://shutup.jp/{{.Name}}.webp" alt="{{ .Meta | altText | htmlEscape }}”" /> 23 23 <p>{{- .Meta.Back.Transcription.Text -}}</p> 24 24 ]]> 25 25 </content:encoded>
+7 -7
funcs.go
··· 20 20 return pcs[len(pcs)-1] 21 21 } 22 22 23 - func safeHTML(str string) ht.HTML { 24 - return ht.HTML(str) 23 + func htmlEscape(str string) string { 24 + return tt.HTMLEscapeString(str) 25 25 } 26 26 27 27 func plainify(str string) string { ··· 34 34 } 35 35 36 36 var funcs = ht.FuncMap{ 37 - "safeHTML": safeHTML, 38 - "lastPC": lastPC, 39 - "now": now, 40 - "plainify": plainify, 41 - "altText": altText, 37 + "htmlEscape": htmlEscape, 38 + "lastPC": lastPC, 39 + "now": now, 40 + "plainify": plainify, 41 + "altText": altText, 42 42 } 43 43 44 44 //go:embed index.html.tmpl
+5 -3
go.mod
··· 4 4 5 5 require ( 6 6 github.com/gohugoio/hugo v0.127.0 7 - github.com/jphastings/dotpostcard v0.0.0-00010101000000-000000000000 7 + github.com/jphastings/dotpostcard v0.0.0-20240727232734-9c5ceed0775e 8 8 ) 9 9 10 - replace github.com/jphastings/dotpostcard => ../postcards 11 - 12 10 require ( 13 11 git.sr.ht/~sbinet/cmpimg v0.1.0 // indirect 14 12 git.sr.ht/~sbinet/gg v0.5.0 // indirect 13 + github.com/armon/go-radix v1.0.1-0.20221118154546-54df44f2176c // indirect 15 14 github.com/bep/clocks v0.5.0 // indirect 16 15 github.com/bep/godartsass v1.2.0 // indirect 17 16 github.com/bep/godartsass/v2 v2.0.0 // indirect 18 17 github.com/bep/golibsass v1.1.1 // indirect 19 18 github.com/bep/logg v0.4.0 // indirect 19 + github.com/bep/overlayfs v0.9.2 // indirect 20 20 github.com/chai2010/webp v1.1.1 // indirect 21 21 github.com/clbanning/mxj/v2 v2.7.0 // indirect 22 22 github.com/cli/safeexec v1.0.1 // indirect ··· 52 52 github.com/pmezard/go-difflib v1.0.0 // indirect 53 53 github.com/spf13/afero v1.11.0 // indirect 54 54 github.com/spf13/cast v1.6.0 // indirect 55 + github.com/spf13/cobra v1.8.1 // indirect 56 + github.com/spf13/pflag v1.0.5 // indirect 55 57 github.com/stretchr/testify v1.9.0 // indirect 56 58 github.com/sunshineplan/tiff v0.0.0-20220128141034-29b9d69bd906 // indirect 57 59 github.com/tdewolff/parse/v2 v2.7.13 // indirect
+2 -57
go.sum
··· 1 1 cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= 2 - git.sr.ht/~sbinet/cmpimg v0.1.0 h1:E0zPRk2muWuCqSKSVZIWsgtU9pjsw3eKHi8VmQeScxo= 3 - git.sr.ht/~sbinet/cmpimg v0.1.0/go.mod h1:FU12psLbF4TfNXkKH2ZZQ29crIqoiqTZmeQ7dkp/pxE= 4 - git.sr.ht/~sbinet/gg v0.5.0 h1:6V43j30HM623V329xA9Ntq+WJrMjDxRjuAB1LFWF5m8= 5 - git.sr.ht/~sbinet/gg v0.5.0/go.mod h1:G2C0eRESqlKhS7ErsNey6HHrqU1PwsnCQlekFi9Q2Oo= 6 2 github.com/BurntSushi/locker v0.0.0-20171006230638-a6e239ea1c69 h1:+tu3HOoMXB7RXEINRVIpxJCT+KdYiI7LAEAUrOw3dIU= 7 3 github.com/BurntSushi/locker v0.0.0-20171006230638-a6e239ea1c69/go.mod h1:L1AbZdiDllfyYH5l5OkAaZtk7VkWe89bPJFmnDBNHxg= 8 4 github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= ··· 37 33 github.com/bep/workers v1.0.0 h1:U+H8YmEaBCEaFZBst7GcRVEoqeRC9dzH2dWOwGmOchg= 38 34 github.com/bep/workers v1.0.0/go.mod h1:7kIESOB86HfR2379pwoMWNy8B50D7r99fRLUyPSNyCs= 39 35 github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= 40 - github.com/chai2010/webp v1.1.1 h1:jTRmEccAJ4MGrhFOrPMpNGIJ/eybIgwKpcACsrTEapk= 41 - github.com/chai2010/webp v1.1.1/go.mod h1:0XVwvZWdjjdxpUEIf7b9g9VkHFnInUSYujwqTLEuldU= 42 36 github.com/clbanning/mxj/v2 v2.7.0 h1:WA/La7UGCanFe5NpHF0Q3DNtnCsVoxbPKuyBNHWRyME= 43 37 github.com/clbanning/mxj/v2 v2.7.0/go.mod h1:hNiWqW14h+kc+MdF9C6/YoRfjEJoR3ou6tn/Qo+ve2s= 44 38 github.com/cli/safeexec v1.0.0/go.mod h1:Z/D4tTN8Vs5gXYHDCbaM1S/anmEDnJb1iW0+EJ5zx3Q= ··· 53 47 github.com/disintegration/gift v1.2.1/go.mod h1:Jh2i7f7Q2BM7Ezno3PhfezbR1xpUg9dUg3/RlKGr4HI= 54 48 github.com/dlclark/regexp2 v1.11.0 h1:G/nrcoOa7ZXlpoa/91N3X7mM3r8eIlMBBJZvsz/mxKI= 55 49 github.com/dlclark/regexp2 v1.11.0/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8= 56 - github.com/dsoprea/go-exif/v2 v2.0.0-20200321225314-640175a69fe4/go.mod h1:Lm2lMM2zx8p4a34ZemkaUV95AnMl4ZvLbCUbwOvLC2E= 57 - github.com/dsoprea/go-exif/v2 v2.0.0-20200604193436-ca8584a0e1c4 h1:Mg7pY7kxDQD2Bkvr1N+XW4BESSIQ7tTTR7Vv+Gi2CsM= 58 - github.com/dsoprea/go-exif/v2 v2.0.0-20200604193436-ca8584a0e1c4/go.mod h1:9EXlPeHfblFFnwu5UOqmP2eoZfJyAZ2Ri/Vki33ajO0= 59 - github.com/dsoprea/go-exif/v3 v3.0.0-20200717053412-08f1b6708903/go.mod h1:0nsO1ce0mh5czxGeLo4+OCZ/C6Eo6ZlMWsz7rH/Gxv8= 60 - github.com/dsoprea/go-exif/v3 v3.0.0-20210512043655-120bcdb2a55e h1:E4XTSQZF/JtOQWcSaJBJho7t+RNWfdO92W/5skg10Jk= 61 - github.com/dsoprea/go-exif/v3 v3.0.0-20210512043655-120bcdb2a55e/go.mod h1:cg5SNYKHMmzxsr9X6ZeLh/nfBRHHp5PngtEPcujONtk= 62 - github.com/dsoprea/go-iptc v0.0.0-20200609062250-162ae6b44feb h1:gwjJjUr6FY7zAWVEueFPrcRHhd9+IK81TcItbqw2du4= 63 - github.com/dsoprea/go-iptc v0.0.0-20200609062250-162ae6b44feb/go.mod h1:kYIdx9N9NaOyD7U6D+YtExN7QhRm+5kq7//yOsRXQtM= 64 - github.com/dsoprea/go-jpeg-image-structure v0.0.0-20221012074422-4f3f7e934102 h1:P1dsxzctGkmG6Zf7gH2xrZhNXWP5/FuLDI7xbCGsWTo= 65 - github.com/dsoprea/go-jpeg-image-structure v0.0.0-20221012074422-4f3f7e934102/go.mod h1:6+tQXZ+I62x13UZ+hemLVoZIuq/usVzvau7bqwUo9P0= 66 - github.com/dsoprea/go-logging v0.0.0-20190624164917-c4f10aab7696/go.mod h1:Nm/x2ZUNRW6Fe5C3LxdY1PyZY5wmDv/s5dkPJ/VB3iA= 67 - github.com/dsoprea/go-logging v0.0.0-20200517223158-a10564966e9d h1:F/7L5wr/fP/SKeO5HuMlNEX9Ipyx2MbH2rV9G4zJRpk= 68 - github.com/dsoprea/go-logging v0.0.0-20200517223158-a10564966e9d/go.mod h1:7I+3Pe2o/YSU88W0hWlm9S22W7XI1JFNJ86U0zPKMf8= 69 - github.com/dsoprea/go-photoshop-info-format v0.0.0-20200609050348-3db9b63b202c h1:7j5aWACOzROpr+dvMtu8GnI97g9ShLWD72XIELMgn+c= 70 - github.com/dsoprea/go-photoshop-info-format v0.0.0-20200609050348-3db9b63b202c/go.mod h1:pqKB+ijp27cEcrHxhXVgUUMlSDRuGJJp1E+20Lj5H0E= 71 - github.com/dsoprea/go-png-image-structure v0.0.0-20210512210324-29b889a6093d h1:8+qI8ant/vZkNSsbwSjIR6XJfWcDVTg/qx/3pRUUZNA= 72 - github.com/dsoprea/go-png-image-structure v0.0.0-20210512210324-29b889a6093d/go.mod h1:yTR3tKgyk20phAFg6IE9ulMA5NjEDD2wyx+okRFLVtw= 73 - github.com/dsoprea/go-tiff-image-structure v0.0.0-20221003165014-8ecc4f52edca h1:C0gA/12rFBjBZU+NipamTpthuJaAReN4Ydx63WRqphM= 74 - github.com/dsoprea/go-tiff-image-structure v0.0.0-20221003165014-8ecc4f52edca/go.mod h1:Lro6zqt9pr9yVPwBaM5ijpieYLc4Fy+ObmL5SKP7LrU= 75 - github.com/dsoprea/go-utility v0.0.0-20200711062821-fab8125e9bdf h1:/w4QxepU4AHh3AuO6/g8y/YIIHH5+aKP3Bj8sg5cqhU= 76 - github.com/dsoprea/go-utility v0.0.0-20200711062821-fab8125e9bdf/go.mod h1:95+K3z2L0mqsVYd6yveIv1lmtT3tcQQ3dVakPySffW8= 77 - github.com/dsoprea/go-utility/v2 v2.0.0-20200717064901-2fccff4aa15e h1:IxIbA7VbCNrwumIYjDoMOdf4KOSkMC6NJE4s8oRbE7E= 78 - github.com/dsoprea/go-utility/v2 v2.0.0-20200717064901-2fccff4aa15e/go.mod h1:uAzdkPTub5Y9yQwXe8W4m2XuP0tK4a9Q/dantD0+uaU= 79 50 github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= 80 51 github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= 81 - github.com/ernyoke/imger v1.0.0 h1:v+vnOpZwCfet5AUruwhN54g9v8CnhKOB3ZCsMIa5AZ0= 82 - github.com/ernyoke/imger v1.0.0/go.mod h1:Ft4UQ3taMpn8EVVLWRlT0ijOvMTKZZqhXXR4VzCsAT4= 83 52 github.com/evanw/esbuild v0.20.2 h1:E4Y0iJsothpUCq7y0D+ERfqpJmPWrZpNybJA3x3I4p8= 84 53 github.com/evanw/esbuild v0.20.2/go.mod h1:D2vIQZqV/vIf/VRHtViaUtViZmG7o+kKmlBfVQuRi48= 85 54 github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= ··· 95 64 github.com/getkin/kin-openapi v0.123.0/go.mod h1:wb1aSZA/iWmorQP9KTAS/phLj/t17B5jT7+fS8ed9NM= 96 65 github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= 97 66 github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= 98 - github.com/go-errors/errors v1.0.1/go.mod h1:f4zRHt4oKfwPJE5k8C9vpYG+aDHdBFUsgrm6/TyX73Q= 99 - github.com/go-errors/errors v1.0.2/go.mod h1:psDX2osz5VnTOnFWbDeWwS7yejl+uV3FEWEp4lssFEs= 100 - github.com/go-errors/errors v1.1.1 h1:ljK/pL5ltg3qoN+OtN6yCv9HWSfMwxSx90GJCZQxYNg= 101 - github.com/go-errors/errors v1.1.1/go.mod h1:psDX2osz5VnTOnFWbDeWwS7yejl+uV3FEWEp4lssFEs= 102 67 github.com/go-openapi/jsonpointer v0.20.2 h1:mQc3nmndL8ZBzStEo3JYF8wzmeWffDH4VbXz58sAx6Q= 103 68 github.com/go-openapi/jsonpointer v0.20.2/go.mod h1:bHen+N0u1KEO3YlmqOjTT9Adn1RfD91Ar825/PuiRVs= 104 69 github.com/go-openapi/swag v0.22.8 h1:/9RjDSQ0vbFR+NyjGMkFTsA1IA0fmhKSThmfGZjicbw= 105 70 github.com/go-openapi/swag v0.22.8/go.mod h1:6QT22icPLEqAM/z/TChgb4WAveCHF92+2gF0CNjHpPI= 106 - github.com/go-xmlfmt/xmlfmt v0.0.0-20191208150333-d5b6f63a941b h1:khEcpUM4yFcxg4/FHQWkvVRmgijNXRfzkIDHh23ggEo= 107 - github.com/go-xmlfmt/xmlfmt v0.0.0-20191208150333-d5b6f63a941b/go.mod h1:aUCEOzzezBEjDBbFBoSiya/gduyIiWYRP6CnSFIV8AM= 108 71 github.com/gobuffalo/flect v1.0.2 h1:eqjPGSo2WmjgY2XlpGwo2NXgL3RucAKo4k4qQMNA5sA= 109 72 github.com/gobuffalo/flect v1.0.2/go.mod h1:A5msMlrHtLqh9umBSnvabjsMrCcCpAyzglnDvkbYKHs= 110 73 github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= ··· 123 86 github.com/gohugoio/locales v0.14.0/go.mod h1:ip8cCAv/cnmVLzzXtiTpPwgJ4xhKZranqNqtoIu0b/4= 124 87 github.com/gohugoio/localescompressed v1.0.1 h1:KTYMi8fCWYLswFyJAeOtuk/EkXR/KPTHHNN9OS+RTxo= 125 88 github.com/gohugoio/localescompressed v1.0.1/go.mod h1:jBF6q8D7a0vaEmcWPNcAjUZLJaIVNiwvM3WlmTvooB0= 126 - github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 h1:DACJavvAHhabrF08vX0COfcOBJRhZ8lUbR+ZWIs0Y5g= 127 - github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k= 128 - github.com/golang/geo v0.0.0-20190916061304-5b978397cfec/go.mod h1:QZ0nwyI2jOfgRAoBvP+ab5aRr7c9x7lhGEJrKvBwjWI= 129 - github.com/golang/geo v0.0.0-20200319012246-673a6f80352d h1:C/hKUcHT483btRbeGkrRjJz+Zbcj8audldIi9tRJDCc= 130 - github.com/golang/geo v0.0.0-20200319012246-673a6f80352d/go.mod h1:QZ0nwyI2jOfgRAoBvP+ab5aRr7c9x7lhGEJrKvBwjWI= 131 89 github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= 132 90 github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= 133 91 github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= ··· 151 109 github.com/hairyhenderson/go-codeowners v0.4.0/go.mod h1:iJgZeCt+W/GzXo5uchFCqvVHZY2T4TAIpvuVlKVkLxc= 152 110 github.com/hashicorp/golang-lru/v2 v2.0.7 h1:a+bsQ5rvGLjzHuww6tVxozPZFVghXaHOwFs4luLUK2k= 153 111 github.com/hashicorp/golang-lru/v2 v2.0.7/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyfM2/ZepoAG6RGpeM= 154 - github.com/hhrutter/lzw v1.0.0 h1:laL89Llp86W3rRs83LvKbwYRx6INE8gDn0XNb1oXtm0= 155 - github.com/hhrutter/lzw v1.0.0/go.mod h1:2HC6DJSn/n6iAZfgM3Pg+cP1KxeWc3ezG8bBqW5+WEo= 156 112 github.com/invopop/yaml v0.2.0 h1:7zky/qH+O0DwAyoobXUqvVBwgBFRxKoQ/3FjcVpjTMY= 157 113 github.com/invopop/yaml v0.2.0/go.mod h1:2XuRLgs/ouIrW3XNzuNj7J3Nvu/Dig5MXvbCEdiBN3Q= 158 114 github.com/jdkato/prose v1.2.1 h1:Fp3UnJmLVISmlc57BgKUzdjr0lOtjqTZicL3PaYy6cU= 159 115 github.com/jdkato/prose v1.2.1/go.mod h1:AiRHgVagnEx2JbQRQowVBKjG0bcs/vtkGCH1dYAL1rA= 160 - github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= 161 116 github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= 162 117 github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= 118 + github.com/jphastings/dotpostcard v0.0.0-20240727232734-9c5ceed0775e h1:fj2dkDQc6OYENIFOCExEsxzOH2N4PD7hf1zNX4MQITY= 119 + github.com/jphastings/dotpostcard v0.0.0-20240727232734-9c5ceed0775e/go.mod h1:68L9zp0miQyeHGXmBOpvbQdqIebd6cK1HQsCBfSeZ7A= 163 120 github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= 164 121 github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= 165 122 github.com/kr/pretty v0.3.0/go.mod h1:640gp4NfQd8pI5XOwp5fnNeVWj67G7CFk/SaSQn7NBk= ··· 227 184 github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= 228 185 github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= 229 186 github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= 230 - github.com/sunshineplan/tiff v0.0.0-20220128141034-29b9d69bd906 h1:+yYRCj+PGQNnnen4+/Q7eKD2J87RJs+O39bjtHhPauk= 231 - github.com/sunshineplan/tiff v0.0.0-20220128141034-29b9d69bd906/go.mod h1:O+Ar7ouRbdfxLgoZLFz447/dvdM1NVKk1VpOQaijvAU= 232 187 github.com/tdewolff/minify/v2 v2.20.20 h1:vhULb+VsW2twkplgsawAoUY957efb+EdiZ7zu5fUhhk= 233 188 github.com/tdewolff/minify/v2 v2.20.20/go.mod h1:GYaLXFpIIwsX99apQHXfGdISUdlA98wmaoWxjT9C37k= 234 189 github.com/tdewolff/parse/v2 v2.7.13 h1:iSiwOUkCYLNfapHoqdLcqZVgvQ0jrsao8YYKP/UJYTI= ··· 259 214 golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 260 215 golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= 261 216 golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= 262 - golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= 263 - golang.org/x/net v0.0.0-20200320220750-118fecf932d8/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= 264 - golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= 265 - golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= 266 - golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= 267 217 golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= 268 218 golang.org/x/net v0.25.0 h1:d/OCCoBEUq33pjydKrGQhw7IlUPI2Oylr+8qLx49kac= 269 219 golang.org/x/net v0.25.0/go.mod h1:JkAGAh7GEvH74S6FOH42FLoXpXbE/aqXSrIQjXgsiwM= ··· 277 227 golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= 278 228 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= 279 229 golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 280 - golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 281 230 golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 282 231 golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= 283 232 golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= ··· 326 275 gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= 327 276 gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= 328 277 gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= 329 - gopkg.in/yaml.v2 v2.2.7/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= 330 - gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= 331 278 gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= 332 279 gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= 333 280 gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= ··· 335 282 gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= 336 283 honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= 337 284 honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= 338 - rsc.io/pdf v0.1.1 h1:k1MczvYDUvJBe93bYd7wrZLLUEcLZAuF824/I4e5Xr4= 339 - rsc.io/pdf v0.1.1/go.mod h1:n8OzWcQ6Sp37PL01nO98y4iUCRdTGarVfzxY20ICaU4=
+2 -2
index.html.tmpl
··· 27 27 <figure> 28 28 <input type="checkbox" id="{{.Name}}"> 29 29 <label for="{{.Name}}"> 30 - <div class="postcard {{ .Meta.Flip }} {{ if gt .Meta.Physical.FrontDimensions.PxHeight .Meta.Physical.FrontDimensions.PxWidth }}portrait{{ else }}landscape{{ end }}" style="--postcard: url('{{ .Name }}.webp'); --aspect-ratio: {{ .Meta.Physical.FrontDimensions.PxWidth }} / {{ .Meta.Physical.FrontDimensions.PxHeight }}"> 31 - <img src="{{ .Name }}.webp" loading="lazy" alt="{{ .Meta | altText }}" width="500px"> 30 + <div class="postcard {{ .Meta.Flip }} {{ if gt .Meta.Physical.FrontDimensions.PxHeight .Meta.Physical.FrontDimensions.PxWidth }}portrait{{ else }}landscape{{ end }}" style="--postcard: url('{{ .Name }}.postcard.webp'); --aspect-ratio: {{ .Meta.Physical.FrontDimensions.PxWidth }} / {{ .Meta.Physical.FrontDimensions.PxHeight }}"> 31 + <img src="{{ .Name }}.postcard.webp" loading="lazy" alt="{{ .Meta | altText }}" width="500px"> 32 32 <div class="shadow"></div> 33 33 </div> 34 34 </label>
+1 -1
main.go
··· 43 43 pc, err := b.Decode(nil) 44 44 check(err) 45 45 46 - imgName := "postcards/" + pc.Name + ".postcard" 46 + imgName := "postcards/" + pc.Name + ".postcard.webp" 47 47 // fs, err := os.Stat(imgName) 48 48 // check(err) 49 49 // pc.ImgSize = fs.Size()
+1
postcards/athens-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Athens, Greece","latitude":37.9720629,"longitude":23.7218496},"flip":"book","sentOn":"2022-05-15","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A view of Athens' Old Town at dusk, towards the Acropolis. The town's lights glow a golden yellow, as do the lights illuminating the Acropolis itself.","transcription":{}},"back":{"transcription":{"text":"Σκάσε, JP!","annotations":[{"type":"locale","value":"el-GR","start":0,"end":10}]},"secrets":[{"prehidden":true,"points":[[0.5573217726,0.4476987448],[0.9494219653,0.4476987448],[0.9494219653,0.5962343097],[0.5573217726,0.5962343097]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"519/32","cmH":"717/64","pxW":2076,"pxH":1434}}}
-1
postcards/athens.json
··· 1 - {"locale":"en-GB","location":{"name":"Athens, Greece","lat":37.9720629,"long":23.7218496},"flip":"book","sentOn":"2022-05-15","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A view of Athens' Old Town at dusk, towards the Acropolis. The town's lights glow a golden yellow, as do the lights illuminating the Acropolis itself."},"back":{"transcription":"\u003cspan lang=\"el-GR\"\u003eΣκάσε, JP!\u003c/span\u003e","secrets":[[[0.5573217726,0.4476987448],[0.9494219653,0.4476987448],[0.9494219653,0.5962343097],[0.5573217726,0.5962343097]]]},"frontSize":{"cmW":"519/32","cmH":"717/32","pxW":2076,"pxH":1434},"context":{"author":{"name":""},"description":""}}
postcards/athens.postcard.webp

This is a binary file and will not be displayed.

postcards/athens.webp

This is a binary file and will not be displayed.

+1
postcards/big-pit-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Big Pit National Coal Museum, Wales, UK","latitude":51.77242287556142,"longitude":-3.1046103152588698},"flip":"book","sentOn":"2022-11-05","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"An illustration of the words \"BIG PIT\" shaped to look like a mountain with a coal mine atop it.","transcription":{}},"back":{"transcription":{"text":"Cau i fyny, JP","annotations":[{"type":"locale","value":"cy-GB","start":0,"end":14}]},"secrets":[{"prehidden":true,"points":[[0.6360327571,0.467648943],[0.8234758872,0.467648943],[0.8234758872,0.7405509289],[0.6360327571,0.7405509289]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"1099/64","cmH":"1561/128","pxW":2198,"pxH":1561}}}
-1
postcards/big-pit.json
··· 1 - {"locale":"en-GB","location":{"name":"Big Pit National Coal Museum, Wales, UK","lat":51.77242287556142,"long":-3.1046103152588698},"flip":"book","sentOn":"2022-11-05","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"An illustration of the words \"BIG PIT\" shaped to look like a mountain with a coal mine atop it."},"back":{"transcription":"\u003cspan lang=\"cy-GB\"\u003eCau i fyny, JP\u003c/span\u003e","secrets":[[[0.6360327571,0.467648943],[0.8234758872,0.467648943],[0.8234758872,0.7405509289],[0.6360327571,0.7405509289]]]},"frontSize":{"cmW":"1099/64","cmH":"1561/64","pxW":2198,"pxH":1561},"context":{"author":{"name":""},"description":""}}
postcards/big-pit.postcard.webp

This is a binary file and will not be displayed.

postcards/big-pit.webp

This is a binary file and will not be displayed.

+1
postcards/boston-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Boston, Massachusetts, USA","latitude":42.34304,"longitude":-71.03009},"flip":"book","sentOn":"2022-09-02","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A reproduction of a painting representing the Boston Tea Party — sailors throwing boxes of tea into the sea from their ships. Overlayed with text saying \"The Boston Tea Party\" and \"1773\".","transcription":{}},"back":{"transcription":{"text":"\u003cBoston accent\u003e\nShut up JP\n\u003c/Boston accent\u003e\n","annotations":[{"type":"locale","value":"en-US","start":0,"end":43}]},"secrets":[{"prehidden":true,"points":[[0.6064483112,0.4300291545],[0.9687819857,0.4300291545],[0.9687819857,0.6771137026],[0.6064483112,0.6771137026]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"977/64","cmH":"343/32","pxW":1954,"pxH":1372}}}
-1
postcards/boston.json
··· 1 - {"locale":"en-GB","location":{"name":"Boston, Massachusetts, USA","lat":42.34304,"long":-71.03009},"flip":"book","sentOn":"2022-09-02","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A reproduction of a painting representing the Boston Tea Party — sailors throwing boxes of tea into the sea from their ships. Overlayed with text saying \"The Boston Tea Party\" and \"1773\"."},"back":{"transcription":"\u003cspan lang=\"en-US\"\u003e\u0026lt;Boston accent\u0026gt;\nShut up JP\n\u0026lt;/Boston accent\u0026gt;\u003c/span\u003e\n","secrets":[[[0.6064483112,0.4300291545],[0.9687819857,0.4300291545],[0.9687819857,0.6771137026],[0.6064483112,0.6771137026]]]},"frontSize":{"cmW":"977/64","cmH":"343/16","pxW":1954,"pxH":1372},"context":{"author":{"name":""},"description":""}}
postcards/boston.postcard.webp

This is a binary file and will not be displayed.

postcards/boston.webp

This is a binary file and will not be displayed.

+1
postcards/cambodia-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Angkor Wat, Cambodia","latitude":13.412406663980926,"longitude":103.8669642414902},"flip":"book","sentOn":"2017-05-05","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photograph of Angkor Wat across a lake, at sunset.","transcription":{}},"back":{"description":"A simple postcard back including a description of Angkor Wat: The spectacular Angkor Wat 'the temple mountain' rises 65 metres and dates back to the 8th century. Its moat, enclosures and towers were constructed in the Khmer method symbolizing the centre of the Hindu Universe, Mount Meru.","transcription":{"text":"បិទមាត់! Shut up JP","annotations":[{"type":"locale","value":"km-KH","start":0,"end":9}]},"secrets":[{"prehidden":true,"points":[[0.6217561322,0.5842857143],[0.9619623178000001,0.5842857143],[0.9619623178000001,0.8042857143],[0.6217561322,0.8042857143]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"2813/128","cmH":"175/16","pxW":2813,"pxH":1400}}}
-1
postcards/cambodia.json
··· 1 - {"locale":"en-GB","location":{"name":"Angkor Wat, Cambodia","lat":13.412406663980926,"long":103.8669642414902},"flip":"book","sentOn":"2017-05-05","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photograph of Angkor Wat across a lake, at sunset."},"back":{"description":"A simple postcard back including a description of Angkor Wat: The spectacular Angkor Wat 'the temple mountain' rises 65 metres and dates back to the 8th century. Its moat, enclosures and towers were constructed in the Khmer method symbolizing the centre of the Hindu Universe, Mount Meru.","transcription":"\u003cspan lang=\"km-KH\"\u003eបិទមាត់! Shut up JP\u003c/span\u003e","secrets":[[[0.6217561322,0.5842857143],[0.9619623178000001,0.5842857143],[0.9619623178000001,0.8042857143],[0.6217561322,0.8042857143]]]},"frontSize":{"cmW":"2813/128","cmH":"175/8","pxW":2813,"pxH":1400},"context":{"author":{"name":""},"description":""}}
postcards/cambodia.postcard.webp

This is a binary file and will not be displayed.

postcards/cambodia.webp

This is a binary file and will not be displayed.

+1
postcards/canada-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Spitfire Cafe, Ottawa, Canada","latitude":44.5906072,"longitude":-75.6834661},"flip":"book","sentOn":"2020-01-26","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A collage of smaller photos showing aspects of the Spitfire Cafe. Clockwise from top left: an ornate ceiling light with two small fans; a cluster of three pillar candles; a collection of card and postcard stacks, \"cards $5\"; a close-up of what looks like a chrome bumper on a glossy teal background, with the Spitefire Cafe logo overprinted; a low upright piano keyboard next to a yellow wall; (in the centre) a coffee in a chipped mug with a heart visible in the milk froth.","transcription":{}},"back":{"description":"A postcard made by the Spitfire Cafe with its address and phone number beneath the logo: 10 Victoria Ave, Brockville, ON K6V 2B1, Canada (613) 865-9348. At the bottom of the card it says: Brockville's finest cafe serving up the best in coffee, food and music. We specialize in local artisan crafts \u0026 stationary with a retro twist. We are located minutes from the scenic waterfront and the action downtown in a breathtaking historic mansion.","transcription":{"text":"Hey JP - why don't you stuff it, eh?","annotations":[{"type":"locale","value":"en-CA","start":0,"end":36}]},"secrets":[{"prehidden":true,"points":[[0.5369360436,0.4727941176],[0.9414972731,0.4727941176],[0.9414972731,0.6132352941],[0.5369360436,0.6132352941]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"2017/128","cmH":"85/8","pxW":2017,"pxH":1360}}}
-1
postcards/canada.json
··· 1 - {"locale":"en-GB","location":{"name":"Spitfire Cafe, Ottawa, Canada","lat":44.5906072,"long":-75.6834661},"flip":"book","sentOn":"2020-01-26","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A collage of smaller photos showing aspects of the Spitfire Cafe. Clockwise from top left: an ornate ceiling light with two small fans; a cluster of three pillar candles; a collection of card and postcard stacks, \"cards $5\"; a close-up of what looks like a chrome bumper on a glossy teal background, with the Spitefire Cafe logo overprinted; a low upright piano keyboard next to a yellow wall; (in the centre) a coffee in a chipped mug with a heart visible in the milk froth."},"back":{"description":"A postcard made by the Spitfire Cafe with its address and phone number beneath the logo: 10 Victoria Ave, Brockville, ON K6V 2B1, Canada (613) 865-9348. At the bottom of the card it says: Brockville's finest cafe serving up the best in coffee, food and music. We specialize in local artisan crafts \u0026 stationary with a retro twist. We are located minutes from the scenic waterfront and the action downtown in a breathtaking historic mansion.","transcription":"\u003cspan lang=\"en-CA\"\u003eHey JP - why don't you stuff it, eh?\u003c/span\u003e","secrets":[[[0.5369360436,0.4727941176],[0.9414972731,0.4727941176],[0.9414972731,0.6132352941],[0.5369360436,0.6132352941]]]},"frontSize":{"cmW":"2017/128","cmH":"85/4","pxW":2017,"pxH":1360},"context":{"author":{"name":""},"description":""}}
postcards/canada.postcard.webp

This is a binary file and will not be displayed.

postcards/canada.webp

This is a binary file and will not be displayed.

+1
postcards/china-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Kunming, China","latitude":24.88852411010394,"longitude":102.82871098125743},"flip":"right-hand","sentOn":"2019-10-26","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A street market in China. Two women sit selling ingredients in the foreground. Red umbrellas cover a stall with a giant cooking wok and selling oranges just beyond. An old, green, two story corner building stands just beyond.","transcription":{}},"back":{"description":"A simple postcard back, with two large China postage stamps in pink and green, and a \"航空 Par avion\" red stamp beneath the message text.","transcription":{"text":"住口JP","annotations":[{"type":"locale","value":"zh-CN","start":0,"end":4}]},"secrets":[{"prehidden":true,"points":[[0.5698761688,0.5755978922],[0.9390952742,0.5755978922],[0.9390952742,0.8179975679],[0.5698761688,0.8179975679]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"169/16","cmH":"541/32","pxW":1352,"pxH":2164}}}
-1
postcards/china.json
··· 1 - {"locale":"en-GB","location":{"name":"Kunming, China","lat":24.88852411010394,"long":102.82871098125743},"flip":"right-hand","sentOn":"2019-10-26","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A street market in China. Two women sit selling ingredients in the foreground. Red umbrellas cover a stall with a giant cooking wok and selling oranges just beyond. An old, green, two story corner building stands just beyond."},"back":{"description":"A simple postcard back, with two large China postage stamps in pink and green, and a \"航空 Par avion\" red stamp beneath the message text.","transcription":"\u003cspan lang=\"zh-CN\"\u003e住口JP\u003c/span\u003e","secrets":[[[0.5698761688,0.5755978922],[0.9390952742,0.5755978922],[0.9390952742,0.8179975679],[0.5698761688,0.8179975679]]]},"frontSize":{"cmW":"169/16","cmH":"541/16","pxW":1352,"pxH":2164},"context":{"author":{"name":""},"description":""}}
postcards/china.postcard.webp

This is a binary file and will not be displayed.

postcards/china.webp

This is a binary file and will not be displayed.

+1
postcards/first-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Gourmet Burger Kitchen, London, UK","latitude":51.51320877085788,"longitude":-0.09940537159155438},"flip":"book","sentOn":"2015-12-01","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A sales postcard from the restaurant chain Gourmet Burger Kitchen, describing their \"Oh my Gosht!\" Indian themed lamb burgers.","transcription":{}},"back":{"description":"A mostly pre-printed postcard back asking for feedback from customers who've visited GBK. Tucked into the corner, tiny next to a large sign stating \"Make some noise\" and \"We're hungry for your feedback\", is a three-word, angled, and handwritten sentence: \"Shut up, JP.\"","transcription":{"text":"Shut up, JP.","annotations":[{"type":"locale","value":"en-GB","start":0,"end":4}]},"secrets":[{"prehidden":true,"points":[[0.5460593654,0.456227758],[0.9385875128000001,0.456227758],[0.9385875128000001,0.7615658363],[0.5460593654,0.7615658363]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"977/64","cmH":"1405/128","pxW":1954,"pxH":1405}}}
-1
postcards/first.json
··· 1 - {"locale":"","location":{"name":"Gourmet Burger Kitchen, London, UK","lat":51.51320877085788,"long":-0.09940537159155438},"flip":"book","sentOn":"2015-12-01","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A sales postcard from the restaurant chain Gourmet Burger Kitchen, describing their \"Oh my Gosht!\" Indian themed lamb burgers."},"back":{"description":"A mostly pre-printed postcard back asking for feedback from customers who've visited GBK. Tucked into the corner, tiny next to a large sign stating \"Make some noise\" and \"We're hungry for your feedback\", is a three-word, angled, and handwritten sentence: \"Shut up, JP.\"","transcription":"Shut up, JP.","secrets":[[[0.5460593654,0.456227758],[0.9385875128000001,0.456227758],[0.9385875128000001,0.7615658363],[0.5460593654,0.7615658363]]]},"frontSize":{"cmW":"977/64","cmH":"1405/64","pxW":1954,"pxH":1405},"context":{"author":{"name":""},"description":""}}
postcards/first.postcard.webp

This is a binary file and will not be displayed.

postcards/first.webp

This is a binary file and will not be displayed.

+1
postcards/france-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Montpellier, France","latitude":43.61111948103742,"longitude":3.8755433842799594},"flip":"left-hand","sentOn":"2016-04-04","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"transcription":{}},"back":{"transcription":{"text":"Tais-toi, JP.","annotations":[{"type":"locale","value":"fr-FR","start":0,"end":13}]},"secrets":[{"prehidden":true,"points":[[0.5229312064,0.4835646457],[0.8499501496,0.4835646457],[0.8499501496,0.6186997808],[0.5229312064,0.6186997808]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"1369/128","cmH":"1003/64","pxW":1369,"pxH":2006}}}
-1
postcards/france.json
··· 1 - {"locale":"en-GB","location":{"name":"Montpellier, France","lat":43.61111948103742,"long":3.8755433842799594},"flip":"left-hand","sentOn":"2016-04-04","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{},"back":{"transcription":"\u003cspan lang=\"fr-FR\"\u003eTais-toi, JP.\u003c/span\u003e","secrets":[[[0.5229312064,0.4835646457],[0.8499501496,0.4835646457],[0.8499501496,0.6186997808],[0.5229312064,0.6186997808]]]},"frontSize":{"cmW":"1369/128","cmH":"1003/32","pxW":1369,"pxH":2006},"context":{"author":{"name":""},"description":""}}
postcards/france.postcard.webp

This is a binary file and will not be displayed.

postcards/france.webp

This is a binary file and will not be displayed.

+1
postcards/georgia-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Alaverdi Cathedral, Georgia","latitude":42.032460034919566,"longitude":45.37722825634398},"flip":"book","sentOn":"2023-07-23","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photograph of a large red bricked cathedral with a tall bell tower and a smaller bell tower to the right. The cathedral is surrounded by trees and mountains.","transcription":{}},"back":{"transcription":{"text":"მოკეტე JP!","annotations":[{"type":"locale","value":"ka-GE","start":0,"end":10}]},"secrets":[{"prehidden":true,"points":[[0.535079051383399,0.61238025055269],[0.943675889283399,0.61238025055269],[0.943675889283399,0.77892409725269],[0.535079051383399,0.77892409725269]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"253/16","cmH":"1357/128","pxW":2024,"pxH":1357}}}
-1
postcards/georgia.json
··· 1 - {"locale":"en-GB","location":{"name":"Alaverdi Cathedral, Georgia","lat":42.032460034919566,"long":45.37722825634398},"flip":"book","sentOn":"2023-07-23","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photograph of a large red bricked cathedral with a tall bell tower and a smaller bell tower to the right. The cathedral is surrounded by trees and mountains."},"back":{"transcription":"\u003cspan lang=\"ka-GE\"\u003eმოკეტე JP!\u003c/span\u003e","secrets":[[[0.535079051383399,0.61238025055269],[0.943675889283399,0.61238025055269],[0.943675889283399,0.77892409725269],[0.535079051383399,0.77892409725269]]]},"frontSize":{"cmW":"253/16","cmH":"1357/64","pxW":2024,"pxH":1357},"context":{"author":{"name":""},"description":""}}
postcards/georgia.postcard.webp

This is a binary file and will not be displayed.

postcards/georgia.webp

This is a binary file and will not be displayed.

+1
postcards/guatemala-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Tikal Templo V, Guatemala","latitude":17.219701,"longitude":-89.62373},"flip":"book","sentOn":"2022-04-11","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photo of Tikal Templo V in Guatemala, partially covered by nearby rainforest folliage.","transcription":{}},"back":{"transcription":{"text":"¡JP, cállate!","annotations":[{"type":"locale","value":"es-GT","start":0,"end":13}]},"secrets":[{"prehidden":true,"points":[[0.5514606742,0.6056782334],[0.8179775281,0.6056782334],[0.8179775281,0.7709779179],[0.5514606742,0.7709779179]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"2225/128","cmH":"1585/128","pxW":2225,"pxH":1585}}}
-1
postcards/guatemala.json
··· 1 - {"locale":"en-GB","location":{"name":"Tikal Templo V, Guatemala","lat":17.219701,"long":-89.62373},"flip":"book","sentOn":"2022-04-11","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photo of Tikal Templo V in Guatemala, partially covered by nearby rainforest folliage."},"back":{"transcription":"\u003cspan lang=\"es-GT\"\u003e¡JP, cállate!\u003c/span\u003e","secrets":[[[0.5514606742,0.6056782334],[0.8179775281,0.6056782334],[0.8179775281,0.7709779179],[0.5514606742,0.7709779179]]]},"frontSize":{"cmW":"2225/128","cmH":"1585/64","pxW":2225,"pxH":1585},"context":{"author":{"name":""},"description":""}}
postcards/guatemala.postcard.webp

This is a binary file and will not be displayed.

postcards/guatemala.webp

This is a binary file and will not be displayed.

+1
postcards/iceland-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Reykjavík, Iceland","latitude":64.12,"longitude":-21.85},"flip":"left-hand","sentOn":"2023-01-13","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"An illustration of two fiendishly grinning presumed Icelandic Vikings turning on an anachronistic water main connected to a distant geyser spraying water over people running away from it. Text reads \"Iceland turns you on!\" and \"Hot and cold running water everywhere!\"","transcription":{}},"back":{"transcription":{"text":"Haltu Kjafti, JP","annotations":[{"type":"locale","value":"is-IS","start":0,"end":16}]},"secrets":[{"prehidden":true,"points":[[0.5386199794,0.3934782609],[0.9588053553011329,0.3934782609],[0.9588053553011329,0.510869565247826],[0.5386199794,0.510869565247826]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"345/32","cmH":"971/64","pxW":1380,"pxH":1942}}}
-1
postcards/iceland.json
··· 1 - {"locale":"en-GB","location":{"name":"Reykjavík, Iceland","lat":64.12,"long":-21.85},"flip":"left-hand","sentOn":"2023-01-13","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"An illustration of two fiendishly grinning presumed Icelandic Vikings turning on an anachronistic water main connected to a distant geyser spraying water over people running away from it. Text reads \"Iceland turns you on!\" and \"Hot and cold running water everywhere!\""},"back":{"transcription":"\u003cspan lang=\"is-IS\"\u003eHaltu Kjafti, JP\u003c/span\u003e","secrets":[[[0.5386199794,0.3934782609],[0.9588053553011329,0.3934782609],[0.9588053553011329,0.510869565247826],[0.5386199794,0.510869565247826]]]},"frontSize":{"cmW":"345/32","cmH":"971/32","pxW":1380,"pxH":1942},"context":{"author":{"name":""},"description":""}}
postcards/iceland.postcard.webp

This is a binary file and will not be displayed.

postcards/iceland.webp

This is a binary file and will not be displayed.

+1
postcards/italy-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Galleria dell'Accademia, Florence, Italy","latitude":43.776826311063886,"longitude":11.258640740774178},"flip":"book","sentOn":"2023-10-18","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photo of the naked waist of Michelangelo's sculpture of David, with \"wow!!!\" superimposed in a semicircle around his penis.","transcription":{}},"back":{"transcription":{"text":"Stai zito, JP","annotations":[{"type":"locale","value":"it-IT","start":0,"end":13}]},"secrets":[{"prehidden":true,"points":[[0.5744575937,0.4494109494],[0.8814102564,0.4494109494],[0.8814102564,0.6254331254],[0.5744575937,0.6254331254]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"67600/3937","cmH":"48100/3937","pxW":4056,"pxH":2886}}}
-1
postcards/italy.json
··· 1 - {"locale":"en-GB","location":{"name":"Galleria dell'Accademia, Florence, Italy","lat":43.776826311063886,"long":11.258640740774178},"flip":"book","sentOn":"2023-10-18","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photo of the naked waist of Michelangelo's sculpture of David, with \"wow!!!\" superimposed in a semicircle around his penis."},"back":{"transcription":"\u003cspan lang=\"it-IT\"\u003eStai zito, JP\u003c/span\u003e\n","secrets":[[[0.5744575937,0.4494109494],[0.8814102564,0.4494109494],[0.8814102564,0.6254331254],[0.5744575937,0.6254331254]]]},"frontSize":{"cmW":"67600/3937","cmH":"96200/3937","pxW":4056,"pxH":2886},"context":{"author":{"name":""},"description":""}}
postcards/italy.postcard.webp

This is a binary file and will not be displayed.

postcards/italy.webp

This is a binary file and will not be displayed.

+1
postcards/japan-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Japan","latitude":35.71,"longitude":139.71},"flip":"left-hand","sentOn":"2024-04-15","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"From \"To Love Ru\" manga: In a flowering meadow, under a blue sky, a gently smiling large chested anime woman (with pink hair and a gold necklace, crown, and heart-shaped staff) stands back to back with a cross-armed charcter in a blue cape facing away from us.\n","transcription":{}},"back":{"transcription":{"text":"黙って、JP!","annotations":[{"type":"locale","value":"ja-JA","start":0,"end":7}]},"secrets":[{"prehidden":true,"points":[[0.6200335758,0.4601844091],[0.9054280916999999,0.4601844091],[0.9054280916999999,0.6777032691],[0.6200335758,0.6777032691]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"39750/3937","cmH":"59550/3937","pxW":2385,"pxH":3573}}}
-1
postcards/japan.json
··· 1 - {"locale":"en-GB","location":{"name":"Japan","lat":35.71,"long":139.71},"flip":"left-hand","sentOn":"2024-04-15","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"From \"To Love Ru\" manga: In a flowering meadow, under a blue sky, a gently smiling large chested anime woman (with pink hair and a gold necklace, crown, and heart-shaped staff) stands back to back with a cross-armed charcter in a blue cape facing away from us.\n"},"back":{"transcription":"\u003cspan lang=\"ja-JA\"\u003e黙って、JP!\u003c/span\u003e","secrets":[[[0.6200335758,0.4601844091],[0.9054280916999999,0.4601844091],[0.9054280916999999,0.6777032691],[0.6200335758,0.6777032691]]]},"frontSize":{"cmW":"39750/3937","cmH":"119100/3937","pxW":2385,"pxH":3573},"context":{"author":{"name":""},"description":""}}
postcards/japan.postcard.webp

This is a binary file and will not be displayed.

postcards/japan.webp

This is a binary file and will not be displayed.

+1
postcards/korea-butt-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"South Korea","latitude":37.54,"longitude":126.99},"flip":"right-hand","sentOn":"2024-04-23","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A smiling, orange illustrated person falling over, with their butt in the air, papers flying overhead, possibly flipping the bird at us. Korean text below seems to read \"I don't want to work, dance\".\n","transcription":{}},"back":{"transcription":{"text":"입다물어, JP","annotations":[{"type":"locale","value":"ko-KR","start":0,"end":8}]},"secrets":[{"prehidden":true,"points":[[0.5683106576,0.6098579783],[0.8557256235999999,0.6098579783],[0.8557256235999999,0.7522974102],[0.5683106576,0.7522974102]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"119650/11811","cmH":"176350/11811","pxW":2393,"pxH":3527}}}
-1
postcards/korea-butt.json
··· 1 - {"locale":"en-GB","location":{"name":"South Korea","lat":37.54,"long":126.99},"flip":"right-hand","sentOn":"2024-04-23","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A smiling, orange illustrated person falling over, with their butt in the air, papers flying overhead, possibly flipping the bird at us. Korean text below seems to read \"I don't want to work, dance\".\n"},"back":{"transcription":"\u003cspan lang=\"ko-KR\"\u003e입다물어, JP\u003c/span\u003e","secrets":[[[0.5683106576,0.6098579783],[0.8557256235999999,0.6098579783],[0.8557256235999999,0.7522974102],[0.5683106576,0.7522974102]]]},"frontSize":{"cmW":"119650/11811","cmH":"352700/11811","pxW":2393,"pxH":3527},"context":{"author":{"name":""},"description":""}}
postcards/korea-butt.postcard.webp

This is a binary file and will not be displayed.

postcards/korea-butt.webp

This is a binary file and will not be displayed.

+1
postcards/korea-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Seoul, Korea","latitude":37.55590970079184,"longitude":126.9926593678283},"flip":"book","sentOn":"2017-12-21","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A Jetoy branded illustration. A red through red pastel coloured backdrop with simple mountains or clouds. In the foreground a white furred and blue eyed kitten, with a (human-style) head of black hair, is wearing a kimono with white flowers on a blue background.","transcription":{}},"back":{"transcription":{"text":"입 닥쳐 JP","annotations":[{"type":"locale","value":"ko-KR","start":0,"end":7}]},"secrets":[{"prehidden":true,"points":[[0.5368171021,0.0647223332],[0.8147268408,0.0647223332],[0.8147268408,0.2045545346],[0.5368171021,0.2045545346]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"421/32","cmH":"2503/128","pxW":1684,"pxH":2503}}}
-1
postcards/korea.json
··· 1 - {"locale":"en-GB","location":{"name":"Seoul, Korea","lat":37.55590970079184,"long":126.9926593678283},"flip":"book","sentOn":"2017-12-21","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A Jetoy branded illustration. A red through red pastel coloured backdrop with simple mountains or clouds. In the foreground a white furred and blue eyed kitten, with a (human-style) head of black hair, is wearing a kimono with white flowers on a blue background."},"back":{"transcription":"\u003cspan lang=\"ko-KR\"\u003e입 닥쳐 JP\u003c/span\u003e","secrets":[[[0.5368171021,0.0647223332],[0.8147268408,0.0647223332],[0.8147268408,0.2045545346],[0.5368171021,0.2045545346]]]},"frontSize":{"cmW":"421/32","cmH":"2503/64","pxW":1684,"pxH":2503},"context":{"author":{"name":""},"description":""}}
postcards/korea.postcard.webp

This is a binary file and will not be displayed.

postcards/korea.webp

This is a binary file and will not be displayed.

+1
postcards/leica-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Leica Gallery, Wetzlar, Germany","latitude":50.552941934493084,"longitude":8.536942159173067},"flip":"book","sentOn":"2023-05-24","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A black and white close-up photo of a presumed woman's feet in high-heels and tights with the arch of the heel perfectly framing a distant man in a suit. All next to the Eiffel Tower.","transcription":{}},"back":{"transcription":{"text":"Halt die Klappe, JP","annotations":[{"type":"locale","value":"de-DE","start":0,"end":19}]},"secrets":[{"prehidden":true,"points":[[0.60082944530845,0.461203770848441],[0.912389839294972,0.461203770848441],[0.912389839294972,0.663524292965917],[0.60082944530845,0.663524292965917]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"1929/128","cmH":"1379/128","pxW":1929,"pxH":1379}}}
-1
postcards/leica.json
··· 1 - {"locale":"en-GB","location":{"name":"Leica Gallery, Wetzlar, Germany","lat":50.552941934493084,"long":8.536942159173067},"flip":"book","sentOn":"2023-05-24","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A black and white close-up photo of a presumed woman's feet in high-heels and tights with the arch of the heel perfectly framing a distant man in a suit. All next to the Eiffel Tower."},"back":{"transcription":"\u003cspan lang=\"de-DE\"\u003eHalt die Klappe, JP\u003c/span\u003e","secrets":[[[0.60082944530845,0.461203770848441],[0.912389839294972,0.461203770848441],[0.912389839294972,0.663524292965917],[0.60082944530845,0.663524292965917]]]},"frontSize":{"cmW":"1929/128","cmH":"1379/64","pxW":1929,"pxH":1379},"context":{"author":{"name":""},"description":""}}
postcards/leica.postcard.webp

This is a binary file and will not be displayed.

postcards/leica.webp

This is a binary file and will not be displayed.

+1
postcards/loch-ness-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Loch Ness, Scotland, UK","latitude":57.321533148442384,"longitude":-4.432586127947921},"flip":"right-hand","sentOn":"2021-08-21","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"transcription":{}},"back":{"transcription":{"text":"Dùin do glub, JP\n\nlol it looks a bit like a willy doesn't it\n","annotations":[{"type":"locale","value":"gd-GB","start":0,"end":16}]},"secrets":[{"prehidden":true,"points":[[0.6039163329,0.3550863724],[0.7854917668,0.3550863724],[0.7854917668,0.6084452975000001],[0.6039163329,0.6084452975000001]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"1563/128","cmH":"2247/128","pxW":1563,"pxH":2247}}}
-1
postcards/loch-ness.json
··· 1 - {"locale":"en-GB","location":{"name":"Loch Ness, Scotland, UK","lat":57.321533148442384,"long":-4.432586127947921},"flip":"right-hand","sentOn":"2021-08-21","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{},"back":{"transcription":"\u003cspan lang=\"gd-GB\"\u003eDùin do glub, JP\u003c/span\u003e\n\nlol it looks a bit like a willy doesn't it\n","secrets":[[[0.6039163329,0.3550863724],[0.7854917668,0.3550863724],[0.7854917668,0.6084452975000001],[0.6039163329,0.6084452975000001]]]},"frontSize":{"cmW":"1563/128","cmH":"2247/64","pxW":1563,"pxH":2247},"context":{"author":{"name":""},"description":""}}
postcards/loch-ness.postcard.webp

This is a binary file and will not be displayed.

postcards/loch-ness.webp

This is a binary file and will not be displayed.

+1
postcards/madrid-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Madrid, Spain","latitude":40.4234699,"longitude":-3.7137392},"flip":"book","sentOn":"2022-01-24","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photograph across the rooves of Madrid, with two cats sitting on the rooftop edge.","transcription":{}},"back":{"transcription":{"text":"¡JP, cállate!","annotations":[{"type":"locale","value":"es-ES","start":0,"end":13}]},"secrets":[{"prehidden":true,"points":[[0.5592417062,0.6145479266],[0.9535545024000001,0.6145479266],[0.9535545024000001,0.7654656696],[0.5592417062,0.7654656696]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"1055/64","cmH":"1471/128","pxW":2110,"pxH":1471}}}
-1
postcards/madrid.json
··· 1 - {"locale":"en-GB","location":{"name":"Madrid, Spain","lat":40.4234699,"long":-3.7137392},"flip":"book","sentOn":"2022-01-24","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photograph across the rooves of Madrid, with two cats sitting on the rooftop edge."},"back":{"transcription":"\u003cspan lang=\"es-ES\"\u003e¡JP, cállate!\u003c/span\u003e","secrets":[[[0.5592417062,0.6145479266],[0.9535545024000001,0.6145479266],[0.9535545024000001,0.7654656696],[0.5592417062,0.7654656696]]]},"frontSize":{"cmW":"1055/64","cmH":"1471/64","pxW":2110,"pxH":1471},"context":{"author":{"name":""},"description":""}}
postcards/madrid.postcard.webp

This is a binary file and will not be displayed.

postcards/madrid.webp

This is a binary file and will not be displayed.

+1
postcards/malaysia-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"The Petronas Towers, Kuala Lumpur, Malaysia","latitude":3.1587262190722614,"longitude":101.71068390500886},"flip":"book","sentOn":"2017-05-29","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A sunset view of Kuala Lumpur's skyline.","transcription":{}},"back":{"transcription":{"text":"Diam, JP.","annotations":[{"type":"locale","value":"id-MY","start":0,"end":9}]},"secrets":[{"prehidden":true,"points":[[0.6163410302,0.4540372671],[0.9671403196999999,0.4540372671],[0.9671403196999999,0.5900621118],[0.6163410302,0.5900621118]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"563/32","cmH":"805/64","pxW":2252,"pxH":1610}}}
-1
postcards/malaysia.json
··· 1 - {"locale":"en-GB","location":{"name":"The Petronas Towers, Kuala Lumpur, Malaysia","lat":3.1587262190722614,"long":101.71068390500886},"flip":"book","sentOn":"2017-05-29","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A sunset view of Kuala Lumpur's skyline."},"back":{"transcription":"\u003cspan lang=\"id-MY\"\u003eDiam, JP.\u003c/span\u003e","secrets":[[[0.6163410302,0.4540372671],[0.9671403196999999,0.4540372671],[0.9671403196999999,0.5900621118],[0.6163410302,0.5900621118]]]},"frontSize":{"cmW":"563/32","cmH":"805/32","pxW":2252,"pxH":1610},"context":{"author":{"name":""},"description":""}}
postcards/malaysia.postcard.webp

This is a binary file and will not be displayed.

postcards/malaysia.webp

This is a binary file and will not be displayed.

+1
postcards/morocco-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Les Dunes de Sable, Merzouga, Morocco","latitude":31.10209565249995,"longitude":-4.004023293530289},"flip":"left-hand","sentOn":"2023-06-19","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"The undulating dunes of a desert, with a single green bush in the middle, and a small corner of blue sky.","transcription":{}},"back":{"transcription":{"text":"JP, إخرس","annotations":[{"type":"locale","value":"ar-MA","start":0,"end":8}]},"secrets":[{"prehidden":true,"points":[[0.6362410072,0.6742857143],[0.9667266187,0.6742857143],[0.9667266187,0.8292063491999999],[0.6362410072,0.8292063491999999]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"1575/128","cmH":"139/8","pxW":1575,"pxH":2224}}}
-1
postcards/morocco.json
··· 1 - {"locale":"en-GB","location":{"name":"Les Dunes de Sable, Merzouga, Morocco","lat":31.10209565249995,"long":-4.004023293530289},"flip":"left-hand","sentOn":"2023-06-19","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"The undulating dunes of a desert, with a single green bush in the middle, and a small corner of blue sky."},"back":{"transcription":"\u003cspan lang=\"ar-MA\"\u003eJP, إخرس\u003c/span\u003e","secrets":[[[0.6362410072,0.6742857143],[0.9667266187,0.6742857143],[0.9667266187,0.8292063491999999],[0.6362410072,0.8292063491999999]]]},"frontSize":{"cmW":"1575/128","cmH":"139/4","pxW":1575,"pxH":2224},"context":{"author":{"name":""},"description":""}}
postcards/morocco.postcard.webp

This is a binary file and will not be displayed.

postcards/morocco.webp

This is a binary file and will not be displayed.

+1
postcards/new-zealand-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Port Chalmers, New Zealand","latitude":-45.81758644078448,"longitude":170.62079248072317},"flip":"book","sentOn":"2024-01-28","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"Four views of the town of Port Chalmers, including the pub sign of \"The Portsider\", and a grand vista of the bay with a cruise liner in dock.","transcription":{}},"back":{"transcription":{"text":"Tō waha, JP.","annotations":[{"type":"locale","value":"mi-NZ","start":0,"end":12}]},"secrets":[{"prehidden":true,"points":[[0.5964626484,0.4302004147],[0.9518268559999999,0.4302004147],[0.9518268559999999,0.6755355909],[0.5964626484,0.6755355909]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"214850/11811","cmH":"144700/11811","pxW":4297,"pxH":2894}}}
-1
postcards/new-zealand.json
··· 1 - {"locale":"en-GB","location":{"name":"Port Chalmers, New Zealand","lat":-45.81758644078448,"long":170.62079248072317},"flip":"book","sentOn":"2024-01-28","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"Four views of the town of Port Chalmers, including the pub sign of \"The Portsider\", and a grand vista of the bay with a cruise liner in dock."},"back":{"transcription":"\u003cspan lang=\"mi-NZ\"\u003eTō waha, JP.\u003c/span\u003e\n","secrets":[[[0.5964626484,0.4302004147],[0.9518268559999999,0.4302004147],[0.9518268559999999,0.6755355909],[0.5964626484,0.6755355909]]]},"frontSize":{"cmW":"214850/11811","cmH":"289400/11811","pxW":4297,"pxH":2894},"context":{"author":{"name":""},"description":""}}
postcards/new-zealand.postcard.webp

This is a binary file and will not be displayed.

postcards/new-zealand.webp

This is a binary file and will not be displayed.

+1
postcards/nyc-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"New York City, USA","latitude":40.71518353253348,"longitude":-73.92916576072076},"flip":"book","sentOn":"2023-03-24","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A collection of overlayed photos representing New York City, including the Statue of Liberty in the middle, the Chrysler \u0026 Empire State Buildings, and the Brooklyn Bridge on the left, and a street of yellow taxis and the US flag on the right.","transcription":{}},"back":{"transcription":{"text":"Eyyyy ohhh\neyyy guy…\n\nShaddap-a yo face, JP!\n","annotations":[{"type":"locale","value":"en-US","start":0,"end":44}]},"secrets":[{"prehidden":true,"points":[[0.59175704989154,0.536101083032491],[0.955748373101952,0.536101083032491],[0.955748373101952,0.669073405535499],[0.59175704989154,0.669073405535499]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"2305/128","cmH":"831/64","pxW":2305,"pxH":1662}}}
-1
postcards/nyc.json
··· 1 - {"locale":"en-GB","location":{"name":"New York City, USA","lat":40.71518353253348,"long":-73.92916576072076},"flip":"book","sentOn":"2023-03-24","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A collection of overlayed photos representing New York City, including the Statue of Liberty in the middle, the Chrysler \u0026 Empire State Buildings, and the Brooklyn Bridge on the left, and a street of yellow taxis and the US flag on the right."},"back":{"transcription":"\u003cspan lang=\"en-US\"\u003eEyyyy ohhh\neyyy guy…\n\nShaddap-a yo face, JP!\u003c/span\u003e\n","secrets":[[[0.59175704989154,0.536101083032491],[0.955748373101952,0.536101083032491],[0.955748373101952,0.669073405535499],[0.59175704989154,0.669073405535499]]]},"frontSize":{"cmW":"2305/128","cmH":"831/32","pxW":2305,"pxH":1662},"context":{"author":{"name":""},"description":""}}
postcards/nyc.postcard.webp

This is a binary file and will not be displayed.

postcards/nyc.webp

This is a binary file and will not be displayed.

+1
postcards/oklahoma-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Oklahoma, USA","latitude":35.46,"longitude":-97.52},"flip":"left-hand","sentOn":"2024-07-18","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A print of a grinning cowboy riding a wild bucking buffalo","transcription":{}},"back":{"transcription":{"text":"(Ope, just gonna sneak past you… to say)\n\nShut up, JP.\n","annotations":[{"type":"locale","value":"en-US","start":0,"end":54}]},"secrets":[{"prehidden":true,"points":[[0.4998520272,0.553447478],[0.8321988754,0.553447478],[0.8321988754,0.7644608977],[0.4998520272,0.7644608977]]}]},"context":{"author":{"name":"JP","uri":"https://www.byjp.me"},"description":"This is the first #ShutUpJP postcard I received after my wedding, addressed to my new surname."},"physical":{"frontSize":{"cmW":"1143/125","cmH":"71501/5000","pxW":2160,"pxH":3378}}}
postcards/oklahoma.postcard.webp

This is a binary file and will not be displayed.

+1
postcards/philadelphia-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Philadelphia Museum of Art, Philadelphia, USA","latitude":39.96558608911079,"longitude":-75.18097682865891},"flip":"left-hand","sentOn":"2023-03-22","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photograph of a bronze statue of Rocky Balboa, a fictional boxer from the Rocky film series, wearing boxing gloves and shorts, with his arms raised in victory.","transcription":{}},"back":{"transcription":{"text":"Shut up, JP.","annotations":[{"type":"locale","value":"en-US","start":0,"end":12}]},"secrets":[{"prehidden":true,"points":[[0.610738255033557,0.4434030281],[0.783686112533557,0.4434030281],[0.783686112533557,0.684931506831074],[0.610738255033557,0.684931506831074]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"1387/128","cmH":"1937/128","pxW":1387,"pxH":1937}}}
-1
postcards/philadelphia.json
··· 1 - {"locale":"en-GB","location":{"name":"Philadelphia Museum of Art, Philadelphia, USA","lat":39.96558608911079,"long":-75.18097682865891},"flip":"left-hand","sentOn":"2023-03-22","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photograph of a bronze statue of Rocky Balboa, a fictional boxer from the Rocky film series, wearing boxing gloves and shorts, with his arms raised in victory."},"back":{"transcription":"\u003cspan lang=\"en-US\"\u003eShut up, JP.\u003c/span\u003e","secrets":[[[0.610738255033557,0.4434030281],[0.783686112533557,0.4434030281],[0.783686112533557,0.684931506831074],[0.610738255033557,0.684931506831074]]]},"frontSize":{"cmW":"1387/128","cmH":"1937/64","pxW":1387,"pxH":1937},"context":{"author":{"name":""},"description":""}}
postcards/philadelphia.postcard.webp

This is a binary file and will not be displayed.

postcards/philadelphia.webp

This is a binary file and will not be displayed.

+1
postcards/portland-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Portland, Oregon, USA","latitude":45.5199,"longitude":-122.6821},"flip":"book","sentOn":"2017-07-11","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"An illustration of a naked, but booted, man and woman riding a tandem bike on a background of hearts.","transcription":{}},"back":{"transcription":{"text":"SHUT UP, JP.","annotations":[{"type":"locale","value":"en-US","start":0,"end":12}]},"secrets":[{"prehidden":true,"points":[[0.5798110393,0.5128771155],[0.9741422178,0.5128771155],[0.9741422178,0.6968359087],[0.5798110393,0.6968359087]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"2011/128","cmH":"1359/128","pxW":2011,"pxH":1359}}}
-1
postcards/portland.json
··· 1 - {"locale":"en-GB","location":{"name":"Portland, Oregon, USA","lat":45.5199,"long":-122.6821},"flip":"book","sentOn":"2017-07-11","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"An illustration of a naked, but booted, man and woman riding a tandem bike on a background of hearts."},"back":{"transcription":"\u003cspan lang=\"en-US\"\u003eSHUT UP, JP.\u003c/span\u003e","secrets":[[[0.5798110393,0.5128771155],[0.9741422178,0.5128771155],[0.9741422178,0.6968359087],[0.5798110393,0.6968359087]]]},"frontSize":{"cmW":"2011/128","cmH":"1359/64","pxW":2011,"pxH":1359},"context":{"author":{"name":""},"description":""}}
postcards/portland.postcard.webp

This is a binary file and will not be displayed.

postcards/portland.webp

This is a binary file and will not be displayed.

+1
postcards/portugal-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Carvoeiro, Portugal","latitude":37.09616870462492,"longitude":-8.471126816441089},"flip":"book","sentOn":"2022-09-09","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"6 square tiling patterns in blue, green, red and yellow on a postcard made entirely of cord. The word \"Portugal\" sits between four of the tiles.","transcription":{}},"back":{"description":"A postcard made entirely of cork.","transcription":{"text":"Cala a boca, JP!","annotations":[{"type":"locale","value":"pt-PT","start":0,"end":16}]},"secrets":[{"prehidden":true,"points":[[0.547209181,0.4772727273],[0.9587897757000001,0.4772727273],[0.9587897757000001,0.7371212120999999],[0.547209181,0.7371212120999999]]}]},"context":{"author":{"name":"JP","uri":"https://www.byjp.me"},"description":"This postcard is made entirely of cork, so it's a little floppy!"},"physical":{"frontSize":{"cmW":"1917/128","cmH":"165/16","pxW":1917,"pxH":1320}}}
-1
postcards/portugal.json
··· 1 - {"locale":"en-GB","location":{"name":"Carvoeiro, Portugal","lat":37.09616870462492,"long":-8.471126816441089},"flip":"book","sentOn":"2022-09-09","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"6 sqaure tiling patterns in blue, green, red and yellow on a postcard made entirely of cord. The word \"Portugal\" sits between four of the tiles."},"back":{"description":"A postcard made entirely of cork.","transcription":"\u003cspan lang=\"pt-PT\"\u003eCala a boca, JP!\u003c/span\u003e","secrets":[[[0.547209181,0.4772727273],[0.9587897757000001,0.4772727273],[0.9587897757000001,0.7371212120999999],[0.547209181,0.7371212120999999]]]},"frontSize":{"cmW":"1917/128","cmH":"165/8","pxW":1917,"pxH":1320},"context":{"author":{"name":""},"description":""}}
postcards/portugal.postcard.webp

This is a binary file and will not be displayed.

postcards/portugal.webp

This is a binary file and will not be displayed.

+1
postcards/seattle-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"The Space Needle, Seattle, USA","latitude":47.6205638250662,"longitude":-122.34930209624935},"flip":"right-hand","sentOn":"2022-07-07","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A replica of a '60s era postcard, on embossed paper. Shows a simple illustration of the Space Needle, described as being from Seattle's World Fair in 1962.","transcription":{}},"back":{"description":"A broadly plain postcard back, with text describing the Space Needle depicted on the front: The 605-foot tall Space Needle opened at the Century 21 World's Fair on April 21, 1962. The structure of itself weights 3700 tons with the foundation being 30 feet below the ground and weighing 5850 tons. There are 848 steps from the basement to the observation deck. On April 21, 1999 the Space Needle's 37th birthday, the City's Landmarks Preservation Board named it an official City of Seattle Landmark.","transcription":{"text":"Shut up, JP.","annotations":[{"type":"locale","value":"en-US","start":0,"end":12}]},"secrets":[{"prehidden":true,"points":[[0.610046608,0.4534883721],[0.9181771103,0.4534883721],[0.9181771103,0.5813953488],[0.610046608,0.5813953488]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"43/4","cmH":"1931/128","pxW":1376,"pxH":1931}}}
-1
postcards/seattle.json
··· 1 - {"locale":"en-GB","location":{"name":"The Space Needle, Seattle, USA","lat":47.6205638250662,"long":-122.34930209624935},"flip":"right-hand","sentOn":"2022-07-07","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A replica of a '60s era postcard, on embossed paper. Shows a simple illustration of the Space Needle, described as being from Seattle's World Fair in 1962."},"back":{"description":"A broadly plain postcard back, with text describing the Space Needle depicted on the front: The 605-foot tall Space Needle opened at the Century 21 World's Fair on April 21, 1962. The structure of itself weights 3700 tons with the foundation being 30 feet below the ground and weighing 5850 tons. There are 848 steps from the basement to the observation deck. On April 21, 1999 the Space Needle's 37th birthday, the City's Landmarks Preservation Board named it an official City of Seattle Landmark.","transcription":"\u003cspan lang=\"en-US\"\u003eShut up, JP.\u003c/span\u003e","secrets":[[[0.610046608,0.4534883721],[0.9181771103,0.4534883721],[0.9181771103,0.5813953488],[0.610046608,0.5813953488]]]},"frontSize":{"cmW":"43/4","cmH":"1931/64","pxW":1376,"pxH":1931},"context":{"author":{"name":""},"description":""}}
postcards/seattle.postcard.webp

This is a binary file and will not be displayed.

postcards/seattle.webp

This is a binary file and will not be displayed.

+1
postcards/singapore-breakfast-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Singapore","latitude":1.35,"longitude":103.75},"flip":"book","sentOn":"2017-12-13","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photograph of a \"local breakfast\", including a plate of toast sandwiches with a yellow (egg or cheese) filling, two hardboiled eggs, a cup of coffee.","transcription":{}},"back":{"transcription":{"text":"Shut up, JP\nJP வாயை மூடு\nJangan bisinglah, JP\n闭嘴JP\n\nUgh Singapore, why you gotta have 4 official languages?!\n","annotations":[{"type":"locale","value":"en-SG","start":0,"end":11},{"type":"locale","value":"ta-SG","start":12,"end":24},{"type":"locale","value":"ms-SG","start":25,"end":45},{"type":"locale","value":"zh-SG","start":46,"end":50}]},"secrets":[{"prehidden":true,"points":[[0.6394508671,0.626468285],[0.9696531792,0.626468285],[0.9696531792,0.8073610023],[0.6394508671,0.8073610023]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"173/8","cmH":"1277/128","pxW":2768,"pxH":1277}}}
-1
postcards/singapore-breakfast.json
··· 1 - {"locale":"en-GB","location":{"name":"Singapore","lat":1.35,"long":103.75},"flip":"book","sentOn":"2017-12-13","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photograph of a \"local breakfast\", including a plate of toast sandwiches with a yellow (egg or cheese) filling, two hardboiled eggs, a cup of coffee."},"back":{"transcription":"\u003cspan lang=\"en-SG\"\u003eShut up, JP\u003c/span\u003e\n\u003cspan lang=\"ta-SG\"\u003eJP வாயை மூடு\u003c/span\u003e\n\u003cspan lang=\"ms-SG\"\u003eJangan bisinglah, JP\u003c/span\u003e\n\u003cspan lang=\"zh-SG\"\u003e闭嘴JP\u003c/span\u003e\n\nUgh Singapore, why you gotta have 4 official languages?!\n","secrets":[[[0.6394508671,0.626468285],[0.9696531792,0.626468285],[0.9696531792,0.8073610023],[0.6394508671,0.8073610023]]]},"frontSize":{"cmW":"173/8","cmH":"1277/64","pxW":2768,"pxH":1277},"context":{"author":{"name":""},"description":""}}
postcards/singapore-breakfast.postcard.webp

This is a binary file and will not be displayed.

postcards/singapore-breakfast.webp

This is a binary file and will not be displayed.

+1
postcards/singapore-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Gardens by the Bay, Singapore","latitude":1.281629186099575,"longitude":103.8646889076446},"flip":"book","sentOn":"2017-06-05","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photograph of Singapore's concrete 'supertrees' and walkway in the Gardens at the Bay.","transcription":{}},"back":{"transcription":{"text":"住口,JP","annotations":[{"type":"locale","value":"zh-SG","start":0,"end":5}]},"secrets":[{"prehidden":true,"points":[[0.5858398889,0.5096345515],[0.9495603887,0.5096345515],[0.9495603887,0.7448504983],[0.5858398889,0.7448504983]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"2161/128","cmH":"1505/128","pxW":2161,"pxH":1505}}}
-1
postcards/singapore.json
··· 1 - {"locale":"en-GB","location":{"name":"Gardens by the Bay, Singapore","lat":1.281629186099575,"long":103.8646889076446},"flip":"book","sentOn":"2017-06-05","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photograph of Singapore's concrete 'supertrees' and walkway in the Gardens at the Bay."},"back":{"transcription":"\u003cspan lang=\"zh-SG\"\u003e住口,JP\u003c/span\u003e","secrets":[[[0.5858398889,0.5096345515],[0.9495603887,0.5096345515],[0.9495603887,0.7448504983],[0.5858398889,0.7448504983]]]},"frontSize":{"cmW":"2161/128","cmH":"1505/64","pxW":2161,"pxH":1505},"context":{"author":{"name":""},"description":""}}
postcards/singapore.postcard.webp

This is a binary file and will not be displayed.

postcards/singapore.webp

This is a binary file and will not be displayed.

+1
postcards/split-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Split, Croatia","latitude":43.51377107863206,"longitude":16.442092000279143},"flip":"right-hand","sentOn":"2023-04-06","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A collage of photos of showing the beautiful, sunny limestone buildings of Split, with the city's name overlayed.","transcription":{}},"back":{"transcription":{"text":"Začepi, JP.","annotations":[{"type":"locale","value":"hr-HR","start":0,"end":11}]},"secrets":[{"prehidden":true,"points":[[0.5994136461,0.499804152],[0.9429637527000001,0.499804152],[0.9429637527000001,0.7070113592],[0.5994136461,0.7070113592]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"127600/11811","cmH":"6050/381","pxW":2552,"pxH":3751}}}
-1
postcards/split.json
··· 1 - {"locale":"en-GB","location":{"name":"Split, Croatia","lat":43.51377107863206,"long":16.442092000279143},"flip":"right-hand","sentOn":"2023-04-06","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A collage of photos of showing the beautiful, sunny limestone buildings of Split, with the city's name overlayed."},"back":{"transcription":"\u003cspan lang=\"hr-HR\"\u003eZačepi, JP.\u003c/span\u003e\n","secrets":[[[0.5994136461,0.499804152],[0.9429637527000001,0.499804152],[0.9429637527000001,0.7070113592],[0.5994136461,0.7070113592]]]},"frontSize":{"cmW":"127600/11811","cmH":"12100/381","pxW":2552,"pxH":3751},"context":{"author":{"name":""},"description":""}}
postcards/split.postcard.webp

This is a binary file and will not be displayed.

postcards/split.webp

This is a binary file and will not be displayed.

+1
postcards/sri-lanka-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Sigiriya Rock, Sri Lanka","latitude":7.957080514851897,"longitude":80.75999950789985},"flip":"book","sentOn":"2020-03-28","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photo of the rock-top palace that is Sigiriya Rock.","transcription":{}},"back":{"transcription":{"text":"வாயை மூடு JP.\n\n(Had to send from UK — needed to leave in a hurry!)\n","annotations":[{"type":"locale","value":"ta-LK","start":0,"end":13}]},"secrets":[{"prehidden":true,"points":[[0.5249343832,0.5440194293],[0.9343832021,0.5440194293],[0.9343832021,0.7067395264],[0.5249343832,0.7067395264]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"1143/64","cmH":"1647/128","pxW":2286,"pxH":1647}}}
-1
postcards/sri-lanka.json
··· 1 - {"locale":"en-GB","location":{"name":"Sigiriya Rock, Sri Lanka","lat":7.957080514851897,"long":80.75999950789985},"flip":"book","sentOn":"2020-03-28","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photo of the rock-top palace that is Sigiriya Rock."},"back":{"transcription":"\u003cspan lang=\"ta-LK\"\u003eவாயை மூடு JP.\u003c/span\u003e\n\n(Had to send from UK — needed to leave in a hurry!)\n","secrets":[[[0.5249343832,0.5440194293],[0.9343832021,0.5440194293],[0.9343832021,0.7067395264],[0.5249343832,0.7067395264]]]},"frontSize":{"cmW":"1143/64","cmH":"1647/64","pxW":2286,"pxH":1647},"context":{"author":{"name":""},"description":""}}
postcards/sri-lanka.postcard.webp

This is a binary file and will not be displayed.

postcards/sri-lanka.webp

This is a binary file and will not be displayed.

+1
postcards/stockholm-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Stockholm, Sweden","latitude":59.3289,"longitude":18.067},"flip":"book","sentOn":"2016-06-15","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"An aerial photograph of snow-covered Stockholm's harbours.","transcription":{}},"back":{"transcription":{"text":"HALL KÄFTEN, JP.","annotations":[{"type":"locale","value":"se-SE","start":0,"end":16}]},"secrets":[{"prehidden":true,"points":[[0.5751088534,0.5138369484],[0.9775036283999999,0.5138369484],[0.9775036283999999,0.7344801795],[0.5751088534,0.7344801795]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"689/32","cmH":"1337/128","pxW":2756,"pxH":1337}}}
-1
postcards/stockholm.json
··· 1 - {"locale":"en-GB","location":{"name":"Stockholm, Sweden","lat":59.3289,"long":18.067},"flip":"book","sentOn":"2016-06-15","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"An aerial photograph of snow-covered Stockholm's harbours."},"back":{"transcription":"\u003cspan lang=\"se-SE\"\u003eHALL KÄFTEN, JP.\u003c/span\u003e","secrets":[[[0.5751088534,0.5138369484],[0.9775036283999999,0.5138369484],[0.9775036283999999,0.7344801795],[0.5751088534,0.7344801795]]]},"frontSize":{"cmW":"689/32","cmH":"1337/64","pxW":2756,"pxH":1337},"context":{"author":{"name":""},"description":""}}
postcards/stockholm.postcard.webp

This is a binary file and will not be displayed.

postcards/stockholm.webp

This is a binary file and will not be displayed.

+1
postcards/thailand-dejavu-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"\"Grandfather\" rock, Ko Samui, Thailand\n","latitude":9.452072579994384,"longitude":100.03957230526304},"flip":"book","sentOn":"2024-03-10","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photo of large rock shaped like a penis, overlooking the sea.","transcription":{}},"back":{"transcription":{"text":"เงียบ, JP.","annotations":[{"type":"locale","value":"th-TH","start":0,"end":10}]},"secrets":[{"prehidden":true,"points":[[0.5512405609,0.448263119],[0.9619741099999999,0.448263119],[0.9619741099999999,0.6245380636],[0.5512405609,0.6245380636]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"61800/3937","cmH":"45100/3937","pxW":3708,"pxH":2706}}}
-1
postcards/thailand-dejavu.json
··· 1 - {"locale":"en-GB","location":{"name":"\"Grandfather\" rock, Ko Samui, Thailand\n","lat":9.452072579994384,"long":100.03957230526304},"flip":"book","sentOn":"2024-03-10","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photo of large rock shaped like a penis, overlooking the sea."},"back":{"transcription":"\u003cspan lang=\"th-TH\"\u003eเงียบ, JP.\u003c/span\u003e\n","secrets":[[[0.5512405609,0.448263119],[0.9619741099999999,0.448263119],[0.9619741099999999,0.6245380636],[0.5512405609,0.6245380636]]]},"frontSize":{"cmW":"61800/3937","cmH":"90200/3937","pxW":3708,"pxH":2706},"context":{"author":{"name":""},"description":""}}
postcards/thailand-dejavu.postcard.webp

This is a binary file and will not be displayed.

postcards/thailand-dejavu.webp

This is a binary file and will not be displayed.

+1
postcards/thailand-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"\"Grandfather\" rock, Ko Samui, Thailand\n","latitude":9.452072579994384,"longitude":100.03957230526304},"flip":"book","sentOn":"2023-10-02","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photo of large rock shaped like a penis, overlooking the sea.","transcription":{}},"back":{"transcription":{"text":"หยุดพูดเหอะ JP","annotations":[{"type":"locale","value":"th-TH","start":0,"end":14}]},"secrets":[{"prehidden":true,"points":[[0.5488372093,0.4070981211],[0.9671682627,0.4070981211],[0.9671682627,0.5929018789],[0.5488372093,0.5929018789]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"182750/11811","cmH":"119750/11811","pxW":3655,"pxH":2395}}}
-1
postcards/thailand.json
··· 1 - {"locale":"en-GB","location":{"name":"\"Grandfather\" rock, Ko Samui, Thailand\n","lat":9.452072579994384,"long":100.03957230526304},"flip":"book","sentOn":"2023-10-02","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photo of large rock shaped like a penis, overlooking the sea."},"back":{"transcription":"\u003cspan lang=\"th-TH\"\u003eหยุดพูดเหอะ JP\u003c/span\u003e\n","secrets":[[[0.5488372093,0.4070981211],[0.9671682627,0.4070981211],[0.9671682627,0.5929018789],[0.5488372093,0.5929018789]]]},"frontSize":{"cmW":"182750/11811","cmH":"239500/11811","pxW":3655,"pxH":2395},"context":{"author":{"name":""},"description":""}}
postcards/thailand.postcard.webp

This is a binary file and will not be displayed.

postcards/thailand.webp

This is a binary file and will not be displayed.

+1
postcards/vancouver-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Stanley Park, Vancouver, Canada","latitude":49.304,"longitude":-123.144},"flip":"book","sentOn":"2022-09-09","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A photograph of a collection of detailed and colourful totem poles of different heights in Stanley Park. They are in front of verdant tall trees, and a rich blue sky.","transcription":{}},"back":{"description":"Explanation text says: The Totem Poles in Stanley Park are a major tourist attraction.","transcription":{"text":"Shut up, JP\n\n(eh)\n","annotations":[{"type":"locale","value":"en-CA","start":0,"end":17}]},"secrets":[{"prehidden":true,"points":[[0.5953991881,0.6036036036],[0.949481281,0.6036036036],[0.949481281,0.750965251],[0.5953991881,0.750965251]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"2217/128","cmH":"777/64","pxW":2217,"pxH":1554}}}
-1
postcards/vancouver.json
··· 1 - {"locale":"en-GB","location":{"name":"Stanley Park, Vancouver, Canada","lat":49.304,"long":-123.144},"flip":"book","sentOn":"2022-09-09","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A photograph of a collection of detailed and colourful totem poles of different heights in Stanley Park. They are in front of verdant tall trees, and a rich blue sky."},"back":{"description":"Explanation text says: The Totem Poles in Stanley Park are a major tourist attraction.","transcription":"\u003cspan lang=\"en-CA\"\u003eShut up, JP\n\n(eh)\u003c/span\u003e\n","secrets":[[[0.5953991881,0.6036036036],[0.949481281,0.6036036036],[0.949481281,0.750965251],[0.5953991881,0.750965251]]]},"frontSize":{"cmW":"2217/128","cmH":"777/32","pxW":2217,"pxH":1554},"context":{"author":{"name":""},"description":""}}
postcards/vancouver.postcard.webp

This is a binary file and will not be displayed.

postcards/vancouver.webp

This is a binary file and will not be displayed.

+1
postcards/vietnam-hologram-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Hoi An, Vietnam","latitude":15.879845988978815,"longitude":108.33875834189223},"flip":"book","sentOn":"2024-04-02","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"An (impossible to scan) holographic print of a colourful illustration of a pre-industrial city (presumably in Vietnam).","transcription":{}},"back":{"transcription":{"text":"Im Lặng, JP.","annotations":[{"type":"locale","value":"vi-VN","start":0,"end":12}]},"secrets":[{"prehidden":true,"points":[[0.3770577476,0.646969697],[0.6553436112,0.646969697],[0.6553436112,0.7848484848999999],[0.3770577476,0.7848484848999999]]}]},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"191300/11811","cmH":"131950/11811","pxW":3826,"pxH":2639}}}
-1
postcards/vietnam-hologram.json
··· 1 - {"locale":"en-GB","location":{"name":"Hoi An, Vietnam","lat":15.879845988978815,"long":108.33875834189223},"flip":"book","sentOn":"2024-04-02","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"An (impossible to scan) holographic print of a colourful illustration of a pre-industrial city (presumably in Vietnam)."},"back":{"transcription":"\u003cspan lang=\"vi-VN\"\u003eIm Lặng, JP.\u003c/span\u003e\n","secrets":[[[0.3770577476,0.646969697],[0.6553436112,0.646969697],[0.6553436112,0.7848484848999999],[0.3770577476,0.7848484848999999]]]},"frontSize":{"cmW":"191300/11811","cmH":"263900/11811","pxW":3826,"pxH":2639},"context":{"author":{"name":""},"description":""}}
postcards/vietnam-hologram.postcard.webp

This is a binary file and will not be displayed.

postcards/vietnam-hologram.webp

This is a binary file and will not be displayed.

+1
postcards/vietnam-meta.json
··· 1 + {"locale":"en-GB","location":{"name":"Ho Chi Minh City, Vietnam","latitude":10.77943355855801,"longitude":106.70009064690898},"flip":"book","sentOn":"2017-03-24","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP","uri":"https://www.byjp.me"},"front":{"description":"A scene made from rolled shapes of paper","transcription":{}},"back":{"description":"A white rectangle of paper stuck to the postcard's thick black backing. It has simple red ink handwriting dead centre.","transcription":{}},"context":{"author":{"name":""},"description":""},"physical":{"frontSize":{"cmW":"2187/128","cmH":"199/16","pxW":2187,"pxH":1592}}}
-1
postcards/vietnam.json
··· 1 - {"locale":"en-GB","location":{"name":"Ho Chi Minh City, Vietnam","lat":10.77943355855801,"long":106.70009064690898},"flip":"book","sentOn":"2017-03-24","sender":{"name":"Claire","uri":"https://www.instagram.com/claire.durrant88/"},"recipient":{"name":"JP"},"front":{"description":"A scene made from rolled shapes of paper"},"back":{"description":"A white rectangle of paper stuck to the postcard's thick black backing. It has simple red ink handwriting dead centre.","transcription":"\u003cspan lang=\"vi-VN\"\u003eĐóng miệng, JP.\u003c/span\u003e"},"frontSize":{"cmW":"2187/128","cmH":"199/8","pxW":2187,"pxH":1592},"context":{"author":{"name":""},"description":""}}
postcards/vietnam.postcard.webp

This is a binary file and will not be displayed.

postcards/vietnam.webp

This is a binary file and will not be displayed.