Webhookflare

Webhook testing and debugging tool built with Cloudflare Durable Objects, demonstrating the power of edge computing with persistent SQLite storage and real-time WebSocket updates.

Popularity score

33

Stars: 4 · Forks: 3 (forks weighted 80%)

Quality score

10

Out of 100 possible points.

Cloudflare products

4

Workers, Durable Objects, Workers AI…

Quality breakdown

Automated tests

10 points

0

Continuous integration

10 points

0

AGENTS.md instructions

20 points

0

README images or videos

10 points

0

Repository description

15 points

0

Project website

15 points

0

License file

10 points

0

Improve your score

Copy this prompt into your preferred coding agent.

You are an expert engineer working inside this repository. Make real edits (add files, adjust configs, update docs) to improve the repository quality score used by the Small App Garden leaderboard.

Return your work as:
- A short prioritized checklist (quick wins first)
- A list of files changed/added
- Any commands to run to verify (`test`, `lint`, `build` if present)

App: Webhookflare
Repository: https://github.com/fayazara/webhookflare
Description: Webhook testing and debugging tool built with Cloudflare Durable Objects, demonstrating the power of edge computing with persistent SQLite storage and real-time WebSocket updates.

Current quality score: 10/100

Stack hints:
  - Framework: Workers
  - Language: TypeScript
  - Build tool: wrangler
  - Package manager: pnpm

Already earning points:
- README documentation (+10) [readme]

Missing points (implement these):
- Automated tests (+10) [tests]
- Continuous integration (+10) [ci]
- AGENTS.md instructions (+20) [agentsmd]
- README images or videos (+10) [readme-media]
- Repository description (+15) [description]
- Project website (+15) [website]
- License file (+10) [license]

Scoring rubric (what the leaderboard checks):
- Automated tests (+10) - repo contains a test file matching common patterns
- Continuous integration (+10) - repo has GitHub Actions workflow(s) under `.github/workflows/`
- README documentation (+10) - repo has `README.md`
- AGENTS.md instructions (+20) - repo has `AGENTS.md` with agent-friendly commands
- README images or videos (+10) - README includes at least one screenshot and a GIF/video link
- Repository description (+15) - GitHub About description is set
- Project website (+15) - GitHub About homepage URL is set
- License file (+10) - GitHub recognizes a license

Implementation notes:
- Prefer minimal changes that still meet the detection rules.
- Do not add secrets; use `.env.example` and document env var names instead.
- If adding a license, pick one the owner is comfortable with (MIT is a common default).

## Fix: Automated tests (+10) [tests]

Detection: Detected when the repo contains a test file (`.test.`, `.spec.`, `_test.`; `__tests__/`, `test/`, `tests/`).

Do this (minimum):
- Add a tiny test file under one of these detected locations:
  - `tests/`
  - `test/`
  - `__tests__/`
  - or a filename containing `.test.` / `.spec.` / `_test.`
- Wire it into your test runner (prefer existing; otherwise add one).

If you already use Vitest, add:
```ts
import { describe, it, expect } from "vitest";

describe("smoke", () => {
  it("runs", () => {
    expect(true).toBe(true);
  });
});
```

## Fix: Continuous integration (+10) [ci]

Detection: Detected when the repo contains at least one workflow under `.github/workflows/*.yml` or `*.yaml`.

Do this (minimum): add `.github/workflows/ci.yml` that runs tests on PRs and pushes.

Starter workflow (Node; adjust commands/package manager as needed):
```yml
name: CI

on:
  push:
  pull_request:

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: "20"
          cache: "npm"
      - run: npm ci
      - run: npm test
      - run: npm run build --if-present
```

## Fix: AGENTS.md instructions (+20) [agentsmd]

Detection: Detected when the repo has `AGENTS.md` (root or `.github/AGENTS.md`).

Do this (minimum): add an `AGENTS.md` with the exact commands and repo structure.

Template:
```md
# Agent Notes

## Quickstart

- Install: `<fill in>`
- Dev: `<fill in>`
- Test: `<fill in>`
- Build: `<fill in>`

## Repo Layout

- `src/`: application code
- `tests/`: automated tests

## Environment

- Required env vars: `<list names only>`
- Where to set secrets: `<platform instructions>`
```

## Fix: README images or videos (+10) [readme-media]

Detection: Detected when README contains an image (`![]()` or `<img>`) OR a video/GIF (YouTube, `<video>`, `.gif`, `.mp4`).

Do this (minimum): add at least one screenshot and either a GIF or a video link.

- Screenshot: add `docs/screenshot.png` (or `assets/screenshot.png`) and embed it in `README.md`
- Video: add a YouTube link (or embed), OR add a short GIF and link it from the README

Example README snippet:
```md
![Screenshot](docs/screenshot.png)

Demo video: https://youtu.be/<id>
```

## Fix: Repository description (+15) [description]

Detection: Detected from GitHub repository "About" description (not a file).

Do this: update the GitHub repository "About" description (not a file change).
- 1 sentence describing the user-facing outcome
- Mention Cloudflare products used (e.g. Workers, D1, R2)

Using GitHub CLI:
- `gh repo edit fayazara/webhookflare --description "<one-line description>"`

## Fix: Project website (+15) [website]

Detection: Detected from GitHub repository "Website" / homepage URL (not a file).

Do this: set the GitHub repository "Website" / homepage URL (not a file change).
- Use your deployed app URL (or a landing page)

Using GitHub CLI:
- `gh repo edit fayazara/webhookflare --homepage "https://your-app.example"`

## Fix: License file (+10) [license]

Detection: Detected from GitHub license metadata (usually recognized when a standard license file exists).

Do this (minimum): add a standard license file that GitHub recognizes (e.g. MIT).
- Create `LICENSE` with standard text (fill in the copyright line).

MIT template:
```text
MIT License

Copyright (c) {{YEAR}} {{OWNER}}

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
```

Stack

  • Framework: Workers
  • Language: TypeScript
  • Build tool: wrangler
  • Package manager: pnpm

Cloudflare products

Workers Durable Objects Workers AI Static Assets

Repository hygiene

Description No
Website No
README Yes
AGENTS.md No
README images No
README videos/GIFs No
License None

Dependencies

Runtime

Dev

  • typescript ^5.5.2
  • wrangler ^4.47.0