Blog
Web Components a Beginner Friendly Guide
The basic elements of using the Web Components API broken down into some of the most common things we do with them.
Different Types of String Encoding Using Golang
Notes regarding string encoding in golang
Golang Check for Mysql Duplicate Key Error
In short, we cast the error to a Mysql Error and check the code
Docker Buildx Setup
A getting started guide for docker buildx
Docker: Important Topics & Notes
This is a repository of my notes and important topics on docker commands. Helpful for when I forget things.
Go Net Listener Http Server Example
We explore the net package, spin up a net.Listener, accept requests, and respond with html
Using Go Embed Package for Template Rendering
Go’s embed package is excellent for creating a Go template rendering engine. The benefit of using the embed package is that your templates get bundled with your binary. Learn how to use the embed package to render templates in golang applications.
Notes On Testing Golang Applications
Setup Main
setup_test.go
is where you do any app setup for your test. This runs
before the rest of the tests and can help you mock things that need to be
mocked. When you build your application, test files are ignored. It is a
safe space to declare variables, override variables, etc. Each package can
have a TestMain func in the setup_test.go file.
// setup_test.go in the main package
package main
// may need to declare some testing specific vars up here
var mock *config.AppConfig
var mockDB *sqlDB
func TestMain(m *testing.M) {
// configure your testing specific app config mocks
mockApp.Title = ""
mockApp.DSN = ""
// mock session, repos, pass around any extra config to internal
packages
newSessionManager(mockApp, mockDB)
handlers.SetHandlerRepo(handlers.NewHandlerRepo(mockApp, sqldbconn.NewSQLDbConn(mockApp, mockDB)))
render.NewRenderer(mockApp)
// the rest of the config setup that runs before test
// init TestMain
os.Exit(m.Run())
}
Adding Context And Session To http.Request
Create a couple of helper functions to create dummy session data and add it to the request:
Custom Golang Http Router With Middleware
Go standard library, as well as many others have already solved implementing a robust, production grade http server. So why bother writing one? This post will hopefully yield some insight of why it is important to revisit established technology.
WordPress Self Hosted A Guided Tour To Running Wordpress Independent Of Big Hosting
Learning how to self host a WordPress site can teach us about linux security, web applications technologies, and save us a few dollars. But is it worth it?