Coding Notes

Image

Links

About

A blog website with backend written using Go standard library.

Blog contents are written in Markdown and rendered as HTML on the webpage.

Inspired by Stack Overflow's URL design, a supplemental slug is shown at the end of the url for extra info. ( ID is the primary indicator )

Example:
 https://<domain>/blogs/<id>/<slug>

 https://notes.alexfangsw.com/blogs/1/a-dummy-blog-post 

Motive

A opportunity to practice GO creating something I could use.

This project started around when GO 1.22 released.

At that time I was choosing which framework or libraries I sould use.

In the release notes, one thing caught my eye: Enhanced routing patterns

This improved net/http.ServeMux quite a lot, adding features such as path params, restrict methods to routes...etc.

After seeing this plus a video on YouTube by Dreams of Code: The standard library now has all you need for advanced routing in Go

I thought, 'why not give the standard library a try ?' After than, this project was created.

Tech stack

Backend

  • Language: Go
  • Backend Library: net/http
  • ORM: None this project uses database/sql with raw SQL queries
  • Database Migration: Goose
  • Database: SQLite
  • API Documentation: Generated with swaggo

Frontend

  • Language: Javascript
  • Framework: NextJS
  • UI Libraries:
    • Tailwind CSS
    • DaisyUI

CI/CD

  • Drone CI

Misc

  • Docker
  • Kubernetes
  • Helm