Skip to content

Instantly share code, notes, and snippets.

@kieranklaassen
kieranklaassen / SKILL.md
Last active January 14, 2026 16:33
TRMNL e-ink display image generator skill for Claude Code
name description allowed-tools
trmnl-image-generator
Generates TRMNL-compatible e-ink display images. Use when creating images for TRMNL devices, converting images to 1-bit format, or uploading content to e-ink displays. Triggers on "TRMNL", "e-ink", "e-paper", "terminal display".
Bash
Write
Read
Edit
@Shpigford
Shpigford / favicon
Created January 11, 2026 17:24
/favicon command for Claude Code — Generates all necessary favicon files, HTML and webmanifest, including updating your layout files with the necessary code.
---
argument-hint: [path to source image]
description: Generate favicons from a source image
---
Generate a complete set of favicons from the source image at `$1` and update the project's HTML with the appropriate link tags.
## Prerequisites
First, verify ImageMagick v7+ is installed by running:
@Shpigford
Shpigford / CLAUDE.md
Created January 6, 2026 20:04
The starting CLAUDE.md file I (@Shpigford) use for all new dev projects. This assumes using Rails + Inertia.js, but many of the rules can be ported over to other languages/frameworks.

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

About Yeetsheet

The name of this project is "Yeetsheet". Yeetsheet is a spreadsheet automation tool. It connects to Google Sheets, Excel, and Airtable. Core functionality: watch spreadsheets for changes, run transformations on cell data, sync data between multiple spreadsheet sources, and send notifications based on conditions. Users create automations through a visual node-based editor rather than code. Common use cases include consolidating data from multiple sheets into one, auto-populating templates when source data changes, and validating data against rules. Has a REST API for programmatic access. Data transformations support filtering, mapping, lookups, and basic aggregations.

Development Commands

name tags description
plant-seed
project
seeds
Plant a seed - context-based instant capture with optional depth

Plant Seed Command

Plant ideas you want to tend - instant capture from context, with optional enrichment.

🆕 Update: See more extensive repo here: https://github.com/marckohlbrugge/unofficial-37signals-coding-style-guide

The Unofficial 37signals/DHH Rails Style Guide

About This Document

This style guide was generated by Claude Code through deep analysis of the Fizzy codebase - 37signals' open-source project management tool.

Why Fizzy matters: While 37signals has long advocated for "vanilla Rails" and opinionated software design, their production codebases (Basecamp, HEY, etc.) have historically been closed source. Fizzy changes that. For the first time, developers can study a real 37signals/DHH-style Rails application - not just blog posts and conference talks, but actual production code with all its patterns, trade-offs, and deliberate omissions.

@peterc
peterc / CONVENTIONS.md
Last active January 17, 2026 13:46
CONVENTIONS.md file for AI Rails 8 development
  • You MUST NOT try and generate a Rails app from scratch on your own by generating each file. For a NEW app you MUST use rails new first to generate all of the boilerplate files necessary.
  • Create an app in the current directory with rails new .
  • Use Tailwind CSS for styling. Use --css tailwind as an option on the rails new call to do this automatically.
  • Use Ruby 3.2+ and Rails 8.0+ practices.
  • Use the default Minitest approach for testing, do not use RSpec.
  • Default to using SQLite in development. rails new will do this automatically but take care if you write any custom SQL that it is SQLite compatible.
  • An app can be built with a devcontainer such as rails new myapp --devcontainer but only do this if requested directly.
  • Rails apps have a lot of directories to consider, such as app, config, db, etc.
  • Adhere to MVC conventions: singular model names (e.g., Product) map to plural tables (products); controllers are plural.
  • Guard against incapable browsers accessing controllers with `allo
@Shpigford
Shpigford / .cursorrules
Last active April 25, 2025 01:22
Cursor Rules
# Original instructions: https://forum.cursor.com/t/share-your-rules-for-ai/2377/3
# Original original instructions: https://x.com/NickADobos/status/1814596357879177592
You are an expert AI programming assistant that primarily focuses on producing clear, readable SwiftUI code.
You always use the latest version of SwiftUI and Swift, and you are familiar with the latest features and best practices.
You carefully provide accurate, factual, thoughtful answers, and excel at reasoning.
- Follow the user’s requirements carefully & to the letter.
@strzibny
strzibny / unused_routes.rb
Created May 5, 2016 15:21
Find unused routes in Rails
#!/usr/bin/env ruby
# Extracted from traceroute gem + checking the presence of views as well
require_relative './config/environment.rb'
class Traceroute
def initialize(app)
@app = app
end
@imjasonh
imjasonh / markdown.css
Last active September 3, 2025 22:12
Render Markdown as unrendered Markdown (see http://jsbin.com/huwosomawo)
* {
font-size: 12pt;
font-family: monospace;
font-weight: normal;
font-style: normal;
text-decoration: none;
color: black;
cursor: default;
}
@anointed
anointed / multi-ipn.php
Created September 30, 2012 02:42
Paypal multiple IPN's
<?php
/*
* This is a PayPal IPN (Instant Payment Notification) broadcaster
* Since PayPal does not provide any straightforward way to add
* multiple IPN listeners we'll have to create a central IPN
* listener that will broadcast (or filter and dispatch) Instant
* Payment Notifications to different destinations (IPN listeners)
*
* http://codeseekah.com/2012/02/11/how-to-setup-multiple-ipn-receivers-in-paypal/
*