Skip to content

Instantly share code, notes, and snippets.

View soderlind's full-sized avatar

Per Søderlind soderlind

View GitHub Profile

How I do vibe coding in 3 steps (plus a Step 0)

  1. Start with domain expertise
    Vibe coding works best when you have enough domain expertise to set direction, ask precise questions, and validate the output.

  2. Jam with an AI chat — then “lock in” a single strong prompt
    I start by brainstorming with ChatGPT (or another chat model): goals, constraints, edge cases, and what “done” looks like.
    I end by asking the AI to produce one clean prompt that includes:

    • problem statement + scope (what to do / not do)
  • assumptions and constraints
@soderlind
soderlind / README.md
Last active February 5, 2026 10:31
Ralph loop wrapper for GitHub Copilot CLI (programmatic mode)
⠀⠀⠀⠀⠀⠀⣀⣤⣶⡶⢛⠟⡿⠻⢻⢿⢶⢦⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⢀⣠⡾⡫⢊⠌⡐⢡⠊⢰⠁⡎⠘⡄⢢⠙⡛⡷⢤⡀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⢠⢪⢋⡞⢠⠃⡜⠀⠎⠀⠉⠀⠃⠀⠃⠀⠃⠙⠘⠊⢻⠦⠀⠀⠀⠀⠀⠀
⠀⠀⢇⡇⡜⠀⠜⠀⠁⠀⢀⠔⠉⠉⠑⠄⠀⠀⡰⠊⠉⠑⡄⡇⠀⠀⠀⠀⠀⠀
⠀⠀⡸⠧⠄⠀⠀⠀⠀⠀⠘⡀⠾⠀⠀⣸⠀⠀⢧⠀⠛⠀⠌⡇⠀⠀⠀⠀⠀⠀
⠀⠘⡇⠀⠀⠀⠀⠀⠀⠀⠀⠙⠒⠒⠚⠁⠈⠉⠲⡍⠒⠈⠀⡇⠀⠀⠀⠀⠀⠀
⠀⠀⠈⠲⣆⠀⠀⠀⠀⠀⠀⠀⠀⣠⠖⠉⡹⠤⠶⠁⠀⠀⠀⠈⢦⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠈⣦⡀⠀⠀⠀⠀⠧⣴⠁⠀⠘⠓⢲⣄⣀⣀⣀⡤⠔⠃⠀⠀⠀⠀⠀
⠀⠀⠀⠀⣜⠀⠈⠓⠦⢄⣀⣀⣸⠀⠀⠀⠀⠁⢈⢇⣼⡁⠀⠀⠀⠀⠀⠀⠀⠀
@soderlind
soderlind / redis-config.php
Last active November 26, 2025 22:10
Object Cache Pro config for Azure Managed Redis (enterpriseCluster)
<?php
$redis_config = [
'token' => '••••••••',
'host' => 'tls://MY-REDIS.norwayeast.redis.azure.net', // enterpriseCluster = host mode
'port' => '10000',
'username' => 'default',
'password' => '••••••••',
'database' => 0,
'client' => 'phpredis',
'serializer' => 'igbinary',
@soderlind
soderlind / constitution.md
Created October 29, 2025 09:26
Constitution: Spec‑Driven Development for WordPress Projects

Constitution: Spec‑Driven Development for WordPress Projects

Non‑negotiable principles that every specification, plan, task, and implementation MUST follow. Words MUST/SHOULD/MAY are to be interpreted per RFC 2119 semantics.


1) Purpose & Scope

  • This constitution governs WordPress plugins, themes, blocks, and headless integrations developed in this repository.
  • It constrains the /speckit.specify, /speckit.plan, /speckit.tasks, and /speckit.implement outputs. When in doubt, follow this constitution over any generated content.

To make this the default in Local, please vote

Local (localwp.com) + direnv + VS Code

This guide wires up Local (localwp.com) with direnv so your terminal & VS Code always use the correct WordPress environment for each Local site. It includes:

  • Installing the Local direnv add‑on from the 1.0.0 release tarball.
  • Shell hook instructions for macOS, Windows, and Linux.
  • Configure VS Code to inherit environment variables from the current Local shell session

Contents

@soderlind
soderlind / prompt.md
Last active July 15, 2025 07:06
Prompt creating Plausible Stats Aggregator

prompt

I want to create a script that retrives all stats from all site at my plausible account:

APIs:
   https://plausible.io/docs/sites-api
   https://plausible.io/docs/stats-api

1. Find all sites in my plausible account using the site api
@soderlind
soderlind / README.md
Last active May 13, 2025 01:29
Enable WordPress Customizer Preview on Mapped Domain
@soderlind
soderlind / README.md
Last active December 9, 2025 06:51
Sticky WP Table Header

Sticky WP Table Header

This plugin will make the table header sticky when you scroll down.

Save file in wp-content/mu-plugins

position: sticky is supported by most browsers.

@soderlind
soderlind / README.md
Last active July 24, 2025 08:04
Create a WordPress custom search