Skip to content

Instantly share code, notes, and snippets.

View manzt's full-sized avatar
🥚
🐣🐥

Trevor Manz manzt

🥚
🐣🐥
View GitHub Profile
@manzt
manzt / ngff.py
Last active March 18, 2025 18:54
# /// script
# requires-python = ">=3.13"
# dependencies = [
# "ngff-zarr",
# "numpy",
# "rich",
# ]
#
# [tool.uv]
# exclude-newer = "2025-03-18T14:10:36.371318-04:00"
import * as assert from "jsr:@std/[email protected]";
import * as fflate from "npm:[email protected]";
import * as pako from "npm:[email protected]";
const base = new URL(
"https://raw.githubusercontent.com/zarr-developers/zarr_implementations/5dc998ac72/examples/zarr.zr/gzip/.zarray",
);
const BYTES = await fetch(new URL("0.0.0", base))
.then((r) => r.arrayBuffer())
@manzt
manzt / except.ts
Last active January 7, 2025 16:06
// Copyright (c) 2024 Trevor Manz - MIT License
/**
* Type-safe error handling utilities inspired by Python's try/except.
*
* @module
*/
// deno-lint-ignore no-explicit-any
type InstanceType<T> = T extends new (...args: any[]) => infer R ? R : never;
@manzt
manzt / ascii-cat.ts
Last active September 23, 2024 20:11
/**
* MIT License
*
* Copyright (c) 2024 Trevor Manz
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
# /// script
# requires-python = ">=3.11"
# dependencies = [
# "requests<3",
# "rich",
# ]
# ///
import requests
from rich.pretty import pprint
export function sayHello() {
console.log("hello from github gist")
}
import { assert } from "jsr:@std/[email protected]";
import * as fflate from "npm:[email protected]";
import * as pako from "npm:[email protected]";
async function decode_stream(stream: ReadableStream) {
const reader = stream
.pipeThrough(new DecompressionStream("gzip"))
.getReader();
let bytes: Uint8Array;
{
@manzt
manzt / hg-tile.py
Created March 26, 2024 15:09
Map higlass tilesets to multiscale zarr
import base64
import dataclasses
import httpx
import zarr
import zarr.storage
import zarr.util
def get_tile_size(info: dict) -> int:
@manzt
manzt / gapminder-2023.csv
Created November 19, 2023 23:59
Gapminder dataset 2023
We can't make this file beautiful and searchable because it's too large.
country,year,population,gdp_per_capita,life_expectancy,continent
Afghanistan,1800,3280000,683,28.21,Asia
Afghanistan,1801,3280000,683,28.2,Asia
Afghanistan,1802,3280000,683,28.19,Asia
Afghanistan,1803,3280000,683,28.18,Asia
Afghanistan,1804,3280000,683,28.17,Asia
Afghanistan,1805,3280000,683,28.16,Asia
Afghanistan,1806,3280000,683,28.15,Asia
Afghanistan,1807,3280000,683,28.14,Asia
Afghanistan,1808,3280000,683,28.13,Asia
@manzt
manzt / GameOfLife.ipynb
Last active November 8, 2024 00:43
Anywidget using WebGPU to simulate and render Conway's Game of Life
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.