maragudk / maragudk/gomponents-htmx

htmx 4: doc sweep, example app, and v0.7.0 release

Open
#24 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
124
Forks
5
PR merge metrics
No merged PRs in 30d

Description

Part of #18. Last step; depends on all other sub-issues.

Helpers that keep their name but whose semantics or value syntax changed in htmx 4 need their doc comments replaced with the verbatim htmx 4 text and link. Source: https://four.htmx.org/docs/whats-new-in-htmx-4 and the per-attribute pages under https://four.htmx.org/reference/attributes/

## Doc comment sweep

- `Swap`: new styles `textContent`, `delete`, `innerMorph`, `outerMorph`, `outerSync`; aliases `before`/`after`/`prepend`/`append`; `show:`/`scroll:` selector form replaced by `showTarget:`/`scrollTarget:`; new `transition:`, `strip:`, `swapEmpty:` modifiers.
- `Trigger`: `queue:` removed (use `hx-sync`); selectors with spaces are single-quoted (`from:'closest form'`); new `halt`, `capture`, `passive`, `consume`, `target:`.
- `On`: htmx event names changed (`hx-on::before:request`); extended `event -> js; ...` form.
- `Boost`: accepts a config string; default is `outerSync` into ``; boost config outranks explicit `hx-*` attributes.
- `Delete`: no longer includes the enclosing form's inputs.
- `SwapOOB`: OOB swaps now run after the main swap; OOB-only responses skip the main swap.
- `HistoryElt`: history restore re-fetches from the server and selects `[hx-history-elt]`.
- `Target`: `findAll` added to the extended selectors.
- All remaining helpers: replace paraphrased comments with verbatim htmx 4 text per the conventions in `AGENTS.md`.

## Example app

- Update `cmd/example` to htmx 4.0.0 (pinned by the scaffolding sub-issue) and verify the boost + `SetPushURL` flow in a browser against the new `outerSync` body default.
- Note in the README that htmx 4 swaps 4xx/5xx responses by default and re-fetches pages on history navigation, since both change what handlers should return.

## Release

- Tag v0.7.0 with release notes listing removed helpers, the `Disable` meaning reversal, and the header changes.

## Acceptance criteria

- Every exported identifier has a verbatim htmx 4 doc comment with link.
- Example app runs against htmx 4.0.0 and the boost flow works.
- v0.7.0 tagged with release notes.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with AGENTS.md and the exported helper doc comments, using the linked htmx 4 documentation as the source for the comment sweep. Then inspect cmd/example and the README, run the example in a browser, and verify the boost plus SetPushURL flow. Done means every exported identifier has a linked verbatim comment, the example works with htmx 4.0.0, and v0.7.0 has release notes and is tagged.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
documentation, release, web-dev
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.