Embed and aggregate Bluesky and Mastodon replies as blog or static-site comments.
JavaScript 82.9%
HTML 17.1%
3 1 0

Clone this repository

https://tangled.org/808.foxx.ink/fediscuss
git@tangled.org:808.foxx.ink/fediscuss

For self-hosted knots, clone URLs may differ based on your setup.

README.md

Fediscuss#

Embed and aggregate Bluesky and Mastodon replies as comments on static-site.

<!-- assign the corresponding i18n in #comments element -->
<div id="comments" 
    data-i18n-nocomment="No comments to display."
    data-i18n-err="Error when loading comments"
    data-i18n-loading="Loading comments on Fediverse"
    data-i18n-replies="Replies"
    data-i18n-reblogs="Reblogs"
    data-i18n-favourites="Favourites"
    open>
    <article id="discussion-starter">
        <!--  #discussion-starter-content -->
        <div id="discussion-starter-content" style="display: none;">
            <noscript>
                <div id=comments-error role=alert>Uh-oh... Javascript is disabled! No comments to display.</div>
            </noscript>
        </div>
        <!--  discussion-starter #stats -->
        <div id="stats"  class="stat" aria-live="polite"></div>
    </article>
    <!--  assign the corresponding data-url here -->
    <ul id="mstd-comments" aria-busy="true" aria-label="Discussion on Mastodon" 
        data-url="https://instance.domain/@username/123456789012345678"></ul>
    <ul id="bsky-comments" aria-busy="true" aria-label="Discussion on Bluesky" 
        data-url="https://bsky.app/profile/username/post/0123456789abc"></ul>
    <!--  if both Mastodon & Bluesky posts exist please add #fed-comments -->
    <ul id="fed-comments" aria-busy="false" aria-label="Aggregated Discussion"></ul>
</div>
<!-- dompurify is optional -->
<script src="index.js" defer></script>

License and Atrribution#

Copyleft --- Legal advice needed!

This code is originally forked from: