The
JAMstack is a relativity new concept in web development, and it caught my attention because of the simplicity and speed at which pages load. The stack consists of Javascript, APIs, and Markup. Friends of mine had started coding in Go earlier in 2018, and I saw an opportunity to jump headfirst into the new stack with Go.
I began working on the Go web service that serves the blog posts about three weeks ago. I developed a simple service that provides a headless
RESTful API to create, read, update, and delete blog posts. I also wrote a user authentication package that uses bcrypt for password hashing and JSON Web Tokens for API authentication. This was also my first experience writing
API documentation using Swagger. The API is hosted on
Digital Ocean and served using
Cloudflare. Once the API was serving JSON, I had to tweak my front-end to request and receive the JSON coming from the API and parse it.
The front-end uses basic HTML and CSS along with
vue.js and vanilla JavaScript. This was my first time developing with vue.js, and because I needed something simple, I did not take advantage of all the features vue provides. The front-end is hosted for free with SSL on
GitHub Pages.
Suppose you are looking for an open source project to contribute to; please consider contributing to this. The API and front-end source code are all open source, and you can see the roadmap for the API in the README on GitHub. You can view the API
code and
documentation. The
HTML and JavaScript for my site is also available on GitHub.