How it works

Three steps to the badge.

Write down what your software is for, put it on the record, and show a badge that keeps itself honest. Nothing here ever blocks a release.

The IZ4 badge: a real QR code inside the IZ4 frame. Scan it and you land back on this page.
the IZ4 badge, as the register mints it · this one scans to this page

1. Write your IZ4

Copy this into a file called IZ4 at the root of your repo and fill in the prose. Nothing to install.

IZ4

gist:
    What is this project FOR, in a few plain sentences?

invariants:
    - Invariant 0: humans first. Help people thrive, and respect
      each person's dignity. Do no harm, and no greater good makes a
      person disposable. Keep humans in charge: explain
      consequential actions, accept challenge and correction, and
      stop safely when asked. When an objective conflicts with these
      protections, preserve them, report the conflict, and safely
      pause the affected action. Be honest about what this is, what
      it knows, what it has done, and what remains uncertain or
      blocked. No other entry may weaken this.
    - The rules someone would be upset to see silently broken, one per
      entry, in plain sentences.

constraints:

decisions:

references:

Or let the open iz4 CLI draft it: iz4 init. Review before you commit.

2. Register it

Create a workspace, add your project, and the Connect CI page gives you one command to paste in your repo, which adds this workflow and your token. It reports counts, outcomes and coverage on every push. A private repo's file and code stay in CI. We never access them.

# .github/workflows/iz4.yml
name: iz4
on: [push]
jobs:
  report:
    runs-on: ubuntu-latest
    continue-on-error: true   # advisory: never blocks a release
    steps:
      - uses: actions/checkout@v4
        with: { fetch-depth: 1 }
      - run: |
          curl -fsSL https://iz4.you/iz4-report -o iz4-report
          chmod +x iz4-report
          ./iz4-report --url https://iz4.you/api/v1/projects/YOUR_ID/reports --token "$IZ4_TOKEN" \
              --release "$GITHUB_REF_NAME" --run-id "$GITHUB_RUN_ID"
        env:
          IZ4_TOKEN: ${{ secrets.IZ4_TOKEN }}

Connect CI fills in your project's address and stores the token for you.

3. Publish, then show your badge

Preview what goes public and publish. Your project page then mints your IZ4 badge, the QR code in the frame, for your site and packaging. For your README, drop in the status badge:

[![IZ4](https://iz4.you/p/YOUR_ID/badge.svg)](https://iz4.you/p/YOUR_ID)

From a connected checkout, iz4 badge prints these lines with your own id filled in, offline.

The status badge is live. It shows the card's evidence-backed state, a failed check included. Never a score.

The evidence stays up to date by itself

  • CI reports every push, so evidence tracks your code.
  • The status badge is served, not pasted, so your README never goes stale.
  • The presented revision stays yours: a report can never choose what your card presents. Cut a release, set it, done.
  • If CI goes quiet, the card says "stale" after 30 days. A fact, not a judgement.

Register your IZ4 Pricing