If I surmise the things I have learned over the time as seeds, I believe someday that seeds will grow up and turn into a tree of knowledge. But I need a garden to implant those seeds. That was the initial idea of this website. I consider this website as my internet home and digital garden. Also, it's a contemplation of my ideas, thoughts tales and philosophy of life.
I also believe that science as well as technology should be inclusive and accessible for all. Thus I build this site to share my life experience as a programmer and a young researcher.
Why Vue.js and Gridsome?
I have never been a front-end developer. I had never learned any front-end framework and intended to. Just to gain some basic idea about the front-end world, I began to explore React.js, Ember.js and Vue.js. Since I was learning from my interest and for fun, I found vue.js easier to learn. Apart from that, the small file size, easy to understand, simple integration, and detailed documentation made me decide to learn vue.js.
I want to keep this website as minimal as possible. I started to dive deep into the static site generator for Vue.js and discover a few- Vue press, Nuxt.js, Gridsome. By comparing them I found they all are excellent for individual purposes. Nuxt.js obviously has some great benefits over Gridsome, especially the large community. But I found it a bit complex and more appropriate for large scale application. In my case, Gridsome serves all my needs. I don't even want to use any database. The GraphQl Data Layer of Gridsome allows me to fetch content from local files and use it in the Vue component and generates pre-rendered static HTML. That solves my problem with the database. Besides, the Push, Render, Pre-cache, Lazy-board (PRPL) pattern makes gridsome ultra-fast, as they have said 'fast by default'.
As I told, I am not a vue expert, I believe this website contains some potential bugs. This is a completely open-source project and the source is available on Github. If you find any bug or any error please create an issue or if you want to contribute, please submit a pull request.