Skip to content

Instantly share code, notes, and snippets.

View codewithpassion's full-sized avatar

Dominik Fretz codewithpassion

View GitHub Profile
@codewithpassion
codewithpassion / Dolphin image prompt
Created July 30, 2026 22:07
Dolphin image prompt
An editorial 16:9 broadsheet plate in the Press theme on a 3840×2160 canvas, rendered as a comparative before-and-after pairing in the tradition of a scientific journalism spread. The frame is divided asymmetrically: the left 45% shows a close ink-and-wash portrait of a single bottlenose dolphin — eye prominent, rostrum in focus, precise umber draughtsmanship — rendered with warm sand #d5c7a8 tonal washes and deep umber #14110d line work. The right 55% shows a wide-view oceanscape with a loosely sketched pod of dolphins at distance, small silhouettes on open water, rendered with lighter touch and more white space, conveying population scale. A thick brick-red #b1342a vertical rule divides the two panels at the 45% mark. Above the left panel, the label 'One Animal' is set in Source Serif 4 italic at approximately 80 px cap-height in deep umber. Above the right panel, the label 'The Population' is set identically. The title 'Reading Up the Scale' is set in bold Libre Caslon at approximately 160 px cap-height ce

CLAUDE.md

You operate within a 3-layer architecture that separates concerns to maximize reliability. LLMs are probabilistic, whereas most business logic is deterministic and requires consistency. This system fixes that mismatch.

The 3-Layer Architecture

Layer 1: Directive (What to do)

  • Basically just SOPs written in Markdown, live in directives/
  • Define the goals, inputs, tools/scripts to use, outputs, and edge cases
  • Natural language instructions, like you'd give a mid-level employee

Keybase proof

I hereby claim:

  • I am codewithpassion on github.
  • I am dominikfretz (https://keybase.io/dominikfretz) on keybase.
  • I have a public key whose fingerprint is F142 DA70 DA02 1AD2 74B1 F16A E56D 8CFD C6E7 6263

To claim this, I am signing this object:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCfrHJJE7/mLKR1lNohFcnCDRua/Mktgc+c3vWGDjajPxfcqPtUFu+dZI/aiZimVombtk7oYUYzINc4Ea60rqPqgHSrnJ1aBQgM4spGeXFs60XJUMiSpxzeZNM4dxXaJove1N/9VID48VHi3HLyjYtc26EfkenO66gn//pbV7qr6TwAbpp3WmZhSWZ9ST4bjgZ9FuvkzkRHzcU50ETzQhst7DzZTUDrXnkSsR2PTyr6sPcXzoGtY91896oJOndjQdUGGFA+4f17LIimm9dI5cSf7fYGzgQy9FaQWNOUDWFR2NVwwhkqNhGR5SCE/UVJl/Be2A7w5Vrs2ZI/z9gGn95h dominik.fretz@gmail.com
#!/bin/bash
for pptName in ./*.pptx; do
mkdir "${pptName}_folder"
cd "${pptName}_folder"
unzip "../$pptName"
cd ppt/media
if [ -f "media1.mp4" ]; then
for filename in ./*.mp4; do
ffmpeg -i "$filename" -vf scale=1920:1080 -strict -2 -c:v libx264 -crf 30 -preset slow "${filename}_small.mp4"; cat "${filename}_small.mp4" > "$filename"; rm "${filename}_small.mp4"
root@86b0e96-86b0e96:/home/rov# journalctl -u trident-update -f
-- Logs begin at Tue 2018-05-15 15:56:17 UTC. --
May 15 15:56:25 86b0e96-86b0e96 trident-update[165]: 2018-05-15 15:56:25,017 INFO | Waiting for MCU status updates...
May 15 15:56:25 86b0e96-86b0e96 trident-update[165]: 2018-05-15 15:56:25,518 INFO | Version matched: port_esc
May 15 15:56:25 86b0e96-86b0e96 trident-update[165]: 2018-05-15 15:56:25,518 INFO | Version matched: samd21
May 15 15:56:25 86b0e96-86b0e96 trident-update[165]: 2018-05-15 15:56:25,518 INFO | Version matched: star_esc
May 15 15:56:25 86b0e96-86b0e96 trident-update[165]: 2018-05-15 15:56:25,518 INFO | Version matched: vert_esc
May 15 15:56:25 86b0e96-86b0e96 trident-update[165]: 2018-05-15 15:56:25,523 INFO | Health Check complete.
May 15 15:56:25 86b0e96-86b0e96 trident-update[165]: 2018-05-15 15:56:25,523 INFO | No actions required!
May 15 15:56:25 86b0e96-86b0e96 trident-update[165]: 2018-05-15 15:56:25,523 INFO | Ready to receive commands
12-01 20:09:07.856 728 739 D RSMouse : mFeatureEnabled=true mPackageEnabled=true
12-01 20:09:07.916 728 3165 D RSMouse : mFeatureEnabled=true mPackageEnabled=true
12-01 20:09:07.954 746 746 I GoogleInputMethod: onFinishInput() : Dummy InputConnection bound
12-01 20:09:07.954 746 746 I GoogleInputMethod: onStartInput() : Dummy InputConnection bound
12-01 20:09:08.320 661 2158 I WindowManager: Destroying surface Surface(name=com.openrov.cockpit/com.openrov.cockpit.activities.SettingsActivity) called by com.android.server.wm.WindowStateAnimator.destroySurface:2016 com.android.server.wm.WindowStateAnimator.destroySurfaceLocked:881 com.android.server.wm.WindowState.destroyOrSaveSurface:2087 com.android.server.wm.WindowManagerService.tryStartExitingAnimation:3058 com.android.server.wm.WindowManagerService.relayoutWindow:2938 com.android.server.wm.Session.relayout:216 android.view.IWindowSession$Stub.onTransact:286 com.android.server.wm.Session.onTransact:137
12-01 20:09:14.040 661 661 I Job
@codewithpassion
codewithpassion / MultilineTextInput.js
Last active January 26, 2018 12:39 — forked from catchin/MultilineTextInput.js
This is a workaround for the buggy react-native TextInput multiline on Android. Inspired by the comments on https://github.com/facebook/react-native/issues/12717. Based the work of @catchin with the addition of handling the state via the container.
import React, { PropTypes, PureComponent } from 'react';
import { TextInput } from 'react-native';
import debounce from 'debounce';
/**
* This is a workaround for the buggy react-native TextInput multiline on Android.
*
* Can be removed once https://github.com/facebook/react-native/issues/12717
* is fixed.
*
.method public static getAgent(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;
.locals 7
.param p0, "ctx" # Landroid/content/Context;
.param p1, "prefix" # Ljava/lang/String;
.prologue
.line 53
new-instance v1, Ljava/lang/StringBuffer;
invoke-direct {v1}, Ljava/lang/StringBuffer;-><init>()V
.class public Lgetmac;
.super Ljava/lang/Object;
.source "getmac.java"
# direct methods
.method public constructor <init>()V
.locals 0
.prologue