<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="47662" data-post-id="47662">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="abitdodgy" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abitdodgy/120/24328_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  abitdodgy
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a class="mention" href="/u/wmnnd" rel="nofollow">@wmnnd</a>  I’m not using Belt yet. But in Refile it works like this:</p>
<p>When you add files to the form, Refile makes a request to the app to get a signed token, then using this signed token the app uploads the files directly to AWS and writes the results to a JSON field to store the meta data. This is great because I can have multiple uploads running concurrently, and submit the form and save the record without having much overhead or IO blocking.</p>
<p>Where Refile fails, however, is that it does on the fly processing, which means requested images are processed on the fly from AWS and served through a rack app. This is a major headache on PaaS services like Heroku, even with a CDN, where a page load with lots of avatars causes timeouts as the rackapp struggles to process and serve each image.</p>
<p>The ideal way would be to be able to directly upload to AWS and request the files directly from AWS or via CDN without having the app get involved. Any processing can happen in the background.</p>
<p>In Refile, much of this direct uploading is <a href="https://github.com/refile/refile/blob/master/app/assets/javascripts/refile.js" rel="noopener nofollow ugc">powered by circa 100 lines of javascript</a>.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="47662" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/22">Post #21</a>
	                </div>
	            </div>
              <div id="likers-container-47662" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="47662"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #21"></div>
  </section>
</div>
    <div class="postbit" id="47674" data-post-id="47674">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="wmnnd" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/wmnnd/120/4985_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  wmnnd
                      <span class="op-star" title="Thread Starter">
                        <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                      </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Getting the signed upload URL isn’t much of a problem but the JS and form-building part is what worries me here. Right now, Belt is completely independent from Phoenix and/or Plug even if they play together very nicely.</p>
<p>A <code>belt_phoenix</code> or <code>belt_plug</code> module that offers a provider-agnostic way of getting direct or indirect upload links would probably be nice but it’s not at the top of my to-do list right now.<br>
I’d imagine the API to be relatively low-level and something along the lines of <code>Belt.upload_link(config, opts)</code>. What do you think about this idea?<br>
Installation for a more high-level module would also be a little more complicated than for Refile since Phoenix doesn’t have a global asset pipeline that allows for the adding of global helper functions and/or JavaScript.</p>
<p>For now, I suggest simply trying if using Belt works out for you even without direct S3 uploads (which are also <a href="https://github.com/stavro/arc/issues/1" rel="noopener nofollow ugc">not supported</a> by Arc, by the way). If your application isn’t, say, a file hoster, this should not pose a major problem <img src="https://forum.elixirforum.com/images/emoji/apple/slight_smile.png?v=15" title=":slight_smile:" class="emoji" alt=":slight_smile:" loading="lazy" width="20" height="20"> Otherwise you’ll have to build something yourself with ExAWS.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="47674" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/23">Post #22</a>
	                </div>
	            </div>
              <div id="likers-container-47674" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="47674"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #22"></div>
  </section>
</div>
    <div class="postbit" id="47733" data-post-id="47733">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="abitdodgy" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/abitdodgy/120/24328_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  abitdodgy
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<blockquote>
<p>I’d imagine the API to be relatively low-level and something along the lines of Belt.upload_link(config, opts). What do you think about this idea?</p>
</blockquote>
<p>I think that would be great. We could then build our own JS implementations around the lib.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="47733" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/24">Post #23</a>
	                </div>
	            </div>
              <div id="likers-container-47733" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="47733"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #23"></div>
  </section>
