1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6681],{8380:function(e,t,n){(window.__NEXT_P=window.__NEXT_P||[]).push(["/blog/one-million-checkboxes-data-and-code",function(){return n(2450)}])},2450:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return d},frontmatter:function(){return r},tableOfContents:function(){return a}});var i=n(5893),o=n(9843),l=n(1582);let r={title:"Data and code for One Million Checkboxes",short_title:"Data and Code",subhead:"It's all here",date:"2024-09-17",filter_categories:["code","data","game","multiplayer","omcb"],assets_dir:"one-million-checkboxes-data-and-code",image:"annotated-grid.png",description:"All the data and code behind One Million Checkboxes",rss_description:"I'm releasing all the data and code behind One Million Checkboxes, along with some tooling to create timelapses of the site."},a=[],s=function(e){let{children:t}=e;return(0,i.jsx)(l.Z,{post:r,tableOfContents:a,children:t})};function c(e){let t={a:"a",li:"li",p:"p",ul:"ul",...(0,o.a)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:["\n",(0,i.jsx)(t.p,{children:"Iâve released the data and code from One Million Checkboxes."}),"\n",(0,i.jsxs)(t.ul,{children:["\n",(0,i.jsxs)(t.li,{children:["You can download the data ",(0,i.jsx)(t.a,{href:"https://archive.org/details/one-million-checkboxes-data",children:"here, on the internet archive"})]}),"\n",(0,i.jsxs)(t.li,{children:["You can find some tools for generating timelapses from the data ",(0,i.jsx)(t.a,{href:"https://github.com/nolenroyalty/one-million-checkboxes-data-scripts",children:"over here, on github"})]}),"\n",(0,i.jsxs)(t.li,{children:["And you can see the original code and how it evolved ",(0,i.jsx)(t.a,{href:"https://github.com/nolenroyalty/one-million-checkboxes",children:"here, on github"})]}),"\n"]}),"\n",(0,i.jsx)(t.p,{children:"Thanks for playing. More games to come :)"}),"\n"]})}function d(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return(0,i.jsx)(s,{...e,children:(0,i.jsx)(c,{...e})})}},1582:function(e,t,n){"use strict";n.d(t,{Z:function(){return Z}});var i=n(5893),o=n(7294),l=n(1754),r=n(1686),a=n(9711),s=n(2172);let c=r.ZP.a.withConfig({componentId:"sc-d1d98fc4-0"})(["font-family:var(--regular-font);color:var(--color-white-dim);text-decoration:none;line-height:1.2;margin:0;width:fit-content;&:visited{color:var(--color-white-dim);}@media (hover:hover){&:hover{color:var(--color-white);}}"]),d=(0,r.ZP)(c).withConfig({componentId:"sc-d1d98fc4-1"})(["font-size:var(--font-size-lsmall);&:not(:first-child){margin-top:0.375rem;}"]),h=(0,r.ZP)(c).withConfig({componentId:"sc-d1d98fc4-2"})(["font-size:var(--font-size-lsmall);margin-top:0.375rem;"]),f=(0,r.ZP)(c).withConfig({componentId:"sc-d1d98fc4-3"})(["font-size:var(--font-size-small);margin-left:0.25rem;margin-top:0.125rem;"]),m=(0,r.ZP)(c).withConfig({componentId:"sc-d1d98fc4-4"})(["font-size:var(--font-size-xsmall);margin-left:0.25rem;margin-top:0.125rem;"]),u=(0,r.ZP)(c).withConfig({componentId:"sc-d1d98fc4-5"})(["font-size:var(--font-size-xsmall);margin-left:0.25rem;margin-top:0.125rem;"]),g=r.ZP.nav.withConfig({componentId:"sc-d1d98fc4-6"})(["display:flex;flex-direction:column;padding-right:64px;"]),p="toc:title";var x=o.memo(function(e){let{items:t,title:n}=e;return n&&(t=[{level:1,text:n,id:p,href:"#".concat(p)},...t]),(0,i.jsx)(g,{children:t.map(e=>{let{id:t,href:n}=e,o=null;return 1===e.level?o=d:2===e.level?o=h:3===e.level?o=f:4===e.level?o=m:5===e.level&&(o=u),(0,i.jsx)(o,{href:n,children:e.text},t)})})}),v=n(3715),j=n(9332),b=n(1916),C=n(337),w=n(1413);let _=r.ZP.nav.withConfig({componentId:"sc-67c5266d-0"})(["display:none;@media ","{display:revert;position:sticky;top:2rem;}"],l.vb.TWO_COLUMN_LAYOUT),k=r.ZP.h4.withConfig({componentId:"sc-67c5266d-1"})(["margin-top:0;font-size:var(--font-size-large);"]);var Z=function(e){let{children:t,post:n,tableOfContents:l,noFooter:r=!1}=e,c=o.useRef(null),d=null!=l&&l.length>0,h=(0,j.usePathname)(),f=d?(0,i.jsxs)(_,{children:[(0,i.jsx)(k,{children:"Table of Contents"}),(0,i.jsx)(x,{items:l,title:n.short_title})]}):null,m=(0,i.jsx)(a.Dr,{contentRef:c}),u=n.image?"https://eieio.games/images/".concat(n.assets_dir,"/").concat(n.image):null;return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(w.Z,{title:n.title,de
1scription:n.description,image:u,type:"article",date:n.date}),(0,i.jsx)(a.pD,{children:(0,i.jsx)(a.Od,{id:1,children:(0,i.jsx)(s.CL,{path:n.assets_dir,children:(0,i.jsx)(b.Z,{additionalLeftContent:f,additionalRightContent:m,noFooter:r,children:(0,i.jsxs)(C.Ls,{ref:c,children:[(0,i.jsx)(v.Z,{titleId:p,title:n.title,subhead:n.subhead,date:n.date,href:h}),t]})})})})})]})}}},function(e){e.O(0,[959,4952,3299,2888,9774,179],function(){return e(e.s=8380)}),_N_E=e.O()}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.