Packages

Furlex is a structured data extraction tool written in Elixir. It currently supports unfurling oEmbed, Twitter Card, Facebook Open Graph, JSON-LD and plain ole' HTML `<meta />` data out of any url you supply.

Current section

Files

Jump to
furlex doc readme.html
Raw

doc/readme.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="ExDoc v0.23.0">
<meta name="project" content="Furlex v0.5.0">
<title>Furlex — Furlex v0.5.0</title>
<link rel="stylesheet" href="dist/elixir-9f91ebe876dc01d67920.css" />
<script src="dist/sidebar_items-308f34ebd2.js"></script>
<script src="docs_config.js"></script>
<script async src="dist/app-60a0c9f10e9e52eae31f.js"></script>
</head>
<body data-type="extras">
<script>try { if(localStorage.getItem('night-mode') === 'true') document.body.className += ' night-mode'; } catch (e) { }</script>
<div class="main">
<button class="sidebar-button sidebar-toggle">
<span class="icon-menu" title="Collapse/expand sidebar"></span>
</button>
<section class="sidebar">
<form class="sidebar-search" action="search.html">
<button type="submit" class="search-button" aria-label="Submit Search">
<span class="icon-search" aria-hidden="true" title="Submit search"></span>
</button>
<button type="button" tabindex="-1" class="search-close-button" aria-label="Cancel Search">
<span class="icon-cross" aria-hidden="true" title="Cancel search"></span>
</button>
<label class="search-label">
<input name="q" type="text" id="search-list" class="search-input" placeholder="Search..." aria-label="Input your search terms" autocomplete="off" />
</label>
</form>
<div class="autocomplete">
<div class="autocomplete-results">
</div>
</div>
<div class="sidebar-header">
<div class="sidebar-projectDetails">
<a href="Furlex.html" class="sidebar-projectName">
Furlex </a>
<strong class="sidebar-projectVersion">
v0.5.0
</strong>
</div>
</div>
<ul class="sidebar-listNav">
<li><a id="extras-list" href="#full-list">Pages</a></li>
<li><a id="modules-list" href="#full-list">Modules</a></li>
</ul>
<div class="gradient"></div>
<ul id="full-list" class="sidebar-fullList"></ul>
</section>
<section class="content">
<div class="content-outer">
<div id="content" class="content-inner">
<h1>Furlex</h1><p>Furlex is a <a href="https://moz.com/learn/seo/schema-structured-data">structured data</a> extraction tool written in Elixir.</p><p>It currently supports unfurling oEmbed, Twitter Card, Facebook Open Graph, JSON-LD
and plain ole' HTML <code class="inline">&lt;meta /&gt;</code> data out of any url you supply.</p><h2 id="installation" class="section-heading">
<a href="#installation" class="hover-link"><span class="icon-link" aria-hidden="true"></span></a>
Installation
</h2>
<p>Add <code class="inline">:furlex</code> to your list of dependencies in <code class="inline">mix.exs</code>:</p><pre><code class="nohighlight makeup elixir"><span class="kd">def</span><span class="w"> </span><span class="nf">deps</span><span class="w"> </span><span class="k" data-group-id="2241269382-1">do</span><span class="w">
</span><span class="p" data-group-id="2241269382-2">[</span><span class="p" data-group-id="2241269382-3">{</span><span class="ss">:furlex</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;~&gt; 0.5.0&quot;</span><span class="p" data-group-id="2241269382-3">}</span><span class="p" data-group-id="2241269382-2">]</span><span class="w">
</span><span class="k" data-group-id="2241269382-1">end</span></code></pre><p>Then run <code class="inline">$ mix deps.get</code>. Also add <code class="inline">:furlex</code> to your applications list:</p><pre><code class="nohighlight makeup elixir"><span class="kd">def</span><span class="w"> </span><span class="nf">application</span><span class="w"> </span><span class="k" data-group-id="2676450202-1">do</span><span class="w">
</span><span class="p" data-group-id="2676450202-2">[</span><span class="ss">applications</span><span class="p">:</span><span class="w"> </span><span class="p" data-group-id="2676450202-3">[</span><span class="ss">:furlex</span><span class="p" data-group-id="2676450202-3">]</span><span class="p" data-group-id="2676450202-2">]</span><span class="w">
</span><span class="k" data-group-id="2676450202-1">end</span></code></pre><p><a href="http://github.com/michalmuskala/jason">Jason</a> is the default json library in Furlex. You can however configure Furlex to use another library. For example:</p><pre><code class="nohighlight makeup elixir"><span class="n">config</span><span class="w"> </span><span class="ss">:furlex</span><span class="p">,</span><span class="w"> </span><span class="ss">:json_library</span><span class="p">,</span><span class="w"> </span><span class="nc">YourLibraryOfChoice</span></code></pre><h2 id="usage" class="section-heading">
<a href="#usage" class="hover-link"><span class="icon-link" aria-hidden="true"></span></a>
Usage
</h2>
<p>To unfurl a url, simply pass it to <a href="Furlex.html#unfurl/1"><code class="inline">Furlex.unfurl/1</code></a></p><pre><code class="nohighlight makeup elixir"><span class="gp unselectable">iex(1)&gt; </span><span class="nc">Furlex</span><span class="o">.</span><span class="n">unfurl</span><span class="w"> </span><span class="s">&quot;https://www.youtube.com/watch?v=Gh6H7Md_L2k&quot;</span><span class="w">
</span><span class="p" data-group-id="4728337052-1">{</span><span class="ss">:ok</span><span class="p">,</span><span class="w">
</span><span class="p" data-group-id="4728337052-2">%</span><span class="nc" data-group-id="4728337052-2">Furlex</span><span class="p" data-group-id="4728337052-2">{</span><span class="ss">canonical_url</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;https://www.youtube.com/watch?v=Gh6H7Md_L2k&quot;</span><span class="p">,</span><span class="w">
</span><span class="ss">facebook</span><span class="p">:</span><span class="w"> </span><span class="p" data-group-id="4728337052-3">%{</span><span class="s">&quot;fb:app_id&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;87741124305&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:description&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;Watch the full episode: https://www.thisoldhouse.com/watch/ask-toh-future-house-offerman Ask This Old House host Kevin O’Connor visits Nick Offerman in Los A...&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:image&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;https://i.ytimg.com/vi/Gh6H7Md_L2k/maxresdefault.jpg&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:site_name&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;YouTube&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:title&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;Touring Nick Offerman’s Wood Shop&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;og:type&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;video&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:url&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;https://www.youtube.com/watch?v=Gh6H7Md_L2k&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:video:height&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4728337052-4">[</span><span class="s">&quot;720&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;720&quot;</span><span class="p" data-group-id="4728337052-4">]</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:video:secure_url&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4728337052-5">[</span><span class="s">&quot;https://www.youtube.com/embed/Gh6H7Md_L2k&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;https://www.youtube.com/v/Gh6H7Md_L2k?version=3&amp;autohide=1&quot;</span><span class="p" data-group-id="4728337052-5">]</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:video:type&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4728337052-6">[</span><span class="s">&quot;text/html&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;application/x-shockwave-flash&quot;</span><span class="p" data-group-id="4728337052-6">]</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:video:url&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4728337052-7">[</span><span class="s">&quot;https://www.youtube.com/embed/Gh6H7Md_L2k&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;http://www.youtube.com/v/Gh6H7Md_L2k?version=3&amp;autohide=1&quot;</span><span class="p" data-group-id="4728337052-7">]</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;og:video:width&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4728337052-8">[</span><span class="s">&quot;1280&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;1280&quot;</span><span class="p" data-group-id="4728337052-8">]</span><span class="p" data-group-id="4728337052-3">}</span><span class="p">,</span><span class="w">
</span><span class="ss">json_ld</span><span class="p">:</span><span class="w"> </span><span class="p" data-group-id="4728337052-9">[</span><span class="p" data-group-id="4728337052-10">%{</span><span class="s">&quot;@context&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;http://schema.org&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;@type&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;BreadcrumbList&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;itemListElement&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4728337052-11">[</span><span class="p" data-group-id="4728337052-12">%{</span><span class="s">&quot;@type&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;ListItem&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;item&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4728337052-13">%{</span><span class="s">&quot;@id&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;http://www.youtube.com/user/thisoldhouse&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;name&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;This Old House&quot;</span><span class="p" data-group-id="4728337052-13">}</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;position&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="mi">1</span><span class="p" data-group-id="4728337052-12">}</span><span class="p" data-group-id="4728337052-11">]</span><span class="p" data-group-id="4728337052-10">}</span><span class="p" data-group-id="4728337052-9">]</span><span class="p">,</span><span class="w">
</span><span class="ss">oembed</span><span class="p">:</span><span class="w"> </span><span class="p" data-group-id="4728337052-14">%{</span><span class="s">&quot;author_name&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;This Old House&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;author_url&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;https://www.youtube.com/user/thisoldhouse&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;height&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="mi">270</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;html&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;&lt;iframe width=</span><span class="se">\&quot;</span><span class="s">480</span><span class="se">\&quot;</span><span class="s"> height=</span><span class="se">\&quot;</span><span class="s">270</span><span class="se">\&quot;</span><span class="s"> src=</span><span class="se">\&quot;</span><span class="s">https://www.youtube.com/embed/Gh6H7Md_L2k?feature=oembed</span><span class="se">\&quot;</span><span class="s"> frameborder=</span><span class="se">\&quot;</span><span class="s">0</span><span class="se">\&quot;</span><span class="s"> gesture=</span><span class="se">\&quot;</span><span class="s">media</span><span class="se">\&quot;</span><span class="s"> allow=</span><span class="se">\&quot;</span><span class="s">encrypted-media</span><span class="se">\&quot;</span><span class="s"> allowfullscreen&gt;&lt;/iframe&gt;&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;provider_name&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;YouTube&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;provider_url&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;https://www.youtube.com/&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;thumbnail_height&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="mi">360</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;thumbnail_url&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;https://i.ytimg.com/vi/Gh6H7Md_L2k/hqdefault.jpg&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;thumbnail_width&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="mi">480</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;title&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;Touring Nick Offerman’s Wood Shop&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;type&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;video&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;version&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;1.0&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;width&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="mi">480</span><span class="p" data-group-id="4728337052-14">}</span><span class="p">,</span><span class="w">
</span><span class="ss">other</span><span class="p">:</span><span class="w"> </span><span class="p" data-group-id="4728337052-15">%{</span><span class="s">&quot;description&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;Watch the full episode: https://www.thisoldhouse.com/watch/ask-toh-future-house-offerman Ask This Old House host Kevin O’Connor visits Nick Offerman in Los A...&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;keywords&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;this old house, how-to, home improvement, Episode, TV Show, DIY, Ask This Old House, Nick Offerman, Kevin O&#39;Connor, woodworking, wood shop&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;theme-color&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;#ff0000&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;title&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;Touring Nick Offerman’s Wood Shop&quot;</span><span class="p" data-group-id="4728337052-15">}</span><span class="p">,</span><span class="w">
</span><span class="ss">status_code</span><span class="p">:</span><span class="w"> </span><span class="mi">200</span><span class="p">,</span><span class="w">
</span><span class="ss">twitter</span><span class="p">:</span><span class="w"> </span><span class="p" data-group-id="4728337052-16">%{</span><span class="s">&quot;twitter:app:id:googleplay&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;com.google.android.youtube&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:id:ipad&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;544007664&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:id:iphone&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;544007664&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:name:googleplay&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;YouTube&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:name:ipad&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;YouTube&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:name:iphone&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;YouTube&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:url:googleplay&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;https://www.youtube.com/watch?v=Gh6H7Md_L2k&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:url:ipad&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;vnd.youtube://www.youtube.com/watch?v=Gh6H7Md_L2k&amp;feature=applinks&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:url:iphone&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;vnd.youtube://www.youtube.com/watch?v=Gh6H7Md_L2k&amp;feature=applinks&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:card&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;player&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:description&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;Watch the full episode: https://www.thisoldhouse.com/watch/ask-toh-future-house-offerman Ask This Old House host Kevin O’Connor visits Nick Offerman in Los A...&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:image&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;https://i.ytimg.com/vi/Gh6H7Md_L2k/maxresdefault.jpg&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:player&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;https://www.youtube.com/embed/Gh6H7Md_L2k&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:player:height&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;720&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;twitter:player:width&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;1280&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:site&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;@youtube&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:title&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;Touring Nick Offerman’s Wood Shop&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:url&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;https://www.youtube.com/watch?v=Gh6H7Md_L2k&quot;</span><span class="p" data-group-id="4728337052-16">}</span><span class="p" data-group-id="4728337052-2">}</span><span class="p" data-group-id="4728337052-1">}</span></code></pre><h2 id="configuration" class="section-heading">
<a href="#configuration" class="hover-link"><span class="icon-link" aria-hidden="true"></span></a>
Configuration
</h2>
<p>Furlex accepts a few optional configuration parameters.</p><p>You may configure additional tags to capture under the Facebook
OpenGraph and TwitterCard parsers.</p><pre><code class="nohighlight makeup elixir"><span class="n">config</span><span class="w"> </span><span class="ss">:furlex</span><span class="p">,</span><span class="w"> </span><span class="nc">Furlex.Parser.Facebook</span><span class="p">,</span><span class="w">
</span><span class="ss">tags</span><span class="p">:</span><span class="w"> </span><span class="sx">~w(my:custom:facebook:tag another:custom:facebook:tag)</span><span class="w">
</span><span class="n">config</span><span class="w"> </span><span class="ss">:furlex</span><span class="p">,</span><span class="w"> </span><span class="nc">Furlex.Parser.Twitter</span><span class="p">,</span><span class="w">
</span><span class="ss">tags</span><span class="p">:</span><span class="w"> </span><span class="sx">~w(my:custom:twitter:tag)</span></code></pre><p>You may also configure the depth of the resulting Furlex map with a <code class="inline">:group_keys?</code> boolean.</p><pre><code class="nohighlight makeup elixir"><span class="n">config</span><span class="w"> </span><span class="ss">:furlex</span><span class="p">,</span><span class="w"> </span><span class="ss">group_keys?</span><span class="p">:</span><span class="w"> </span><span class="no">true</span></code></pre><p>If this option is set to false or unconfigured, Furlex will return values mapped directly beneath OpenGraph and TwitterCard keys, i.e.</p><pre><code class="nohighlight makeup elixir"><span class="p" data-group-id="0366371372-1">%</span><span class="nc" data-group-id="0366371372-1">Furlex</span><span class="p" data-group-id="0366371372-1">{</span><span class="ss">twitter</span><span class="p">:</span><span class="w"> </span><span class="p" data-group-id="0366371372-2">%{</span><span class="w">
</span><span class="s">&quot;twitter:app:id:googleplay&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;com.google.android.youtube&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:id:ipad&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;544007664&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;twitter:app:id:iphone&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;544007664&quot;</span><span class="w">
</span><span class="p" data-group-id="0366371372-2">}</span><span class="p" data-group-id="0366371372-1">}</span></code></pre><p>If true, Furlex will return values grouped into colon-delimited map structures, i.e.</p><pre><code class="nohighlight makeup elixir"><span class="p" data-group-id="4421943305-1">%</span><span class="nc" data-group-id="4421943305-1">Furlex</span><span class="p" data-group-id="4421943305-1">{</span><span class="ss">twitter</span><span class="p">:</span><span class="w"> </span><span class="p" data-group-id="4421943305-2">%{</span><span class="w">
</span><span class="s">&quot;twitter&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4421943305-3">%{</span><span class="w">
</span><span class="s">&quot;app&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4421943305-4">%{</span><span class="w">
</span><span class="s">&quot;id&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="p" data-group-id="4421943305-5">%{</span><span class="w">
</span><span class="s">&quot;googleplay&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;com.google.android.youtube&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;ipad&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;544007664&quot;</span><span class="p">,</span><span class="w">
</span><span class="s">&quot;iphone&quot;</span><span class="w"> </span><span class="p">=&gt;</span><span class="w"> </span><span class="s">&quot;544007664&quot;</span><span class="w">
</span><span class="p" data-group-id="4421943305-5">}</span><span class="w">
</span><span class="p" data-group-id="4421943305-4">}</span><span class="w">
</span><span class="p" data-group-id="4421943305-3">}</span><span class="w">
</span><span class="p" data-group-id="4421943305-2">}</span><span class="p" data-group-id="4421943305-1">}</span></code></pre><h2 id="license" class="section-heading">
<a href="#license" class="hover-link"><span class="icon-link" aria-hidden="true"></span></a>
License
</h2>
<p>Copyright 2017 Clayton Gentry</p><p>Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
you may not use this file except in compliance with the License.
You may obtain a copy of the License at</p><pre><code class="nohighlight makeup elixir"><span class="n">http</span><span class="ss">:/</span><span class="o">/</span><span class="n">www</span><span class="o">.</span><span class="n">apache</span><span class="o">.</span><span class="n">org</span><span class="o">/</span><span class="n">licenses</span><span class="o">/</span><span class="nc">LICENSE</span><span class="o">-</span><span class="mf">2.0</span><span class="err">`</span></code></pre><p>Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.</p> <footer class="footer">
<p>
<span class="line">
Built using
<a href="https://github.com/elixir-lang/ex_doc" title="ExDoc" target="_blank" rel="help noopener">ExDoc</a> (v0.23.0) for the
<a href="https://elixir-lang.org" title="Elixir" target="_blank">Elixir programming language</a>.
</span>
<span class="line">
Designed by
<a href="https://twitter.com/dignifiedquire" target="_blank" rel="noopener" title="@dignifiedquire">Friedel Ziegelmayer</a>.
</span>
</p>
<p>
<a href="api-reference.html" title="API reference" class="line footer-button">API Reference</a>
<button class="line footer-button display-shortcuts-help">
Display keyboard shortcuts
</button>
<button class="line footer-button night-mode-toggle">
Toggle night mode
</button>
<button class="line footer-button display-quick-switch">
Go to a HexDocs package
</button>
<button class="line footer-button tooltips-toggle">
<span class="tooltips-option-disable">Disable tooltips</span>
<span class="tooltips-option-enable">Enable tooltips</span>
</button>
</p>
</footer>
</div>
</div>
</section>
</div>
</body>
</html>