Skip to content

Instantly share code, notes, and snippets.

@dcgauld
dcgauld / debug.css
Created January 14, 2021 17:20
Simple debug styles for elements with classes.
*[class] {
outline: 2px dashed #00f;
position: relative;
}
*[class]::before {
background: #00f;
color: #fff;
content: '.' attr(class);
font-family: sans-serif;
@dcgauld
dcgauld / server.ts
Last active June 2, 2020 09:12
A simple Deno HTTP server.
import {
listenAndServe,
ServerRequest,
} from "https://deno.land/std/http/server.ts";
const { PORT = "8080" } = Deno.env.toObject();
const spuds: Array<string> = [];
const createSpud = async (req: ServerRequest) => {
@dcgauld
dcgauld / logger.js
Created April 12, 2020 19:16
A simple Node.js logging module.
const levels = ['debug', 'info', 'warn', 'error'];
const currentLevel = levels.indexOf(process.env.LOG_LEVEL || 'error');
const log = (level, ...data) => {
if (levels.indexOf(level) >= currentLevel) {
const ts = new Date().toISOString();
const log = { level, ts, data };
process.stdout.write(`${JSON.stringify(log)}\n`);
}
@dcgauld
dcgauld / pixelate.js
Created April 12, 2020 13:09
Pixelates an image by a given amount using canvas.
const pixelate = (image, amount = 0.1) => {
const canvas = document.createElement('canvas');
const context = canvas.getContext('2d');
canvas.width = image.width;
canvas.height = image.height;
canvas.style.imageRendering = 'pixelated';
context.imageSmoothingEnabled = false;
const scaledWidth = canvas.width * amount;