Skip to content

Instantly share code, notes, and snippets.

View peterhellberg's full-sized avatar
💙
Coding Go

Peter Hellberg peterhellberg

💙
Coding Go
View GitHub Profile
@peterhellberg
peterhellberg / build.zig
Last active November 7, 2023 09:37
Updated build.zig to use with MicroW8 (requires Zig ⚡ 0.12.0-dev.1482+e74ced21b or later)
const std = @import("std");
pub fn build(b: *std.Build) void {
const exe = b.addExecutable(.{
.name = "cart",
.root_source_file = .{ .path = "src/main.zig" },
.target = .{
.cpu_arch = .wasm32,
.os_tag = .freestanding,
.cpu_features_add = std.Target.wasm.featureSet(&.{.nontrapping_fptoint}),
@peterhellberg
peterhellberg / uw8.zig
Created November 6, 2023 14:03
MicroW8 API for Zig ⚡
//
// MicroW8: https://exoticorn.github.io/microw8/docs/
// ┌───────────────────────────────────────────────────────────────────────────┐
// │ │
// │ Platform Constants │
// │ │
// └───────────────────────────────────────────────────────────────────────────┘
pub const SCREEN_WIDTH: u32 = 320;
@peterhellberg
peterhellberg / ebiten-gfx-raycaster.go
Last active October 26, 2023 12:52
Raycaster rendered by Ebiten using gfx.
package main
import (
"bytes"
"flag"
"image"
"image/color"
"math"
"time"
@peterhellberg
peterhellberg / skitch.go
Last active October 3, 2023 09:12
Skitch replacement in Go (Rename screenshot + SCP to remote server + Copy link to clipboard)
package main
import (
"flag"
"fmt"
"io/ioutil"
"os"
"os/exec"
"os/user"
"path"
package main
import (
"bytes"
"flag"
"image"
"image/color"
"image/draw"
"image/png"
"math"
@peterhellberg
peterhellberg / graceful.go
Last active August 20, 2023 08:49
*http.Server in Go 1.8 supports graceful shutdown. This is a small example.
package main
import (
"context"
"log"
"net/http"
"os"
"os/signal"
"time"
)
package main
import (
"flag"
"image"
"image/color"
"time"
"github.com/peterhellberg/gfx"
)
@peterhellberg
peterhellberg / pixel-double-pendulum.go
Last active July 28, 2023 18:00
Double Pendulum rendered by Pixel
package main
import (
"image/color"
"math"
"github.com/faiface/pixel"
"github.com/faiface/pixel/imdraw"
"github.com/faiface/pixel/pixelgl"
)
@peterhellberg
peterhellberg / static_embed.go
Last active May 10, 2023 07:35
Embed and serve `static/*` on the root of your web server, using `embed`, `io/fs` and `net/http`
package main
import (
"embed"
"io/fs"
"net/http"
)
//go:embed static/*
var staticEmbed embed.FS
@peterhellberg
peterhellberg / ebiten-chart.go
Created October 11, 2018 19:41
go-chart rendered by Ebiten
package main
import (
"container/ring"
"image"
"log"
"math/rand"
"os"
"time"