</div>
    <div class="postbit" id="48280" data-post-id="48280">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="kwando" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/kwando/120/4092_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  kwando
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Do I have to do something special when using Belt.Provider.S3 in a test case? It justs blow up with this error all the time <img src="https://forum.elixirforum.com/images/emoji/apple/confused.png?v=15" title=":confused:" class="emoji" alt=":confused:" loading="lazy" width="20" height="20"></p>
<p>(I have<code>ex_aws</code> and <code>sweet_xml</code> in my mix.exs)</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">16:59:18.658 [error] GenServer Belt terminating
** (RuntimeError) provider Belt.Provider.S3 not registered with Belt
    (belt) lib/belt.ex:284: anonymous fn/1 in Belt.init/1
    (gen_stage) lib/gen_stage/partition_dispatcher.ex:214: anonymous fn/3 in GenStage.PartitionDispatcher.dispatch/3
    (elixir) lib/enum.ex:1811: Enum."-reduce/3-lists^foldl/2-0-"/3
    (gen_stage) lib/gen_stage/partition_dispatcher.ex:213: GenStage.PartitionDispatcher.dispatch/3
    (gen_stage) lib/gen_stage.ex:2309: GenStage.dispatch_events/3
    (gen_stage) lib/gen_stage.ex:1960: GenStage.handle_call/3
    (stdlib) gen_server.erl:636: :gen_server.try_handle_call/4
    (stdlib) gen_server.erl:665: :gen_server.handle_msg/6
    (stdlib) proc_lib.erl:247: :proc_lib.init_p_do_apply/3
Last message (from #PID&lt;0.519.0&gt;): {:store, [%Belt.Provider.S3.Config{access_key_id: "&lt;redacted&gt;", base_url: "https://&lt;redacted&gt;", bucket: "demo-data", host
: "static.bemt.eu", https: true, port: 443, provider: Belt.Provider.S3, region: "us-west-2", secret_access_key: "&lt;redacted&gt;"}, "/Users/kwando/projects/

work/SMS/setup.sh", [key: "840277a243d9f9769a71d56285d2569489fb21747f0d32b4db302c77a561b10c3842c579ffc20c28"]]}
16:59:18.662 [error] GenServer Belt.Provider.Filesystem.Supervisor terminating
** (RuntimeError) provider Belt.Provider.S3 not registered with Belt
    (belt) lib/belt.ex:284: anonymous fn/1 in Belt.init/1
    (gen_stage) lib/gen_stage/partition_dispatcher.ex:214: anonymous fn/3 in GenStage.PartitionDispatcher.dispatch/3
    (elixir) lib/enum.ex:1811: Enum."-reduce/3-lists^foldl/2-0-"/3
    (gen_stage) lib/gen_stage/partition_dispatcher.ex:213: GenStage.PartitionDispatcher.dispatch/3
    (gen_stage) lib/gen_stage.ex:2309: GenStage.dispatch_events/3
    (gen_stage) lib/gen_stage.ex:1960: GenStage.handle_call/3
    (stdlib) gen_server.erl:636: :gen_server.try_handle_call/4
    (stdlib) gen_server.erl:665: :gen_server.handle_msg/6
    (stdlib) proc_lib.erl:247: :proc_lib.init_p_do_apply/3
