Embeds mastodon timline into a html page. Uses JS, no intermediate server required.
Find a file
2024-05-29 10:16:21 +02:00
doc Add dev notes 2024-05-29 10:16:21 +02:00
public Style and responsiveness tweaks 2024-05-16 14:46:22 +02:00
src do not show link-preview if card is empty 2024-05-29 10:12:43 +02:00
.gitignore Ignore test compares 2024-05-17 18:12:48 +02:00
.gitlab-ci.yml Fix ci paths 2024-05-10 12:23:07 +02:00
build.py Update build to gitlab and ddadevops 2024-05-10 12:10:59 +02:00
LICENSE Initial commit 2020-04-23 09:01:24 +02:00
package.json Update deps 2024-05-15 16:12:54 +02:00
README.md [Skip-CI] Add Development and mirrors section 2023-07-28 14:44:04 +02:00
shadow-cljs.edn Parse html as hickory 2024-05-16 10:27:35 +02:00

dda-masto-embed

build

team@social.meissa-gmbh.de team@social.meissa-gmbh.de | Website & Blog

In brief

dda-masto-embed embedd either your timeline or answers to an specific post on your website.

Development & mirrors

Development happens at: https://repo.prod.meissa.de/meissa/dda-masto-embed

Mirrors are:

How it looks

masto-embed-example.png

Include a timeline

Including a timeline needs the following html. The div with id masto-embed configures the timeline to be shown. We use bootstrap for rough styling. More styling is up to you at the moment, help is welcome :-)

<!doctype html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>masto-embed</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" 
          integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" 
          crossorigin="anonymous">
  </head>
  <body>
    <div id="masto-embed" 
          account_name="team"
          host_url="https://social.meissa-gmbh.de">
      Here the timeline will appear.
    </div>
    <script src="https://domaindrivenarchitecture.org/downloads/dda-masto-embed.js"></script>
  </body>
</html>

Reference:

  • id has to be masto-embed
  • account_name is the name of your account.
  • host_url the url of your mastodon instance.

Using in reply mode

Including replies of one of your posts will work as follows:

<!doctype html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>masto-embed</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" 
          integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" 
          crossorigin="anonymous">
  </head>
  <body>
    <div id="masto-embed" 
          account_name="team"
          replies_to="107937234506182462"
          filter_favorited=false
          host_url="https://social.meissa-gmbh.de">
      Here the timeline will appear.
    </div>
    <script src="https://domaindrivenarchitecture.org/downloads/dda-masto-embed.js"></script>
  </body>
</html>

Reference:

  • id has to be masto-embed
  • account_name is the name of your account.
  • host_url the url of your mastodon instance.
  • replies_to the id of your post.
  • filter_favorited=<true|false> true will show only favorited replies, false will show every answer.

Dev setup

npm install -g npx
npm install -g shadow-cljs
npm install -g source-map-support --save-dev
npm install
shadow-cljs watch frontend

open browser at http://localhost:8080

Connect your repl for :frontend

Run the tests

shadow-cljs compile test

Releasing

prod release

#adjust version
vi package.json
git commit -am 'releasing'
git tag -am 'releasing' <version>
git push --follow-tags

# Bump version
vi package.json
git commit -am "version bump" && git push

Development & mirrors

Development happens at: https://repo.prod.meissa.de/meissa/dda-masto-embed

Mirrors are:

License

Copyright © 2023 meissa GmbH Licensed under the Apache License, Version 2.0 (the "License") Pls. find licenses of our subcomponents here