personal blog, using Javascript from end-to-end