Blogg

  • Radial Gradient Mesh

    Mesh Editor for create organic 2D gradients and export them as JSON/CSS.

    {
      "width": 800,
      "height": 600,
      "num_rows": 3,
      "num_cols": 3,
      "points": [
        {
          "x": 0.0369,
          "y": 0.046,
          "color": "#1b576b"
        },
        {
          "x": 0.5611,
          "y": 0.0406,
          "color": "#f1eae0"
        },
        {
          "x": 0.9672,
          "y": 0.0325,
          "color": "#a9c1bf"
        },
        {
          "x": -0.1076,
          "y": 0.6342,
          "color": "#f1eae0"
        },
        {
          "x": 0.7579,
          "y": 0.5875,
          "color": "#272016"
        },
        {
          "x": 1.1982,
          "y": 0.8228,
          "color": "#272016"
        },
        {
          "x": -0.0498,
          "y": 1.0513,
          "color": "#c16a54"
        },
        {
          "x": 0.4577,
          "y": 1.2967,
          "color": "#272016"
        },
        {
          "x": 1.0681,
          "y": 1.1529,
          "color": "#070504"
        }
      ]
    }
  • Phase 0 complete

    Phase 0 complete — and worth pausing on: two days ago this was ”I’m quite sure I’ll quit, but first…” and now there’s a live, versioned, self-healing platform answering at ikko.se. Here’s the bookmark.

    What ikko.se is. Your permanent home base on Swedish ground — a small round bit that everything else can orbit. One WordPress install that will grow into: an image gallery with CDN muscle, a writing space, a lab of interactive experiments and AI demos (your personal codepen), and a marketing laboratory with real lead capture and goal tracking. It’s deliberately independent of whether you’re a consultant, a Bahnhof salesperson, or something else in five years. The platform doesn’t care; it just accumulates.

    What Phase 0 actually built. Not a website — a way of working. Production is the workspace, git is the flight recorder. Two lanes reach the live site: SSH directly from any machine, or a commit to main on GitHub from your phone. The remote lane lints every incoming PHP file before it touches the server, health-checks ikko.se after, and auto-reverts if the site regresses — the pipeline catches its own crashes without you watching. Access is carved by role: dev agents hold SSH, content agents hold only an API password, ops runs only when summoned. And the whole thing is governed by two documents: MANIFEST.md (how we work) and GRUNDLAG.md (your laws, which only you may edit and which outrank everything, including an agent’s better ideas).

    The rhythm from here. I compose briefs, you hand them to whichever agent is nearest — Claude Code on the Arch desktop, the mobile app on the sofa. Every brief forces the agent to run its own self-tests and report in five skimmable lines. You paste the report here, I audit it against the brief, we tick STATUS.md together. You never manage PRs; you read verdicts.

    Immediately ahead: Phase 1. Brief 001 (which I’ll rewrite for the fresh install — create the ikko child theme, GRUNDLAG-pure from its first commit), then 002 (the platform-core mu-plugin with the version endpoint, so your phone can always ask the site ”what commit are you?”), then 003 (the lab’s front door, deliberately shipped through the remote lane). After that: content API, then the marketing laboratory.

  • Om Ikko

    My permanent home base on Swedish ground — a small round bit that everything else can orbit.

    One WordPress install that will grow into: an image gallery with CDN muscle, a writing space, a lab of interactive experiments and AI demos (your personal codepen), and a marketing laboratory with real lead capture and goal tracking.

    It’s deliberately independent of whether I’m a consultant, a Bahnhof salesperson, or something else in five years.

    The platform doesn’t care; it just accumulates.

  • Om denna `Blueprint`

    • Språket är satt till Svenska
    • Tidszon är Stockholm
    • Date and time expressed according to ISO 8601 in WordPress settings: Y-m-d

    Category base =  "c"
Tag base = "t"