Skip to content

Instantly share code, notes, and snippets.

View 17twenty's full-sized avatar

Nick Glynn 17twenty

View GitHub Profile
@17twenty
17twenty / exportstats.go
Last active April 17, 2024 20:28
Simple example of using expvar to instrument Golang apps.
package exportstats
import (
"expvar"
"fmt"
"runtime"
)
var stats *expvar.Map
# Example routing with 3 apps
# We have three moving parts:
# Region specific API server (prefix papi.us.getfeewise.com)
# Region specific Dashboard App ( dashboard.getfeewise.com/us/* ) - tricky
# Region specific Customer App ( us.getfeewise.com )
# This makes s3proxy work
{
order s3proxy last
@17twenty
17twenty / httpsmiddleware.go
Created March 11, 2024 05:56
Middleware to Convert HTTP to HTTPS in Golang with X-ForwardedFor proto
package main
import (
"net/http"
"regexp"
"strings"
)
var (
xForwardedScheme = http.CanonicalHeaderKey("X-Forwarded-Scheme")
@17twenty
17twenty / jsonfiles.go
Last active February 17, 2024 05:42
jsonfile: Use `jsonfile` to persist a Go value to a JSON file.
// Copyright (c) David Crawshaw
// SPDX-License-Identifier: BSD-3-Clause
// Package jsonfile persists a Go value to a JSON file.
package jsonfile
import (
"bytes"
"encoding/json"
"fmt"
@17twenty
17twenty / index.html
Created February 11, 2024 02:22
Can You Lend Me - Tailwind design + HTMX + Vanilla JS to do what we want...
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Can You Lend Me?</title>
<script src="https://cdn.tailwindcss.com"></script>
<script>
// formatNumber(n)
// formats a number 1234567 to 1,234,567
@17twenty
17twenty / demo.tmpl.html
Last active January 5, 2024 05:15
Golang Flash demo using cookies - recreate the Flask Flash library using Golang and HTMX and make life easier.
<html>
<head>
<script src="https://unpkg.com/htmx.org@1.8.0"></script>
<script src="https://cdn.tailwindcss.com"></script>
<title>Template Fragment Example</title>
</head>
<body>
<div hx-get="/notifications" hx-trigger="load" hx-swap="outerHTML"><!-- I GET REPLACED --></div>
@17twenty
17twenty / golang-reading-list.md
Last active January 5, 2024 02:30
17twenty / Nick's Golang Reading List
@17twenty
17twenty / SEO-Guide.md
Last active December 29, 2023 11:50
Creating and building an SEO strategy for your site

Hey guys!

There's a TON of content out there on SEO - guides, articles, courses, videos, scams, people yelling about it on online forums, etc etc..

Most of it, however, is super impractical. If you want to start doing SEO TODAY and start getting results ASAP, you'll need to do a TON of digging to figure out what's important and what's not.

So we wanted to make everyone's lives super easy and distill our EXACT process of working w/ clients into a stupid-simple, step-by-step practical guide. And so we did. Here we are.

A bit of backstory:

@17twenty
17twenty / xForwardTest.go
Created January 18, 2017 04:45
Extracting X-Forwarded-For from connections in Golang
package main
import (
"fmt"
"log"
"net/http"
"strings"
)
func main() {
@17twenty
17twenty / gagaface.go
Created November 13, 2023 01:15
Poker Hands in Go
package main
import (
"cmp"
"log"
"math/rand"
"os"
"strconv"
"golang.org/x/exp/slices"