{"url":"https://api.github.com/gists/1276463","forks_url":"https://api.github.com/gists/1276463/forks","commits_url":"https://api.github.com/gists/1276463/commits","id":"1276463","node_id":"MDQ6R2lzdDEyNzY0NjM=","git_pull_url":"https://gist.github.com/1276463.git","git_push_url":"https://gist.github.com/1276463.git","html_url":"https://gist.github.com/mbostock/1276463","files":{".block":{"filename":".block","type":"text/plain","language":null,"raw_url":"https://gist.githubusercontent.com/mbostock/1276463/raw/703d310b399098a243a76a50bc209167e924cfd2/.block","size":17,"truncated":false,"content":"license: gpl-3.0\n","encoding":"utf-8"},"README.md":{"filename":"README.md","type":"text/markdown","language":"Markdown","raw_url":"https://gist.githubusercontent.com/mbostock/1276463/raw/4b874ebe095f5c15eba04927d34e942d2915fb01/README.md","size":1748,"truncated":false,"content":"**Mouseover to draw circles!**\n\nThis is a quick proof-of-concept example demonstrating how to create a [canvas](http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html) scenegraph in the DOM using custom namespaced elements. The scenegraph in this example consists of a simple container `sketch` element and a number of child `circle` elements:\n\n<pre>&lt;custom:sketch width=\"960\" height=\"500\">\n  &lt;custom:circle x=\"300\" y=\"400\" r=\"128\" strokeStyle=\"red\"/>\n  &lt;custom:circle x=\"302\" y=\"404\" r=\"129\" strokeStyle=\"red\"/>\n  …\n&lt;/custom:sketch></pre>\n\nThe browser ignores these elements because they exist in our \"custom\" namespace. To render them, we use a timer that iterates over the child elements and draws them to a canvas element.\n\nWhy do this? Well, if you wanted your own *custom representation* tailored to a specific application or domain, you can! This example demonstrates how to use the DOM to implement your own element hierarchy and render it to canvas. If you're designing a *general-purpose* graphical representation, though, I recommend using [SVG](http://www.w3.org/TR/SVG/) instead. For comparison, see the original [OMG Particles!](http://bl.ocks.org/1062544) example.\n\nImplementation note: I'd prefer to use [DOM Mutation Events](http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-eventgroupings-mutationevents) to listen for changes to our custom elements, but browsers seem a bit sluggish in reporting them, particularly when elements are removed. If you have a slow-moving scene, you could probably get away with using mutation events rather than a timer that runs continuously. Alternatively, you could improve this example by stopping the timer after extended periods of activity.","encoding":"utf-8"},"index.html":{"filename":"index.html","type":"text/html","language":"HTML","raw_url":"https://gist.githubusercontent.com/mbostock/1276463/raw/a28a178570111771fb30fa7bfec0cfbcf360a1a4/index.html","size":2200,"truncated":false,"content":"<!DOCTYPE html>\n<meta charset=\"utf-8\">\n<body>\n<script src=\"https://d3js.org/d3.v3.min.js\"></script>\n<script>\n\n// Register the \"custom\" namespace prefix for our custom elements.\nd3.ns.prefix.custom = \"https://d3js.org/namespace/custom\";\n\nvar width = 960,\n    height = 500;\n\n// Add our \"custom\" sketch element to the body.\nvar sketch = d3.select(\"body\").append(\"custom:sketch\")\n    .attr(\"width\", width)\n    .attr(\"height\", height)\n    .call(custom);\n\n// On each mouse move, create a circle that increases in size and fades away.\nd3.select(window).on(\"mousemove\", function() {\n  sketch.append(\"custom:circle\")\n      .attr(\"x\", d3.event.clientX)\n      .attr(\"y\", d3.event.clientY)\n      .attr(\"radius\", 0)\n      .attr(\"strokeStyle\", \"red\")\n    .transition()\n      .duration(2000)\n      .ease(Math.sqrt)\n      .attr(\"radius\", 200)\n      .attr(\"strokeStyle\", \"white\")\n      .remove();\n});\n\nfunction custom(selection) {\n  selection.each(function() {\n    var root = this,\n        canvas = root.parentNode.appendChild(document.createElement(\"canvas\")),\n        context = canvas.getContext(\"2d\");\n\n    canvas.style.position = \"absolute\";\n    canvas.style.top = root.offsetTop + \"px\";\n    canvas.style.left = root.offsetLeft + \"px\";\n\n    // It'd be nice to use DOM Mutation Events here instead.\n    // However, they appear to arrive irregularly, causing choppy animation.\n    d3.timer(redraw);\n\n    // Clear the canvas and then iterate over child elements.\n    function redraw() {\n      canvas.width = root.getAttribute(\"width\");\n      canvas.height = root.getAttribute(\"height\");\n      for (var child = root.firstChild; child; child = child.nextSibling) draw(child);\n    }\n\n    // For now we only support circles with strokeStyle.\n    // But you should imagine extending this to arbitrary shapes and groups!\n    function draw(element) {\n      switch (element.tagName) {\n        case \"circle\": {\n          context.strokeStyle = element.getAttribute(\"strokeStyle\");\n          context.beginPath();\n          context.arc(element.getAttribute(\"x\"), element.getAttribute(\"y\"), element.getAttribute(\"radius\"), 0, 2 * Math.PI);\n          context.stroke();\n          break;\n        }\n      }\n    }\n  });\n};\n\n</script>\n","encoding":"utf-8"},"thumbnail.png":{"filename":"thumbnail.png","type":"image/png","language":null,"raw_url":"https://gist.githubusercontent.com/mbostock/1276463/raw/6fcec22df06cfe389ad3e188dff35af353af71e8/thumbnail.png","size":13550,"truncated":false,"content":"iVBORw0KGgoAAAANSUhEUgAAAOYAAAB4CAYAAADmBo6IAAAAGXRFWHRTb2Z0\nd2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAANJBJREFUeNrs3cmPZclVx/HX\n5TJzA27AzPNsBgsDAsQGCxBCQogF/wArNgiJFVvvWIPEBgkJsQOWgBAskEBi\nFrOZzTwbbDMbsKHwl6uP83T4ZXVndlVWZlWE9Kry3XdvRNx7zy/OiTM+9+DB\ng7ecTqfXvufzrtNuu+32pNur3/N56/33/POa93ye389jt91uTXvXvf0Mdtvt\n9rUNzN1228DcbbfdNjB3220Dc7fddtvA3G23DczddtvtJtv9/QheQfvf/z2d\n3v3u4/8HD47/52//v/TdOz6vfvXp9KpXnU7PPbef224bmI+0BcL//u/T6V3v\nOoAYyADtf/7n+ARIoOycjtU+4AOO4//5nwdQ3//9j0+A7f97W3jZbQPz5bWA\n9V//dXze7/0OEMb1AlPgDKj9Haj6+/7949P3yzhjQA2cnV////RPx/nPP3/B\neQNq4+32zLbnHjx48Lb3/P/CM/0UAhmgBYz+fuc7D8AElrhdAMQVA+oHf/Dp\n9CEf8mgAFFAbLzA3DhG5cT/wAzeVPnvt7c8mMAPXv//76fRv/3aAECcMiMTU\n/v6gDzqOJ772CTAf+qEHeAC4/wNnILr/CgWQAG9BaOzG7Ht9933vTzcwn0qx\nNCAmOgaAQBSxBzJA+5d/Of4OfIEtAP/rvx6/xSH7P7B0nEIHJ43rBdzE0Pp9\nJXvG5tfCEbfs09/1X7+bg25gPjUtML7tbRdiacQdJ6Ql/ed/PoAU+DrWeYE0\nwAW8ABGQKWtw3bhZIHJt53QMl+vYK+FyLQqJtB/2YUc/fW/cvm9l0QbmnWwR\nNEAGpte85gJ4lDOJogEwoAa+CYhAhjvRxgZCSp76ql/9xNX6rX1nAP6P/zg+\nnVc/1wVo4zaf+gnsjeV74+y2gXlnFDl/9VeH2PnhH37BHQNNvzFfBBoc1N4w\nTtc5RMauS6Sde0d7S6aP/k+jSmljX9j3wNP3ROhAFGivK4bjznFLc63vzT03\nMG99e8c7Tqe//uvT6aM+6iBYHG7uBwNaXLKGyGtxvADXscDLXsmBoOvsSc9x\ntBrFEK4beFocujZxub5eeOH63LP7CeRx/+6p743TGPe35WsD87a1CPRv/ubg\n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\nI19oQLmyqeEyk1xzuiCu8XZSfmEqzHC5ae5g/J+cS6Jt2eBx2snNOJ4z6M9C\nTy1AjS/wHFAsGDIaJtF4rmJMz4ndKzDnedPR3/ume1C23rztYSX1lh1RlE6L\nymqj3RzzIU11LpWhETWjshck1+o0mxCH+Zfaj62NDa2+Z8nzPo0lOVTXN2b9\n08SqC8KHtHk1X9xEqFXcMhc1pgCiIi8WXIMYOveDMx6Vw4UcQNP7B5dfY0M9\nq+k8j/PPTAyib1ZPphkZQwFFWz6d0wGCxw8tLk4peNwCN2uTrnGya6Bz56/z\nIoZPjbP3p4zgaq6a+++Oz2iVLcpesUXUxNj+j7NEBGo0eviCaotsX0WTwJei\nJUIJvNOEQqzECeJkraTtoURQ4H40gziKGhxxKL/TmjbHuCQgS3sS0bW6q9fh\nXhBuxIUwcfepZOLFBCxqczpnFQE5kRPB56LVOAKu7Seb+wwb4zxeM0e+s/b1\nJADPnW0TqOdCNIPGceS1GJQ94zTtTE2193YuNhaHpoVfr5mKJfvSO57U68kA\nsxfCcyPuhRhkB19B3Itmp5yNB1BA6u+IMhG4Fzgzvc0mVQeFEwdpcaA4QZ/G\nZC5oL6nsQHOkfeXWZs8mq57McMoINhfiKb9TttOZXQ/oELH0kVNrjHtfVrBH\nPCrg2sdO7oW4efrg7sRJ2nMeSNK+yFrQnHnpzNxIMzBggnC1pdbXGponMdc8\nzm2PFIQGVtPLXLxWJ5YNzCu0OFMcjLlD3Q3VlycXaPXlmQO8VnKeIWyAqk31\nctSD5FvKSV62cZ499mWBjCN8RCDekejIXCDn6wQj5RSPGU7mNNGImQmGT3BE\nzGRAEpjODP3d4jTtvghx5aSBiZQwzTOTA1GqcVToI8tB98GxQ0jcLIUoS77n\nL8KHBt2+dJVu6m8NQ5uJzDRbgAnMqXkWLjhts+eUPBaXDcxrtrhmRBpniUAU\n1kmrNp0NeiEK4fQ7RwKZ6SYnpTavL/tUnDGioqnlV+s4zsamSrRMjJZNrtAn\nHCRiU3wHYdrvAEBgtQfmnSRkDbdiarHC04jyA+78+pmLkTQpM5O5PbEYzdVM\npTWfzmnOM2v8vA9KFGacnkfnUsI1V6FizYWSRZb66ZdL7Kf8ArZZcmJy0fXY\nFIGVmhBqhkMTZ6et+rKs/RuYL1MRxCEgcNZmMR6Eh6vIIsD/FJF03qokqvHP\n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\nRK5CYII=\n","encoding":"base64"}},"public":true,"created_at":"2011-10-10T20:41:57Z","updated_at":"2023-02-04T21:57:10Z","description":"DOM-to-Canvas using D3","comments":1,"user":null,"comments_enabled":true,"comments_url":"https://api.github.com/gists/1276463/comments","owner":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"forks":[{"url":"https://api.github.com/gists/8026287","user":{"login":"vectorsize","id":1661889,"node_id":"MDQ6VXNlcjE2NjE4ODk=","avatar_url":"https://avatars.githubusercontent.com/u/1661889?v=4","gravatar_id":"","url":"https://api.github.com/users/vectorsize","html_url":"https://github.com/vectorsize","followers_url":"https://api.github.com/users/vectorsize/followers","following_url":"https://api.github.com/users/vectorsize/following{/other_user}","gists_url":"https://api.github.com/users/vectorsize/gists{/gist_id}","starred_url":"https://api.github.com/users/vectorsize/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vectorsize/subscriptions","organizations_url":"https://api.github.com/users/vectorsize/orgs","repos_url":"https://api.github.com/users/vectorsize/repos","events_url":"https://api.github.com/users/vectorsize/events{/privacy}","received_events_url":"https://api.github.com/users/vectorsize/received_events","type":"User","user_view_type":"public","site_admin":false,"name":"Victor Saiz","company":"oddknobs","blog":"vsaiz.me","location":"Madrid","email":"vectorsize@gmail.com","hireable":null,"bio":null,"twitter_username":null,"public_repos":43,"public_gists":15,"followers":140,"following":542,"created_at":"2012-04-20T06:38:12Z","updated_at":"2026-05-11T13:20:18Z"},"id":"8026287","created_at":"2013-12-18T17:22:36Z","updated_at":"2015-12-31T18:22:16Z"},{"url":"https://api.github.com/gists/95ba6dc5426cbbc491ce","user":{"login":"enjoylife","id":877194,"node_id":"MDQ6VXNlcjg3NzE5NA==","avatar_url":"https://avatars.githubusercontent.com/u/877194?v=4","gravatar_id":"","url":"https://api.github.com/users/enjoylife","html_url":"https://github.com/enjoylife","followers_url":"https://api.github.com/users/enjoylife/followers","following_url":"https://api.github.com/users/enjoylife/following{/other_user}","gists_url":"https://api.github.com/users/enjoylife/gists{/gist_id}","starred_url":"https://api.github.com/users/enjoylife/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/enjoylife/subscriptions","organizations_url":"https://api.github.com/users/enjoylife/orgs","repos_url":"https://api.github.com/users/enjoylife/repos","events_url":"https://api.github.com/users/enjoylife/events{/privacy}","received_events_url":"https://api.github.com/users/enjoylife/received_events","type":"User","user_view_type":"public","site_admin":false,"name":"Matthew Clemens","company":"Uber","blog":"mdc.life","location":"Berkeley, CA","email":"matt.d.clemens@gmail.com","hireable":null,"bio":"Try, fail, learn, improve.","twitter_username":null,"public_repos":142,"public_gists":238,"followers":27,"following":17,"created_at":"2011-06-26T19:09:45Z","updated_at":"2026-04-07T20:42:13Z"},"id":"95ba6dc5426cbbc491ce","created_at":"2014-07-07T21:10:47Z","updated_at":"2015-08-29T14:03:40Z"},{"url":"https://api.github.com/gists/79903651be1f0c5bb9d2","user":{"login":"jusio","id":704451,"node_id":"MDQ6VXNlcjcwNDQ1MQ==","avatar_url":"https://avatars.githubusercontent.com/u/704451?v=4","gravatar_id":"","url":"https://api.github.com/users/jusio","html_url":"https://github.com/jusio","followers_url":"https://api.github.com/users/jusio/followers","following_url":"https://api.github.com/users/jusio/following{/other_user}","gists_url":"https://api.github.com/users/jusio/gists{/gist_id}","starred_url":"https://api.github.com/users/jusio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jusio/subscriptions","organizations_url":"https://api.github.com/users/jusio/orgs","repos_url":"https://api.github.com/users/jusio/repos","events_url":"https://api.github.com/users/jusio/events{/privacy}","received_events_url":"https://api.github.com/users/jusio/received_events","type":"User","user_view_type":"public","site_admin":false,"name":"jusiočřывп","company":null,"blog":"","location":"Czech Republic, Prague","email":null,"hireable":true,"bio":null,"twitter_username":null,"public_repos":12,"public_gists":3,"followers":14,"following":3,"created_at":"2011-04-01T20:50:46Z","updated_at":"2026-02-26T14:54:23Z"},"id":"79903651be1f0c5bb9d2","created_at":"2014-08-03T10:06:04Z","updated_at":"2015-08-29T14:04:50Z"},{"url":"https://api.github.com/gists/458e88fef3efdb118a08","user":{"login":"sandeepsupal","id":2233207,"node_id":"MDQ6VXNlcjIyMzMyMDc=","avatar_url":"https://avatars.githubusercontent.com/u/2233207?v=4","gravatar_id":"","url":"https://api.github.com/users/sandeepsupal","html_url":"https://github.com/sandeepsupal","followers_url":"https://api.github.com/users/sandeepsupal/followers","following_url":"https://api.github.com/users/sandeepsupal/following{/other_user}","gists_url":"https://api.github.com/users/sandeepsupal/gists{/gist_id}","starred_url":"https://api.github.com/users/sandeepsupal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sandeepsupal/subscriptions","organizations_url":"https://api.github.com/users/sandeepsupal/orgs","repos_url":"https://api.github.com/users/sandeepsupal/repos","events_url":"https://api.github.com/users/sandeepsupal/events{/privacy}","received_events_url":"https://api.github.com/users/sandeepsupal/received_events","type":"User","user_view_type":"public","site_admin":false,"name":"Sandeep Supal","company":"Oracle","blog":"https://sandeepsupal.github.io/portfolio/","location":"Mumbai","email":"sam_supal@yahoo.co.in","hireable":true,"bio":"www.linkedin.com/in/sandeepsupal/","twitter_username":null,"public_repos":110,"public_gists":3,"followers":3,"following":4,"created_at":"2012-08-28T08:51:39Z","updated_at":"2026-05-14T07:59:20Z"},"id":"458e88fef3efdb118a08","created_at":"2015-01-29T11:00:03Z","updated_at":"2015-08-29T14:14:19Z"},{"url":"https://api.github.com/gists/36ece6c0d25c7e78760aa64b8ef383eb","user":{"login":"git-ashish","id":2697421,"node_id":"MDQ6VXNlcjI2OTc0MjE=","avatar_url":"https://avatars.githubusercontent.com/u/2697421?v=4","gravatar_id":"","url":"https://api.github.com/users/git-ashish","html_url":"https://github.com/git-ashish","followers_url":"https://api.github.com/users/git-ashish/followers","following_url":"https://api.github.com/users/git-ashish/following{/other_user}","gists_url":"https://api.github.com/users/git-ashish/gists{/gist_id}","starred_url":"https://api.github.com/users/git-ashish/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/git-ashish/subscriptions","organizations_url":"https://api.github.com/users/git-ashish/orgs","repos_url":"https://api.github.com/users/git-ashish/repos","events_url":"https://api.github.com/users/git-ashish/events{/privacy}","received_events_url":"https://api.github.com/users/git-ashish/received_events","type":"User","user_view_type":"public","site_admin":false,"name":"Ashish Singh","company":null,"blog":"https://iashishsingh.com","location":"Vadodara, Gujarat, India","email":null,"hireable":true,"bio":"Freelance Data Visualisation Consultant","twitter_username":null,"public_repos":153,"public_gists":157,"followers":22,"following":57,"created_at":"2012-11-01T08:37:06Z","updated_at":"2026-04-28T16:36:13Z"},"id":"36ece6c0d25c7e78760aa64b8ef383eb","created_at":"2019-05-08T06:56:29Z","updated_at":"2019-05-08T06:56:29Z"},{"url":"https://api.github.com/gists/244035c31c66eb23ff9723f31e5e0bb9","user":{"login":"jasperchow5915","id":11704794,"node_id":"MDQ6VXNlcjExNzA0Nzk0","avatar_url":"https://avatars.githubusercontent.com/u/11704794?v=4","gravatar_id":"","url":"https://api.github.com/users/jasperchow5915","html_url":"https://github.com/jasperchow5915","followers_url":"https://api.github.com/users/jasperchow5915/followers","following_url":"https://api.github.com/users/jasperchow5915/following{/other_user}","gists_url":"https://api.github.com/users/jasperchow5915/gists{/gist_id}","starred_url":"https://api.github.com/users/jasperchow5915/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasperchow5915/subscriptions","organizations_url":"https://api.github.com/users/jasperchow5915/orgs","repos_url":"https://api.github.com/users/jasperchow5915/repos","events_url":"https://api.github.com/users/jasperchow5915/events{/privacy}","received_events_url":"https://api.github.com/users/jasperchow5915/received_events","type":"User","user_view_type":"public","site_admin":false,"name":"Jasper C.","company":null,"blog":"","location":"Melbourne","email":null,"hireable":null,"bio":null,"twitter_username":null,"public_repos":49,"public_gists":20,"followers":0,"following":1,"created_at":"2015-03-29T09:58:58Z","updated_at":"2025-06-19T09:48:55Z"},"id":"244035c31c66eb23ff9723f31e5e0bb9","created_at":"2019-09-10T05:52:10Z","updated_at":"2019-09-10T05:52:11Z"},{"url":"https://api.github.com/gists/5ef11cc637a2c6f7d6041379ec471035","user":{"login":"sprig","id":2652983,"node_id":"MDQ6VXNlcjI2NTI5ODM=","avatar_url":"https://avatars.githubusercontent.com/u/2652983?v=4","gravatar_id":"","url":"https://api.github.com/users/sprig","html_url":"https://github.com/sprig","followers_url":"https://api.github.com/users/sprig/followers","following_url":"https://api.github.com/users/sprig/following{/other_user}","gists_url":"https://api.github.com/users/sprig/gists{/gist_id}","starred_url":"https://api.github.com/users/sprig/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sprig/subscriptions","organizations_url":"https://api.github.com/users/sprig/orgs","repos_url":"https://api.github.com/users/sprig/repos","events_url":"https://api.github.com/users/sprig/events{/privacy}","received_events_url":"https://api.github.com/users/sprig/received_events","type":"User","user_view_type":"public","site_admin":false,"name":null,"company":null,"blog":"slumpy.org","location":null,"email":null,"hireable":null,"bio":null,"twitter_username":null,"public_repos":686,"public_gists":30,"followers":31,"following":21,"created_at":"2012-10-25T22:47:03Z","updated_at":"2026-04-08T11:18:11Z"},"id":"5ef11cc637a2c6f7d6041379ec471035","created_at":"2023-02-03T10:01:11Z","updated_at":"2023-02-03T10:01:12Z"}],"history":[{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"a166f6666a3e4f681c48c9491e26490e836a2925","committed_at":"2016-02-09T00:35:21Z","change_status":{"total":5,"additions":2,"deletions":3},"url":"https://api.github.com/gists/1276463/a166f6666a3e4f681c48c9491e26490e836a2925"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"7e717f0c7f385b648f5b8bb86919dc5e6dc53244","committed_at":"2016-02-09T00:35:14Z","change_status":{"total":1,"additions":1,"deletions":0},"url":"https://api.github.com/gists/1276463/7e717f0c7f385b648f5b8bb86919dc5e6dc53244"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"f6a0f6d57f9b2c75a8d7525ae35f5bfc391fada9","committed_at":"2015-06-12T21:28:04Z","change_status":{"total":0,"additions":0,"deletions":0},"url":"https://api.github.com/gists/1276463/f6a0f6d57f9b2c75a8d7525ae35f5bfc391fada9"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"b68c4676caf346008530a94db4b7e6194c3cb18b","committed_at":"2015-06-12T21:28:04Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/1276463/b68c4676caf346008530a94db4b7e6194c3cb18b"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"7b743f1a6a73d0f4ce55c71fb7ef35da427b181f","committed_at":"2015-06-12T21:27:50Z","change_status":{"total":31,"additions":10,"deletions":21},"url":"https://api.github.com/gists/1276463/7b743f1a6a73d0f4ce55c71fb7ef35da427b181f"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"6f7ab4a94f4fc78fb0483d6cbc9d70b2368aadc2","committed_at":"2012-10-12T03:48:01Z","change_status":{"total":0,"additions":0,"deletions":0},"url":"https://api.github.com/gists/1276463/6f7ab4a94f4fc78fb0483d6cbc9d70b2368aadc2"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"4f4266997b387586bfdd591c30d002a2bad36e0b","committed_at":"2011-10-10T20:56:58Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/1276463/4f4266997b387586bfdd591c30d002a2bad36e0b"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"197c0270ce9d8d5cf430ca1198729da872a10183","committed_at":"2011-10-10T20:54:53Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/1276463/197c0270ce9d8d5cf430ca1198729da872a10183"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"37951fd272439f1d668af583c6480300206ab215","committed_at":"2011-10-10T20:53:22Z","change_status":{"total":4,"additions":2,"deletions":2},"url":"https://api.github.com/gists/1276463/37951fd272439f1d668af583c6480300206ab215"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"3e3106a0c3d96fa008945673fb99ed6ab79c0752","committed_at":"2011-10-10T20:49:52Z","change_status":{"total":10,"additions":4,"deletions":6},"url":"https://api.github.com/gists/1276463/3e3106a0c3d96fa008945673fb99ed6ab79c0752"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"03caad940ab1fa2f300a6b5f82e2bde484810ce0","committed_at":"2011-10-10T20:48:56Z","change_status":{},"url":"https://api.github.com/gists/1276463/03caad940ab1fa2f300a6b5f82e2bde484810ce0"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"8192fda6f745f8a9a5c4d8f1a25f7d6566867dbc","committed_at":"2011-10-10T20:47:19Z","change_status":{},"url":"https://api.github.com/gists/1276463/8192fda6f745f8a9a5c4d8f1a25f7d6566867dbc"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"67b3f4343d7f7d084303a53e397ac505f41af550","committed_at":"2011-10-10T20:42:38Z","change_status":{},"url":"https://api.github.com/gists/1276463/67b3f4343d7f7d084303a53e397ac505f41af550"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"2f25ea936e4a3a13eea44c3bdc10e211a59c9912","committed_at":"2011-10-10T20:41:57Z","change_status":{},"url":"https://api.github.com/gists/1276463/2f25ea936e4a3a13eea44c3bdc10e211a59c9912"}],"truncated":false}