{"id":1292,"date":"2022-01-01T01:32:03","date_gmt":"2022-01-01T01:32:03","guid":{"rendered":"http:\/\/www.codedread.com\/blog\/?p=1292"},"modified":"2022-01-01T01:32:03","modified_gmt":"2022-01-01T01:32:03","slug":"hack-scratch-2021","status":"publish","type":"post","link":"https:\/\/www.codedread.com\/blog\/archives\/2022\/01\/01\/hack-scratch-2021\/","title":{"rendered":"Hack Scratch 2021"},"content":{"rendered":"\n<p>Well, two posts in a year - that's better than only one!  Let's see, what did I accomplish this year, hack-wise?<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/github.com\/codedread\/bitjs\">bitjs<\/a>, Binary Tools for JavaScript:<ul><li>Added a Zipper to create a zip file in JS from byte arrays (<a href=\"https:\/\/github.com\/codedread\/bitjs\/issues\/29\">issue #29<\/a>). No compression, store-only for now.<\/li><\/ul><\/li><li><a href=\"https:\/\/github.com\/codedread\/kthoom\">kthoom<\/a>, a Comic Book Reader:<ul><li>Added a Metadata Viewer (<a href=\"https:\/\/github.com\/codedread\/kthoom\/issues\/18\">issue #18<\/a>) and Editor (<a href=\"https:\/\/github.com\/codedread\/kthoom\/issues\/49\">issue #49<\/a>) using the aforementioned Zipper.<\/li><\/ul><\/li><li><a href=\"https:\/\/poordog.dev\/games\/tno\/\">TNO<\/a>, a turn-based strategy game:<ul><li>Finished rewriting an old, DOS-based game as <a href=\"https:\/\/poordog.dev\/games\/tno\/\">a web-based game<\/a> for its 25th anniversary \ud83d\ude42<\/li><\/ul><\/li><li><a href=\"https:\/\/github.com\/codedread\/carve\">Carve<\/a>, a vector graphics editor:<ul><li>Started creating a rudimentary SVG editor in the open. Maybe this was irresponsible of me, given <a href=\"https:\/\/github.com\/SVG-Edit\/svgedit\">SVG-edit<\/a> exists and I have lots of history there, but I wanted fresh infrastructure (TypeScript, mainly) and a chance to try and get the architecture right in the beginning..<\/li><\/ul><\/li><li>Music playlist service and player<ul><li>Private project where I assembled all my offline music, created a microservice to arrange, list, edit music into playlists stored in the Cloud (Firestore), and accessed via a web music player.<\/li><\/ul><\/li><\/ul>\n\n\n\n<p>All of these little hack projects are strictly in the service of scratching various itches I have. Any fun projects you worked on this year?<\/p>\n\n\n\n<p>Happy New Year, all!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Well, two posts in a year &#8211; that&#8217;s better than only one! Let&#8217;s see, what did I accomplish this year, hack-wise? bitjs, Binary Tools for JavaScript: Added a Zipper to create a zip file in JS from byte arrays (issue #29). No compression, store-only for now. kthoom, a Comic Book Reader: Added a Metadata Viewer [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1292","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts\/1292","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/comments?post=1292"}],"version-history":[{"count":1,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts\/1292\/revisions"}],"predecessor-version":[{"id":1293,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts\/1292\/revisions\/1293"}],"wp:attachment":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/media?parent=1292"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/categories?post=1292"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/tags?post=1292"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}