1import{S as _t,i as kt,s as Et,k as l,q as o,a as f,l as i,m as n,r as s,h as t,c as m,n as p,X as de,H as Pt,b as h,F as a,G as Qe}from"./index.f054af2f.js";function It(gt){let c,ue,Q,j,we,V,b,ce,k,be,ye,Y,d,ve,E,ge,_e,P,ke,Ee,I,Pe,Ie,Z,y,Se,S,Te,Ae,$,v,Je,x,Ge,He,ee,O,je,te,u,xe,T,Oe,Re,A,Ce,Me,J,Ne,Be,ae,R,We,oe,w,ze,G,Le,Ue,H,qe,Fe,se,C,X,Xe,re,M,N,le,B,K,Ke,ie,W,z,ne,L,D,De,he,U,q,Ve;return{c(){c=l("p"),ue=o(`Itâs always a hard decision to move to a new platform for my personal site, and this time it was sped up by the growing 2need for https (for SEO) and the release of GatsbyJS v1.`),Q=f(),j=l("p"),we=o(`Up until now I was using a monolitical Apache + PHP webserver, but since the 2013 version of the site, a dynamic webserver 3was no longer needed for the blog, because it was generated statically with Jekyll. Only the âsend mailâ component was 4in PHP and I was running some other PHP apps, and hosting some binaries, that have nothing to do with the blog. Iâve 5done away with the PHP apps: communication by mail was already almost zero and the other apps were outdated.`),V=f(),b=l("p"),ce=o(`Now the blog has been properly containerized, this means future upgrades will be easier too: the blog is its own app 6with its own scope. When I will need anything dynamic in the future, I will use `),k=l("a"),be=o("Serverless"),ye=o(" functions."),Y=f(),d=l("p"),ve=o("Another good reason to migrate from "),E=l("a"),ge=o("Jekyll"),_e=o(" to "),P=l("a"),ke=o("Gatsby"),Ee=o(` is letting go 7of Ruby dependencies and migrating to a NodeJS 8based platform. With Jekyll I started to run into problems with recreating the Jekyll stack with the 9correct dependencies to build the blog, in case of restoring after an emergency. This might be caused by my lack of knowledge 10of Ruby, but it meant it was really time to upgrade to a newer version of Jekyll or start with a new theme. And in the mean 11time, Gatsby 1.0 was released and I really subscribe to the `),I=l("a"),Pe=o("JAMstack"),Ie=o(" architecture."),Z=f(),y=l("p"),Se=o(`With the new setup, I can work with a modern and familiar stack e.g. Babel, React, TravisCI. I still believe in static site 12generation for blogs, and just like in Jekyll, adding a post in Gatsby is just a matter of adding a Markdown file with 13some frontmatter. But an improvement is that you can also drop React components in the pages dir that will be automatically 14picked up as pages. And it is even possible to add a React component inside a Markdown post. Try clicking the screenshots 15below for a simple lightbox feature and 16see the source for `),S=l("a"),Te=o("this post"),Ae=o("."),$=f(),v=l("p"),Je=o("For more information about the current stack, see the "),x=l("a"),Ge=o("about page"),He=o("."),ee=f(),O=l("h1"),je=o("Cover images"),te=f(),u=l("p"),xe=o(`The cover images for each post, e.g. the image you see on top of this post, are procedurally generated 17with my project `),T=l("a"),Oe=o("procgen-cover"),Re=o(`. This was inspired by the talk 18by `),A=l("a"),Ce=o("Kate Compton"),Me=o(" on "),J=l("a"),Ne=o("JSConf.is"),Be=o(" 2018."),ae=f(),R=l("h1"),We=o("Old themes"),oe=f(),w=l("p"),ze=o("Static versions of the 2 last themes still run "),G=l("a"),Le=o("here (2013-2018)"),Ue=o(` 19and `),H=l("a"),qe=o("here (2010-2013)"),Fe=o("."),se=f(),C=l("p"),X=l("strong"),Xe=o("Theme 2013-2018"),re=f(),M=l("p"),N=l("simple-light-box"),le=f(),B=l("p"),K=l("strong"),Ke=o("Theme 2010-2013"),ie=f(),W=l("p"),z=l("simple-light-box"),ne=f(),L=l("p"),D=l("strong"),De=o("Theme until 2010"),he=f(),U=l("p"),q=l("img"),this.h()},l(e){c=i(e,"P",{});var r=n(c);ue=s(r,`Itâs always a hard decision to move to a new platform for my personal site, and this time it was sped up by the growing 20need for https (for SEO) and the release of GatsbyJS v1.`),r.forEach(t),Q=m(e),j=i(e,"P",{});var Ye=n(j);we=s(Ye,`Up until now I was using a monolitical Apache + PHP webserver, but since the 2013 version of the site, a dynamic webserver 21was no longer needed for the blog, because it was generated statically with Jekyll. Only the âsend mailâ component was 22in PHP and I was running some other PHP apps, and hosting some binaries, that have nothing to do with the blog. Iâve 23done away with the PHP apps: communication by mail was already almost zero and the other apps were outdated.`),Ye.forEach(t),V=m(e),b=i(e,"P",{});var pe=n(b);ce=s(pe,`Now the blog has been properly containerized, this means future upgrades will be easier too: the blog is its own app 24with its own scope. When I will need anything dynamic in the future, I will use `),k=i(pe,"A",{href:!0,rel:!0});var Ze=n(k);be=s(Ze,"Serverless"),Ze.forEach(t),ye=s(pe," functions."),pe.forEach(t),Y=m(e),d=i(e,"P",{});var g=n(d);ve=s(g,"Another good reason to migrate from "),E=i(g,"A",{href:!0,rel:!0});var $e=n(E);ge=s($e,"Jekyll"),$e.forEach(t),_e=s(g," to "),P=i(g,"A",{href:!0,rel:!0});var et=n(P);ke=s(et,"Gatsby"),et.forEach(t),Ee=s(g,` is letting go
25of Ruby dependencies and migrating to a NodeJS 26based platform. With Jekyll I started to run into problems with recreating the Jekyll stack with the 27correct dependencies to build the blog, in case of restoring after an emergency. This might be caused by my lack of knowledge 28of Ruby, but it meant it was really time to upgrade to a newer version of Jekyll or start with a new theme. And in the mean 29time, Gatsby 1.0 was released and I really subscribe to the `),I=i(g,"A",{href:!0,rel:!0});var tt=n(I);Pe=s(tt,"JAMstack"),tt.forEach(t),Ie=s(g," architecture."),g.forEach(t),Z=m(e),y=i(e,"P",{});var fe=n(y);Se=s(fe,`With the new setup, I can work with a modern and familiar stack e.g. Babel, React, TravisCI. I still believe in static site 30generation for blogs, and just like in Jekyll, adding a post in Gatsby is just a matter of adding a Markdown file with 31some frontmatter. But an improvement is that you can also drop React components in the pages dir that will be automatically 32picked up as pages. And it is even possible to add a React component inside a Markdown post. Try clicking the screenshots 33below for a simple lightbox feature and 34see the source for `),S=i(fe,"A",{href:!0,rel:!0});var at=n(S);Te=s(at,"this post"),at.forEach(t),Ae=s(fe,"."),fe.forEach(t),$=m(e),v=i(e,"P",{});var me=n(v);Je=s(me,"For more information about the current stack, see the "),x=i(me,"A",{href:!0});var ot=n(x);Ge=s(ot,"about page"),ot.forEach(t),He=s(me,"."),me.forEach(t),ee=m(e),O=i(e,"H1",{});var st=n(O);je=s(st,"Cover images"),st.forEach(t),te=m(e),u=i(e,"P",{});var _=n(u);xe=s(_,`The cover images for each post, e.g. the image you see on top of this post, are procedurally generated 35with my project `),T=i(_,"A",{href:!0,rel:!0});var rt=n(T);Oe=s(rt,"procgen-cover"),rt.forEach(t),Re=s(_,`. This was inspired by the talk 36by `),A=i(_,"A",{href:!0,rel:!0});var lt=n(A);Ce=s(lt,"Kate Compton"),lt.forEach(t),Me=s(_," on "),J=i(_,"A",{href:!0,rel:!0});var it=n(J);Ne=s(it,"JSConf.is"),it.forEach(t),Be=s(_," 2018."),_.forEach(t),ae=m(e),R=i(e,"H1",{});var nt=n(R);We=s(nt,"Old themes"),nt.forEach(t),oe=m(e),w=i(e,"P",{});var F=n(w);ze=s(F,"Static versions of the 2 last themes still run "),G=i(F,"A",{href:!0,rel:!0});var ht=n(G);Le=s(ht,"here (2013-2018)"),ht.forEach(t),Ue=s(F,` 37and `),H=i(F,"A",{href:!0,rel:!0});var pt=n(H);qe=s(pt,"here (2010-2013)"),pt.forEach(t),Fe=s(F,"."),F.forEach(t),se=m(e),C=i(e,"P",{});var ft=n(C);X=i(ft,"STRONG",{});var mt=n(X);Xe=s(mt,"Theme 2013-2018"),mt.forEach(t),ft.forEach(t),re=m(e),M=i(e,"P",{});var dt=n(M);N=i(dt,"SIMPLE-LIGHT-BOX",{"img-path":!0,"img-title":!0}),n(N).forEach(t),dt.forEach(t),le=m(e),B=i(e,"P",{});var ut=n(B);K=i(ut,"STRONG",{});var wt=n(K);Ke=s(wt,"Theme 2010-2013"),wt.forEach(t),ut.forEach(t),ie=m(e),W=i(e,"P",{});var ct=n(W);z=i(ct,"SIMPLE-LIGHT-BOX",{"img-path":!0,"img-title":!0}),n(z).forEach(t),ct.forEach(t),ne=m(e),L=i(e,"P",{});var bt=n(L);D=i(bt,"STRONG",{});var yt=n(D);De=s(yt,"Theme until 2010"),yt.forEach(t),bt.forEach(t),he=m(e),U=i(e,"P",{});var vt=n(U);q=i(vt,"IMG",{src:!0,alt:!0}),vt.forEach(t),this.h()},h(){p(k,"href","https://serverless.com/"),p(k,"rel","nofollow"),p(E,"href","https://jekyllrb.com/"),p(E,"rel","nofollow"),p(P,"href","https://www.gatsbyjs.org/"),p(P,"rel","nofollow"),p(I,"href","https://jamstack.org/"),p(I,"rel","nofollow"),p(S,"href","https://raw.githubusercontent.com/mdvanes/mdworld-jackson/master/content/posts/2018-05-10-site-updated.md"),p(S,"rel","nofollow"),p(x,"href","../about"),p(T,"href","https://github.com/mdvanes/procgen-cover"),p(T,"rel","nofollow"),p(A,"href","http://www.galaxykate.com/"),p(A,"rel","nofollow"),p(J,"href","https://2018.jsconf.is/"),p(J,"rel","nofollow"),p(G,"href","https://mdvanes.github.io/mdworld-ingram"),p(G,"rel","nofollow"),p(H,"href","https://mdvanes.github.io/mdworld-simon"),p(H,"rel","nofollow"),de(N,"img-path","/lightbox/theme-ingram.jpg"),de(N,"img-title","Theme 2013-2018"),de(z,"img-path","/lightbox/theme-simon.jpg"),de(z,"img-title","Theme 2010-2013"),Pt(q.src,Ve="https://mdvanes.github.io/mdworld-simon/sites/default/files/images/vorig_design.jpg")||p(q,"src",Ve),p(q,"alt","Theme until 2010")},m(e,r){h(e,c,r),a(c,ue),h(e,Q,r),h(e,j,r),a(j,we),h(e,V,r),h(e,b,r),a(b,ce),a(b,k),a(k,be),a(b,ye),h(e,Y,r),h(e,d,r),a(d,ve),a(d,E),a(E,ge),a(d,_e),a(d,P),a(P,ke),a(d,Ee),a(d,I),a(I,Pe),a(d,Ie),h(e,Z,r),h(e,y,r),a(y,Se),a(y,S),a(S,Te),a(y,Ae),h(e,$,r),h(e,v,r),a(v,Je),a(v,x),a(x,Ge),a(v,He),h(e,ee,r),h(e,O,r),a(O,je),h(e,te,r),h(e,u,r),a(u,xe),a(u,T),a(T,Oe),a(u,Re),a(u,A),a(A,Ce),a(u,Me),a(u,J),a(J,Ne),a(u,Be),h(e,ae,r),h(e,R,r),a(R,We),h(e,oe,r),h(e,w,r),a(w,ze),a(w,G),a(G,Le),a(w,Ue),a(w,H),a(H,qe),a(w,Fe),h(e,se,r),h(e,C,r),a(C,X),a(X,Xe),h(e,re,r),h(e,M,r),a(M,N),h(e,le,r),h(e,B,r),a(B,K),a(K,Ke),h(e,ie,r),h(e,W,r),a(W,z),h(e,ne,r),h(e,L,r),a(L,D),a(D,De),h(e,he,r),h(e,U,r),a(U,q)},p:Qe,i:Qe,o:Qe,d(e){e&&t(c),e&&t(Q),e&&t(j),e&&t(V),e&&t(b),e&&t(Y),e&&t(d),e&&t(Z),e&&t(y),e&&t($),e&&t(v),e&&t(ee),e&&t(O),e&&t(te),e&&t(u),e&&t(ae),e&&t(R),e&&t(oe),e&&t(w),e&&t(se),e&&t(C),e&&t(re),e&&t(M),e&&t(le),e&&t(B),e&&t(ie),e&&t(W),e&&t(ne),e&&t(L),e&&t(he),e&&t(U)}}}const Tt={title:"Site updated",cover:"https://picsum.photos/800/600?image=0",date:"10-05-2018",category:"webdevelopment",tags:["webdevelopment"],preview:`Itâs always a hard decision to move to a new platform for my personal site, and this time it was sped up by the growing 38need for https (for SEO) and the release of GatsbyJS v1. 39 40Up until now I was using a monolitical Apache + PHP webserver, but...`,previewHtml:"<p>Itâs always a hard decision to move to a new platform for my personal site, and this time it was sped up by the growing need for https (for SEO) and the release of GatsbyJS v1. </p> <p>Up until now I was using a monolitical Apache + PHP webserver, but since...</p>"};class At extends _t{constructor(c){super(),kt(this,c,null,It,Et,{})}}export{At as default,Tt as metadata};
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.