{"id":1026,"date":"2011-09-19T05:23:45","date_gmt":"2011-09-19T05:23:45","guid":{"rendered":"http:\/\/www.codedread.com\/blog\/?p=1026"},"modified":"2016-07-23T18:15:34","modified_gmt":"2016-07-23T18:15:34","slug":"binary-tools-for-javascript","status":"publish","type":"post","link":"https:\/\/www.codedread.com\/blog\/archives\/2011\/09\/19\/binary-tools-for-javascript\/","title":{"rendered":"Binary Tools for JavaScript"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\" width=\"100\" height=\"100\" style=\"float:right\" src=\"http:\/\/codedread.com\/clipart\/tools.svgz\" alt=\"I want to believe. SVG as an image format.\" \/>As promised, I have a tiny thing to announce here.  I recently split off and refactored the code that deals binary data in <a href=\"https:\/\/github.com\/comicweb\/kthoom\">kthoom<\/a> into a new open source project: <a href=\"https:\/\/github.com\/codedread\/bitjs\">https:\/\/github.com\/codedread\/bitjs<\/a>, Binary Tools for JavaScript.<\/p>\n<p>The faster and faster JavaScript engines in modern browsers and the rise of new technologies like <a href=\"http:\/\/www.khronos.org\/registry\/typedarray\/specs\/latest\/\">Typed Arrays<\/a>, <a href=\"http:\/\/dev.w3.org\/html5\/workers\/\">Web Workers<\/a>, and <a href=\"http:\/\/www.w3.org\/TR\/FileAPI\/\">the File APIs<\/a> mean that browsers can actually be used to read in binary formats completely on the client-side (as long as native performance isn't a requirement).<\/p>\n<p>For now the library includes two main capabilities:<\/p>\n<ul>\n<li>streams for reading in bits and bytes from a Typed Array<\/li>\n<li>unarchiving zip, rar or tar files (that's right, you can unzip and unrar in JavaScript now)<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>As promised, I have a tiny thing to announce here. I recently split off and refactored the code that deals binary data in kthoom into a new open source project: https:\/\/github.com\/codedread\/bitjs, Binary Tools for JavaScript. The faster and faster JavaScript engines in modern browsers and the rise of new technologies like Typed Arrays, Web Workers, [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[38,25,11,28],"tags":[],"class_list":["post-1026","post","type-post","status-publish","format-standard","hentry","category-javascript","category-software","category-technology","category-web"],"_links":{"self":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts\/1026","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=1026"}],"version-history":[{"count":9,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts\/1026\/revisions"}],"predecessor-version":[{"id":1071,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts\/1026\/revisions\/1071"}],"wp:attachment":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/media?parent=1026"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/categories?post=1026"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/tags?post=1026"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}