# `ObanChore.Worker`
[🔗](https://github.com/alejolcc/oban_chore/blob/main/lib/oban_chore/worker.ex#L1)

A macro that wraps `Oban.Worker` to provide metadata for UI generation.

## Example

    defmodule MyApp.Chores.UserBackfill do
      use ObanChore.Worker,
        name: "User Data Backfill",
        fields: [
          user_id: [type: :integer, required: true],
          reason: [type: :string, default: "Manual Update"]
        ]

      @impl Oban.Worker
      def perform(%Oban.Job{args: args}) do
        # ...
      end
    end

# `custom_changeset`

```elixir
@callback custom_changeset(Ecto.Changeset.t()) :: Ecto.Changeset.t()
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
