Changelog

View Source

0.3.0 (2026-06-30)

  • breaking Require Elixir >=1.17
  • breaking LLMs behaviours changed arity to thread the Plug.Conn through
  • breaking JSONLD support. See SEO.JSONLD modules. Thanks @Flo0807. Anyone using SEO.Breadcrumb will need to replace with SEO.JSONLD.Breadcrumbs
  • JSON-LD modules (SEO.JSONLD.*) are now generated at compile time via a Mix compiler instead of being prebuilt in the package. Register the compiler in your mix.exs (compilers: [:seo_jsonld] ++ Mix.compilers()) and pick which Schema.org types to materialize via config :phoenix_seo, json_ld_types: :all (default is :google — the ~24 rich-result types plus their closure). Accepts a single entry or a list. See the README "Installation" section for details.
  • The :config attr on <SEO.JSONLD.meta /> is removed along with the site-wide json_ld: config slot. "@context" is now applied to the top-level node by SEO.JSONLD.meta/1 only, so nested typed builders no longer emit redundant per-node contexts.
  • Convenience wrappers (SEO.JSONLD.Breadcrumbs, SEO.JSONLD.FAQ, SEO.JSONLD.Actions) are emitted only when their dependent modules are present in the compiled closure.

0.2.1 (2026-04-13)

  • Fixup llms.txt rendering with module/function configs.

0.2.0 (2026-04-12)

  • Add support for llms.txt standard. This allows LLMs, when browsing your site, to get succinct information about progressively-revealed information with optional sections to optimize context windows. See SEO.LLMs for more info.
  • CI: Add Blend to test older Phoenix LiveView versions. Thank you @Flo0807
  • Docs: Update ex_doc

0.1.11 (2024-11-25)

  • Bugfix: Correct locale_alternate handling. Thank you @Hermanverschooten

0.1.10 (2024-07-21)

  • Relax Phoenix Live View requirement. Thank you @srcrip

0.1.9 (2024-02-19)

  • Fix twitter card. An empty value would always render summary. Thank you @Flo0807.

0.1.8 (2023-01-25)

  • Fix behavior when no item is provided. Component was defaulting to nil for item when didn't let fallback to work. Thank you @hwatkins.

0.1.7 (2022-12-08)

  • BREAKING: simplify OpenGraph fields :type and :type_detail into one :detail. The appropriate struct or values in :detail will infer to the type.

0.1.6 (2022-10-17)

  • Add SEO.Config @behaviour and implement it during use SEO.
  • SEO config is now a struct instead of a map

0.1.5 (2022-10-16)

  • Allow for config to be a module that implements config/0 and config/1
  • Allow for domain config to be a function reference that receives a conn
  • BREAKING: rework implementation to be arity 2 that accepts the item and the conn.

0.1.4 (2022-10-16)

  • Fix empty breadcrumbs
  • Squash newlines and trim description

0.1.3 (2022-10-14)

  • Fix fetching SEO item from LiveView
  • Improve docs.

0.1.2 (2022-10-14)

  • Don't limit rendering twitter card meta
  • Improve docs.

0.1.1 (2022-10-14)

  • Rework implementation.

0.1.0 (2022-10-13)

  • Initial release