From eef8e09f11b3730efd435cb8d0de9848defe279c Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 19 May 2016 14:08:13 -0400 Subject: [PATCH] Screenshot of TodoMVC app --- js/examples/index.md | 2 ++ js/examples/todo/todomvc-screenshot.png | Bin 0 -> 12473 bytes 2 files changed, 2 insertions(+) create mode 100644 js/examples/todo/todomvc-screenshot.png diff --git a/js/examples/index.md b/js/examples/index.md index 89317f2..e2a866e 100644 --- a/js/examples/index.md +++ b/js/examples/index.md @@ -111,6 +111,8 @@ that he and his collaborators have been developing. ## TodoMVC +TodoMVC Example + An implementation of a [standard challenge problem](http://todomvc.com/) for web programming: a to-do list, backed by `localStorage`, with various nice UI features. diff --git a/js/examples/todo/todomvc-screenshot.png b/js/examples/todo/todomvc-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..7a5f61607a4188765189b7b76b9d122bdc3504c7 GIT binary patch literal 12473 zcma*O1yohh_b#e%fI}bY=72~DN-8DYNDBzkE!|xb(%s!5Eg&E*A|)jvAPv%W4&8AV zzyEu8-2Z!TynFW;2N-MYeb(A@&H2r5esdA7q9lWhMS=C;!2?`5SxL1A4;~tV4`w&l(sfsmya=+UQ#J= zg(&WONiaSNODo*zQP|q+1G*?`qXDgQF0B|jOiaDXFEh@kX{|`ViwTwsKbGAAVmO50GyNxD$ZQVq zzyCC~>CQ_cP)2Z5>EeX0l`uYq-VT~r)SGizT2i1DJ7E84&SQ3Ru7}}h8jen|F%`!c zr41A%D-qh$&7*QLO3^!+Jnq7&zWigHrCs5Ml7D(8SfXu3ITEC&r!bUksWX18W%IKn z!MU2}<?=5van$y>KjIDVF9c!^2Y=%W}%u+i}J*i5O;XPS#ow>TiBLBHvNJfR(X$@%$R&G*ieYSv!^{Ok=1e7?bIh zj2+~V!XXn2NaIag=%Cs7Ss?Z1xSBsTzjWzkX<1See{qyzooO!v@)XTFs32_FA$t&$ zp9p#LB%(N$F}VBR50MadE-M^#77OggawRLKATbek=nsd#8K1Ru#+m65!ZBw2DQk?{ zVe!y|gO}x+NWp}coh|oMg%SL5SeS*7&1-wE zCZuIHtJ~f95T~I%>a^aE!N-#B3~or6eHr5!s)w`s-8&k)_gnLlt?Fya9EP!hKF`rV zLe$=jgMK1LOIdPiepIz?Yr$WGh@vxc!Z4TT!ur7Gh$U!oFr%Ze!3+!1a(@Nni4OUH zT~V-ls?DF1o#`uDw!-&al6&uk_`8vZuYGt`Z=96+1AhPhZabSnb^C#cg(PN$>AO*v!4m4dxv{$V>1YP?ZqEvnIxL>i)EKFasAP~Ou@=3p+GfC#TdufD9)s-W9NpU;%Me{^)2dJL(`MF^YT>Z z!?9pPjy6-d&-HI`LM`>zlfBtSnmL85Pfzki^Dt^Tjst4XE>DXUzvKxi?{4nNd!!C- zx1|34O0qWO{v@q{IYL}V$9DXS#>6C#js{(#)9(W|RzVKf_O^JsXh7N>%CapT_4x5c z;5SDR1$eLn0+-e!c8g5fj#9s^iakC@E7B=N4NKKDK8z?@P2RTqGZ(pFqNBpN29}++ z=F=xHc?^laKkseB6NAxv=u51(p|P2HB#L;RG7@n}dDd92&299JC8?F3Pg|=h89c=4 zGb&)_eTm-MvO3V5sX6fFIRwqvj~R0Ivgfu_EW?y0$`e<4-w!ESwuP+M)0y(rht!s= zt;U#G&wTX%mCWo}SS0%+6JL0M7o?YUR&n^!UbXVi_s?xTavrZjP}-~7*DQ({#hpZw zKKb%Do0SCx&HRdc$y0=ftGKu2fOsZ>$b1WCq;X+BO#c&KqE1Vl?eu`z#MqFJgOY!v zfp(+dj9b2slhMCKFV8UL1&dDE^R=P^4GKpG}SZ5Xj zPbB;7q)9D-ZDI0&M|Ar4r9X-B6clYGpO^?z%2PgD7_1Cyv}P#~r8AjZGA6!RkU&0U z`uGk;6y^!D`?{YT>@F%G4y8L>9j&cWkfx^i>EABH@`4ca8Oae|UBQh^IU>j-+xM=61Jp8Eubw6ea4h*U36y1}B<~^5&N|C* zV=%#UWlfsYG+_MMOcu_(w})1t5#S)oBk)lGCeDoO=8E~|bb_B0B|uarbdojL*uM4Gn`Cf&6?CVPhZ;qN7yO>oWUKn6 zz))#3$--wsY+}sECRIp0RB2{SF&r-Dp!7t}&WgZL7hS#~{QVO`DbI4TwQ?;b1RsZT zs^GSJ2P<7jx3NSwN|fSASR^MZN^PEje3wKHnQ{Ojm)Qz(#B+c;ROP2+d_=*Lzfb7( zDsEs%+s%1+On=<9SO5oZg&u2&auyzhp?!H&SMz_yiu9f=VpTu zryUes`=~!O6_XEXRY@7{)^CWzbnKnTH-0AiNNnA)Ef1ym(??diktBih>7fa!KPaa9 zAvAL>dfz_}szsDr2W$DeIvk1m&_E_0cIABZS1xLypqqR{JtxUI+n62xMf@%!5RUzM zaoMh$j1Ur_q(U1F+bP7;FXq81Y-k{6#RyCq?C%d_8x$5~)EI--=4^{X9jW?w6px{> zA{2#jBB^*q9BSQnXypZuDoeKG68pROF#^7EeuotW-iBFb#H_6TO}cYfz=29?e+-Ir zbnudbltEQO15-2}M}N{Nch#Qy0Po-Z!mc^5b~#Ouj3QQI@0hH;Sh)|EXW+^cfXhbn z6p-}xlozAai%~Nd$BNwYNsB)E6K2K#sM1Y}DRG?kFtOLFi%|Jh05LTE?6=DIymD)U z%BSK>{*-_?$`a2mSOk~H>Ut>L;-%01TP%BH~(tzH15GY@zATOsj8sl70xyau$OrjDNB97WgRkldJe$XMM%; z2TnBCe933(8XDs~ND48Si(amhk&E703@_@oC`*IwtSxuD)M0gg(z}#3FZu;rteA`~ zi|E$hjkZR{@3xIm9Rk0t`Lw*gC&TP>?TU8~j{Yz4NOgfni{FUmzxN*gRi7K=fN3o8FWdG_Wi0tnqK-Fj>&b z*NvxI3`mIqcDY*?7d>~8-29|K_C$ZZ;5b7LD6op6T!ISqHc1F`K2&4N?2qfOncpY9 zb!@y3maEfCu9o~>;ZMxF(&mvzNz#WHrIoM@)|Hn>)xPKX$*)|jW_Vqujy35~^(ZQx z(>#Omc!4`T3J#5z4TdEsm3A$tYv6`<8@6PWd=$@DU@T;o=c8(5W6c~6baEV-Pkb8j zkD3}XLNAwKrtJU`gYhU1ZmIlj#6|e>P<(X$*u8vB?|Jp+;>m!B6bBgu?V;WWZ?*jv z(Z|fi<>gKz&Oe}Kdck#g^U+=m@`~j7F1(YjdfD*I;dP(scXo1cf`=#%{l)zsUXt2< zBA7Wf{c42wNvy$#bFTWh}hZeO#-!ee)Vd=5j_;;OSNG|ApFB) zREsF-!UYT*YN}1X5A>q^QmPP%lS_&vG>4HVa&=7mBm>^WC6?={MN2HAPv*0z#9)Ut zgOtzdg3rU#;2K-TMD=Cb@ysu>QHW>tiKO=JAF2|0dwHci)6vu}%d^FJjr!O{kj;U_ z9+~Z&Ghq6A>x&T?f&yu-Z|ySiFlD(P;r{j4u1*SCFFI)jGgkj_kbB z1%56ru{3`oTKe*DV; zDd1!oq%JG?aT-tI`XegouJ~bxnI8edihf*tX1H zDB^ZMpw%Jjv3ZHTz=y*L=Kpd1&A5wA3^!jS_s9xHkL`dZ2CJK9`=p@6^HBa%`P1O1 z@XhzLZhrA??u?xb7p1>k=TDO7Scf~GpRuJq=*2N(qf#gb95I2{@FkkE^- zOfdEjwqzzS#?`FQ?&Yk~O<&RnGC}lfMbVtSd1On-Z~ADFt3pmna#%UvGnxK9-!Mqk z!8L!mW0POjoum|eHl`rMWwj=jlnGIF4PZVkZORWioorp2LFFmuPwrUixM=N8UOzs{ zzZiDUI6Pv*B5BoH*~Lvw7#L?w;&bwoJ5*l28Lw#cJC)j=>`D8*Te>Cox!gLFwpbKa z^fW~C-^!l_n9G)ZSl=fc_M_SU9lUz-7TksbEiv!mggV^*O|?7vUb z{o;vH*G=m6--DP-bhuw2B({d$K++evRBc+S$SJ=}j=m}=>gUsj2CA2!t;KxfVGT?w zZotB5l#bh;d0W+;I6)MaVMP`QC%!_~i^EH5fQ~UFo=IR)9>z=#Rntq&53bT^tKoah zh`ZHt-v6iw$39nso29GNG|aX2mHiK5VUq7MG4M4n7+PpnX0cur0f9;eu)5CzR4vl{ zYs<9g1dbXBrAuDUq9c93xJm$lrgZt`@3@IQV;Cge`Lt)BN zgx65IzF6ADFP4OpOc0^43=U!84!il5*Gzvu8+C&$336F27T(DZLgjC-@D4n#Z?BMd zlT95OC%eVAo>Sjem58Z+@(gF%wP55Wbs&bPRZ3SY5J(tx=IjAk2OrvLmy7YdA$CV#X#kl3{7 zCs_H)_wv}bY2KWyH}`rV_v`qPp66Qf!WOrTv^1jaXe5-@?|jhU_HaYw?qa1c*8il! zpnWYxhsJxCQ(Trl{_EL-_mMI$AKzEstJ627N=7~6zk)t7BBBl#UL;e?Clux0>{@VO z?%l6$zZ*YD1(<}{)4cHVVLFX{KSCxS5iho1ZV3G(h1NjxeW1K$)QI$3trd&|^s zUO!H*if%rPjUF^VKfidr&f8uckZL>Icr$u;jZe3_mTGXjYax<(v?E2TM-(mzrK_r{ zqP_atXSh}%6{)TgIHo*LEg&`$L}SpKpneq|)9~!lY_TOD(p37ZdlvKlq=A z`fqM;U#_wHr;ld`e5|PHxFqd7N26QKc3-&Yml00zwr14N`{wc$;nbCwBkX(Gx_EUnB%Y1fMQ7|U#v2TlS_*bS4}hn|45{<4Itihl?JB^j^HW zJu$dDan8M(;~918A%0t_-+swzaPd>*?nuO>N}K~-)i&SQ=H~K5gFlHuPFduJhb@=S z@!wE7ckbmoIUgKI*fcZjp1* z!|qq>d*xQC)Bj5JZ?m(75GroW%4Ul`@l>AVgFv-yz8KrtdyAg;@-i1k)sFfioPB+L z$KD^`JICSLprC*Nl&+5L?sBU0_8)0ynlntkj6rT^vMOjTCMM?e)Q#^Pur@TYI5W?^ znTDj_#H^Z<^zpI`b;dnd;{CnRl*&1;E^f~{X?IA}T&1O@iKGH35FH;_8%1A9yk6_< zIpg0Z8aCy+9d7-baXoN?^_(xpB*UC5UANV3kF9xS@oM30W_H%T{Y10Ur+;_jZ>`DL zd-Vi{UM*jUxNd*b6$lNGsL$q{@h4vawYJ}EG)G7a6;=c}f5G%$Lg{}CdG4P>Z9Ttu za4pWH;|?jDU!o3Q;6Nc8uVB!nBk4FS8;e_a&TVd6{=gxTZF@nop#QD<3-n>r1#Wzc zv)fG>5iD<2`KfBXtCJdk-;?c$HJa78otF~2kg4{{Cl z1;GFIFyp7q>x>rG6$bp`=tY2N%g?8S<)!L-Vfsb)t+02T8w+Hg#>ica=ic&U4lA|1 zh{_i7J}oQF5pY_CR(jr?OsyQ8o5TtMpaSvEM&iBvkyPJvjreR(eXtJvkqqtzC?SY& zjG-0juo%q&xxj1VRuYu`T%QoT3kcq4-e-s#;Oyy-Vc;$9XOxiWUWpaSQDDTR11>(vB>>C1Ma+$;~fJ#JRVm@&NYuaX7$nf``lyYG7!Vn#fdG>@It#0x~+9=i~e^v zJ&o5x7Q*%Zcegt=oqmfQz8CocHZQMe?+$2#<3z6NMP}PPk3cL-_5MwMtABAZ>YoF1 zTJ$};neDuxRG6T|K|kA_cHV24T5uYC#yjVLN@sfTucxN%@MjFQAdTh_{caTx|J6q~aFatk(oov@zjDo^q+~Se=NVcFmSdEwgW9G0v0MK|@)8UL4 z_#)T)w0Gxy%gf7v7ez-$H+=c>jc7SIZt!_44l5P#AXR=w^E0=p)iKZ@okknr|1yRb zjk9*%J5^2Kotuoh(P1yrgwi-C=jU&Za_^|VQ(@pyeZvaP!%&S^(Xe;3AGzogxpmZf zZ)dtxCcAlxXz9+wqX5&G|=mpXD(b zS|P9FO#n~sdoxndF`nV*s5x(B`{Kojd!zm0^T9)E_ql^*eE+{Z!<`qIoy~}r9e_2+ z=8YT-TA%%I0jT(|_P^bnE#4K<-n?J?ne4vcY0-1T2uXiLa=F@$fluReGVzwyW9eZf zR{w74ZQ|MUP4yj%TwgbU0lbSo-2a70#rgTmAV80L*&jjDqdCLKjR1NAh=K_HfAyHm zS@~Ld1Bc>!sQ^U5ioWa(-91MiK}5ryd)zqC|Cj#He}lFAhR}Zva0;@dS!qUI*I#aY zp_9Eyx3BkpBj04dn4?tMzOqRp;PM{C2C0FMV^^0`*{94 zWce<`Ha$H(|C6`=pgwL4^cDi(3c#34G0~YOT(Z$-`f#Gg&sAD&=aH!rmLv#65{MCU zp*@o1*K@1X(RT`W?!;N7LNH}_xbyr z&AX50io~Aaiv|2=ijmy#qlPJcunb+s#Ay(Wk7HleIj;0RmWlD%5L|ThkLWS>zex2j zE8pJV-v>AV3P{EAj@y$OnZhx^QSNRL?wvaSBukZZg&qGvpu% zsE1>q?&yXTg*$-g5BjK+a`Fuo-$SNG*!y%h*8kc>ydOBABeMOhWoOavY7ZZ**#Cgk zUks|EVEI7bWV+$;l~xovO)-zO1$z z>7|`=Z(8At)kNCsC5*c@gWI)X-bIFB4-3jO{{ogXlu$FE>1f@7CaM9z3nZ4u;Q*66 zVvamon%928XW&WdkClUMnnjIh^{4k1u>qucAmIskVAuGZuzY(M0XF;)qb)cbAQgfV ztIrXRhb1!awNrJ^QX1{%pF+QvC}s*@O^@Q?;x$I_pn<)?Kp`xuJekWbELEw8Yj=m)5C`FBE|P&n$o6u#KC3 z4kIp=rSC^!Vw&~v!wSBdCJ2O^ac1KueUALU!tcZwor{H~c*}+2o<`KcAo;h`yxiQa z?h+EH!uF7|Z*KRu_M;$-;myN=W|oD8KV(+m5EQ33gbSQNy?+=_O@(uHbv&!7Aw=_5 zhOxS*=+|9Azu@cR%>NL)SPsO*S-*d3iH#l>1 z?}f&-T6+=htNrmH*EGy!EoSwp{+k)i;tw)!hC>Phi(+!GSDEer-)yj76h0rXs|4YH zu)o|LE@>=)(#7u&!eXjY`)EDWUen=|07&{sDn5q?Y@bmAJb>SxAs2J&4@*UESm;)J zNDZ>gr~OXrb6@cC8UU6MD|GtTg+`_pql;g}_mU^WjM`?H$(T9{*aUOycl57di#zne?2(g}_zYC*R)Kz8=__ByZTk&~6$&ZJH;;SV0b6zv`=jiS_;^eyi&UAhTM#-u!5N7!?(D zV+*4`nrv}4-I zb^K{GsC0a*w^v%r&eAfx#~7@ueK~|OPiA~#qQP>UQA)MCW&3HLqok^Ct#Qx#a3-4A z2Ta_ySQCK03l?6Rzw#wQ@#Y=-s6poMiuJvT6c=NCtfBaos6xk%>}NyWAz(C55(hw? zYYBMKg-nW>=Xi-?aNO9~Sa&G?MwT^r=ZuoQh4w4J7_dXT9b(&Bv-lhXha^j^n%h7z zm%z||{QGrzxu(jyeG0ZgfDlb{bPCS~ovcS?gb(9UG4ObJdBHw{(p=eh`^`OE`O>t3 zd_33e{J9OJ4*-QfbzZdJc~`Jx32iu13AznkDG-K3hC*W=`)W!FmU~e4c#*Up%l>-y z?AfT$nXdEwRnKcR@#oJma6+5;mJ>ivYK_Q1zOT2;$Z}3Q!n0bq=T7nQkF-*TQ=(J?d?5PrQ<&QVhSeS zakFQ?2;QjG9jU2tQr(K6prjl$uP?C->0Z9CfBkQ!{Hdd*frpJNi#!`V1c9-0Ls1rMF1KWIi4jA4ao{oX2uzebdm`SBNyR>OgWzG2dA5wdeC1IX7cn~< z*=eZ8J;h*&WRdErc}aqT6|xq$?MhX?qpeU8$yq$S5vtHeh(Qlkt7cwRZs#u+Q!KTu zc8Vj2P-~e3%t#Hp=HcyVYS5O}+!uZ4^-7lWm~p)j5yf$JjT4}jMAa(oDm@Mp@$&YT zQf)i`7x_3oj6n{qJ=~bwnpk;HPca~kix}lLR2@3oNNy5m7zFQ6IzBs#EMSJBFo>5|Nus+ngS6jRWr{YmJ2-Z2tOC;~wl zEj<<_8uwe8G+dHMY5@7-9Fupo^mWn`@`gir#La318sDQ*rR>8P#U#R+<6EQGL$)B}4(UJP+st3ZAYJ`+^0FMF0VzdawSW5Sl6cpVF+B+v zc0=A@D9eR$Jd)I-2ZeE-^-%&FNe;t!q)I|Lgk|uBQjJ?gL0TcSM>2njMTID?d5w=q zNBetYCw(`=`d3XdBoSCFx4K^glVW0FerHpNG+)>ajP zm#Xg`w@q!8OKjD=`IRYZ-Z>?DD6RB#SvP4-?9ZoKq6*^+vjH*7;(p!}D%XDUKSLWI zQlVULh`eJ}S{6BrV^z{kldKshXz>e<;V;n&S)Pcq@sDNv6xI}rBX^-c6wzcm9Vnn} zWuCA4)bcFsq*<|t3PbIE<uaT{66TkfxL4PCd9`6U#}pGjgpj}za*@A0DT z38?_2gVw9RHjG7ae$;x*inuI9FDmdrmdmp;(>Ov!f${K7k-U$1ga%>yaCtnEIx)P7 zvd8rM-OqPgV$+Mp=a#jveGasDXCrJm}D#ui)u5~<3ev@F6QW_35#q*WNne)>d1 zESKKD{Vf{@F;@DSP`s0Y?Vm39Pl2N6cM26tr6g#na`|vGu?>{YCCPQ;je^ROj;Br> z)XT6PPnp9-L84;{tXu6Fa*4R+e{2fVgZpnrcg(R}sX2N#DE@i+2i#zr(m`eX;_BXQ zt4z^tJpBb#V>Zgy!je$hC|F`zfO4_VV~K?0tO?-No4pGAz5Ic|P8_oo`zS9CjjWV; z=fw}*j7(?wXt-3z%E;LxdH>01JTxv5-4K>S{P8Wmp%f$JjkP3ZUw$xB1rZGv!Av52 z163O=8pyzg9ApRTy<>C|$3GV!OkbRjh(LukXkw^EPGt%2O)EdBJ7&dE$2G0K!qz~t z4MjgR`Dt~;>ZcJvjcfW4OFsLVc;(hwvLIDQ1=0BdTHS-SynjZDR#RFL4IR5!QEif= zC>SAP>jG;XgIU^dTWB83YmAYKx{8t*E*hZ^2TbghB#{k~mVM~>&lOk`Jif&jauW#&iCQfMjfsVYg`6B3kC>pKpaD~Y##esVUsw1Xu-v`H zV1~HD4bAWQY|Lw3`X^xjU~06@EMbvTV< z^zjP|`n_88@$YSHf`uJ8$f#&&5Zl|odG-K^Dk>^w9jP$?`TLiThv$pW#o^J$Xb^VZ zj+ejx-TAqPvop7e0xbAF4@J17Az}?=LXaMN$u`=`%H+nsgoK26yh7OJDli&F@6^L@ zukg4LUXk^CZXT2a*TehmAyZ%p(~XLt=^mzT7i&7&pAZcZ1X9J2jbz;czURzTj8?m_wROmXk*r+HM zH#hO@$R6W-73kAkI27CqieLKRPvt<7z@#%VF~P;f1wX+Tfc`K*b&yU#F6i#=E?|}} zRGn=c-*S2V8hhgvNu*o?(5fL~vZdqsD(`)KfD9=~|LCvZSb-F{J3tgpg}3r1)B9Zr zIQZFL87cPv?p;hk>cWAL6Vd+lY08Jqb;)(ws+yXb&d$!`Ob*5IOVHubJJVL`=1>?v z&Vh2}l{hcQ(MqvUQ&Ku7)|?^ zk&A#3A0O0hkpHcQtD)fsX9OeMi;zU@1)M3t8AyH9eX1JC&K)+>T)ltGH7dYPg2Mu4 z+Q1|S9<$1z1>LjFD`TlPHWoDpL_U z-B-tk5!7{hdOA5dxx8#7moWFG2Q(tq22;J=9mfgDO_m+_5(kK~tcDz^yH)^@VM4A1$B?mGboBK8j)5)5ojcdS*6U5IZ*XE zQmGPAQczr8UFp1gx1^sh@TV{+DqPLgfgT+Lvr#{m`uWBi=440%Q2!{lT zaWtziL-73hs3v)$)v#F7GD>>D*;e@{8$O1HdF}1g0@Nz+{zh`5uPK*~PunyW76v&Z z^dsTW&*YUh@87Esp&7$kswJFCTg^ZNm=Z|vM0_-{O$`l}8S8eam>D40;V~H{0lbh@ z6S5HSm|!4EtwVPfFcxqYr`gp&t(4*&0dt%eZK!X8qLQPF=SI*4fMSq0( z$iB;G?O!DOOGWN@*>9iY