Last message: {:DOWN, #Reference&lt;0.611478655.3527409665.27844&gt;, :process, #PID&lt;0.311.0&gt;, {%RuntimeError{message: "provider Belt.Provider.S3 not registered with Belt"}, [{Belt, :"-in
it/1-fun-0-", 1, [file: 'lib/belt.ex', line: 284]}, {GenStage.PartitionDispatcher, :"-dispatch/3-fun-0-", 3, [file: 'lib/gen_stage/partition_dispatcher.ex', line: 214]}, {Enum, :"-r
educe/3-lists^foldl/2-0-", 3, [file: 'lib/enum.ex', line: 1811]}, {GenStage.PartitionDispatcher, :dispatch, 3, [file: 'lib/gen_stage/partition_dispatcher.ex', line: 213]}, {GenStage
, :dispatch_events, 3, [file: 'lib/gen_stage.ex', line: 2309]}, {GenStage, :handle_call, 3, [file: 'lib/gen_stage.ex', line: 1960]}, {:gen_server, :try_handle_call, 4, [file: 'gen_s
erver.erl', line: 636]}, {:gen_server, :handle_msg, 6, [file: 'gen_server.erl', line: 665]}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 247]}]}}
</code></pre> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="48280" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/25">Post #24</a>
	                </div>
	            </div>
              <div id="likers-container-48280" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="48280"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #24"></div>
  </section>
</div>
    <div class="postbit" id="48324" data-post-id="48324">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="wmnnd" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/wmnnd/120/4985_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  wmnnd
                      <span class="op-star" title="Thread Starter">
                        <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                      </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p><a class="mention" href="/u/kwando" rel="nofollow">@kwando</a> Hey there, thanks for giving Belt a try! You need to register the providers that you want to use in your mix configuration.<br>
Here is the example from the <a href="https://hexdocs.pm/belt/getting-started.html#content" rel="noopener nofollow ugc">Getting Started guide</a>:</p>
<pre data-code-wrap="elixir"><code class="lang-elixir">config :belt,
  providers: [Belt.Provider.Filesystem, Belt.Provider.SFTP, Belt.Provider.S3] 
</code></pre> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="48324" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/26">Post #25</a>
	                </div>
	            </div>
              <div id="likers-container-48324" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="48324"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #25"></div>
  </section>
</div>
    <div class="postbit" id="52643" data-post-id="52643">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="wmnnd" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/wmnnd/120/4985_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  wmnnd
                      <span class="op-star" title="Thread Starter">
                        <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                      </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<h2><a name="p-52643-small-sftp-update-020-1" class="anchor" href="#p-52643-small-sftp-update-020-1" aria-label="Heading link" rel="nofollow"></a>Small SFTP update 0.2.0</h2>
<p>Version 0.2.0 of Belt brings improved SFTP transfer performance (as much as 10 times faster transfer speed) thanks to asynchronous writing as well as better support for different SFTP servers.</p>
<h3><a name="p-52643-whats-next-2" class="anchor" href="#p-52643-whats-next-2" aria-label="Heading link" rel="nofollow"></a>What’s next?</h3>
<p>Belt 0.x will continue to receive updates and soon I’ll add a feature to test configurations without the need to upload something or use one of the other commands first.<br>
A rewrite is coming for version 1.x which will bring new Ecto-style configuration and direct uploads - both for S3 and by proxy for SFTP as well.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="52643" data-batch-url="/posts/batch_likers">
                        4
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/27">Post #26</a>
	                </div>
	            </div>
              <div id="likers-container-52643" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="52643"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-most-liked cat-most-liked" title="One of the top 3 liked posts in this thread!"></div>
  </section>
</div>
    <div class="postbit" id="53037" data-post-id="53037">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="aislan" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/aislan/120/3300_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  aislan
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Would be awesome if this bring delete feature to S3. That’s is the very problem I’m having right now with Arc and Arc_ecto.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="53037" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/28">Post #27</a>
	                </div>
	            </div>
              <div id="likers-container-53037" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="53037"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #27"></div>
  </section>
</div>
    <div class="postbit" id="53110" data-post-id="53110">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="wmnnd" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/wmnnd/120/4985_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  wmnnd
                      <span class="op-star" title="Thread Starter">
                        <img alt="OP" class="op-star-icon" src="/assets/thread-icons/thread-icon-thread-starter-df91e872.png" />
                      </span>
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Which delete feature are you referring to? <code>Belt.delete/3</code>?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="53110" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/29">Post #28</a>
	                </div>
	            </div>
              <div id="likers-container-53110" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="53110"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #28"></div>
  </section>
</div>
    <div class="postbit" id="53587" data-post-id="53587">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="jaimeiniesta" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/jaimeiniesta/120/1063_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  jaimeiniesta
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Nice library, thanks!</p>
<p>Is there a way to store a file without reading from disk? I mean, in my app I want to store a file in SFTP, but its contents don’t come from an existing file, they’re generated in memory. Is there a way to upload directly those or should I write to disk first?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="53587" data-batch-url="/posts/batch_likers">
                        1
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/30">Post #29</a>
	                </div>
	            </div>
              <div id="likers-container-53587" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="53587"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #29"></div>
  </section>
</div>
    <div class="postbit" id="53589" data-post-id="53589">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="NobbZ" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/NobbZ/120/27235_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  NobbZ
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>This depends on the SFTP lib you use.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="53589" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/belt-a-flexible-file-storage-library/4644/31">Post #30</a>
	                </div>
	            </div>
              <div id="likers-container-53589" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="53589"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #30"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <a class="load-more-button" data-turbo-stream="true" href="/topics/4644/load_more?page=4">Load more posts</a>
</div></template></turbo-stream>