oEmbed consumer library for Elixir
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
config
fixture/vcr_cassettes
lib
test
.ebert.yml
.editorconfig
.gitignore
.travis.yml
CHANGELOG.md
LICENSE
README.md
mix.exs

README.md

OEmbed

Build Status Deps Status Inline docs Ebert Hex.pm Hex.pm

oEmbed consumer library for Elixir applications.

oEmbed is a format for allowing an embedded representation of a URL on third party sites. The simple API allows a website to display embedded content (such as photos or videos) when a user posts a link to that resource, without having to parse the resource directly.

-- See oembed.com for more info about the protocol.

This library supports any discoverable oEmbed endpoint and some other services via custom adapters. Among them:

  • Instagram
  • Pinterest

Installation

Add oembed to your list of dependencies in mix.exs:

def deps do
  [{:oembed, "~> 0.2.0"}]
end

Usage

{:ok, result} = OEmbed.for("https://www.youtube.com/watch?v=dQw4w9WgXcQ")

Custom providers

You can implement modules that support provider behaviour and add them to the provider list from your app config

config :oembed, :providers, [MyApp.OEmbed.SomeProvider, MyApp.OEmbed.SomeOtherProvider]