# `Bobbin.Manifest`
[🔗](https://github.com/heddlehq/Bobbin/blob/main/lib/bobbin/manifest.ex#L1)

Macros and functions to define an integration manifest.

The manifest acts as the registry for all nodes provided by an integration.

## Example

    defmodule MyIntegration do
      use Bobbin.Manifest

      manifest do
        nodes [
          MyNodes.HttpNode,
          MyNodes.JsonParseNode
        ]
      end
    end

Using the manifest macro automatically generates `available_nodes/0`, `get_definitions/0`,
and `get_node_module/1`.

# `manifest`
*macro* 

Block to define the integration manifest content.

# `nodes`
*macro* 

Registers a list of node modules and generates lookup functions.

Generates:
- `available_nodes/0`: Returns the list of modules.
- `get_definitions/0`: Returns a list of all node definitions.
- `get_node_module/1`: Finds a module by its node name.

---

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