Skip to content

Instantly share code, notes, and snippets.

View timkpaine's full-sized avatar
🦈
work

Tim Paine timkpaine

🦈
work
View GitHub Profile
@timkpaine
timkpaine / README.md
Created August 27, 2026 20:57
VPhoto P200 Frame conversion

Converting a VPhoto P200 Android frame into a local-network photo frame

Date performed: 2026-08-27

This documents converting a VPhoto frame from its vendor application to the SlideShow Digital Signage Android app. The result has a browser-based photo uploader, starts directly into the slideshow after a reboot, and does not require Immich, Docker, or a NAS.

Despite the original plan, I did not flash replacement firmware. No boot,

@timkpaine
timkpaine / microgpt.py
Created March 1, 2026 05:51 — forked from karpathy/microgpt.py
microgpt
"""
The most atomic way to train and run inference for a GPT in pure, dependency-free Python.
This file is the complete algorithm.
Everything else is just efficiency.
@karpathy
"""
import os # os.path.exists
import math # math.log, math.exp
@timkpaine
timkpaine / downvote-all-reddit.js
Last active May 9, 2025 23:45
downvote-all-reddit.js
Array.from(document.querySelectorAll("shreddit-comment-action-row")).forEach(_ => {const elem = _.shadowRoot.children[0].children[1].children[0].children[0].children[2];if (elem.getAttribute("aria-pressed") !== "true"){elem.click();}})
sudo defaults write /Library/Preferences/com.apple.airport.bt.plist bluetoothCoexMgmt Hybrid
@timkpaine
timkpaine / proposal.md
Last active November 27, 2024 21:41
perspective_openjsf_application.md
Example of perspective multiworker webserver (independent perspective instances)
```bash
uvicorn server:app --workers 4
```
@timkpaine
timkpaine / amex-click-all-offers.js
Last active November 16, 2024 01:28
amex-click-all-offers.js
Array.from(document.getElementsByClassName("offer-cta")).map((elem) => elem.click())
Array.from(document.getElementsByClassName("axp-offers__global__merchantOfferCta___qKBIE")).map((elem) => elem.click())
// document.querySelectorAll('mds-icon[type="ico_add_circle"]').forEach((x) => x.click())
Array.from(document.querySelectorAll('.r9jbijb')).map((x) => x.click())
@timkpaine
timkpaine / README.md
Last active July 26, 2023 00:46
NGINX make site available only on VPN, with OpenVPN and Certbot

You want a server block in nginx like this

server {
  server_name  <your fqdn>;
  root         /usr/share/nginx/html;

  # allow certbot
  location /.well-known {
      autoindex on;
 root /opt/www-pub/;
@timkpaine
timkpaine / README.md
Created September 8, 2022 17:13
Synology NAS - dnsmasq - allow for just "diskstation" instead of "diskstation.local"

edit /usr/syno/share/nginx/Portal.mustache to remove \.local instances