Compare commits

...

3 commits

Author SHA1 Message Date
257adb6bb5 bump version to: 1.0.1-SNAPSHOT 2024-05-30 09:49:19 +02:00
8b509e9f8c release: 1.0.0 2024-05-30 09:49:18 +02:00
176b919edf Update readme 2024-05-30 09:47:34 +02:00
3 changed files with 49 additions and 51 deletions

View file

@ -1,15 +1,17 @@
# dda-masto-embed # dda-masto-embed
![build](https://github.com/DomainDrivenArchitecture/dda-masto-embed/workflows/build-it/badge.svg) ![build](https://github.com/DomainDrivenArchitecture/dda-masto-embed/workflows/build-it/badge.svg)
[<img src="https://meissa-gmbh.de/img/community/Mastodon_Logotype.svg" width=20 alt="team@social.meissa-gmbh.de"> team@social.meissa-gmbh.de](https://social.meissa-gmbh.de/@team) | [Website & Blog](https://domaindrivenarchitecture.org) [<img src="https://meissa-gmbh.de/img/community/Mastodon_Logotype.svg" width=20 alt="team@social.meissa-gmbh.de"> team@social.meissa-gmbh.de](https://social.meissa-gmbh.de/@team) | [Website & Blog](https://domaindrivenarchitecture.org)
## In brief ## In brief
dda-masto-embed embedd either your timeline or answers to a specific post on your website. dda-masto-embed embedd either your timeline or replies to a specific post on your website.
* Uses JS, **no intermediate server** required, * Uses JS, **no intermediate server** required,
* in answer mode you can decide to show only favorited answers in order to do upfront moderation * in replies mode you can decide to show only favorited replies in order to do upfront moderation
* example for embedding a timeline at [meissa.de/news](https://meissa.de/news/) * example for embedding a timeline at [meissa.de/news](https://meissa.de/news/)
* example for embedding answers to a specific post at [meissa.de/sustainibility_microplastic](https://meissa.de/about-meissa/03plastik-aktion/) * example for embedding replies to a specific post at [meissa.de/sustainibility_microplastic](https://meissa.de/about-meissa/03plastik-aktion/)
* Download latest version at: * Download latest version at:
* [dda-masto-embed.js](https://domaindrivenarchitecture.org/downloads/dda-masto-embed.js) * [dda-masto-embed.js](https://domaindrivenarchitecture.org/downloads/dda-masto-embed.js)
* [dda-masto-embed.js.sha256](https://domaindrivenarchitecture.org/downloads/dda-masto-embed.js.sha256) * [dda-masto-embed.js.sha256](https://domaindrivenarchitecture.org/downloads/dda-masto-embed.js.sha256)
@ -19,30 +21,22 @@ dda-masto-embed embedd either your timeline or answers to a specific post on you
### css and html as base ### css and html as base
Uses a generalized HTML structure with descriptive classes and css grid for styling. Uses a generalized HTML structure with descriptive classes and css grid for styling.
The structure in the css follows the html structure. Both accound mode and replies mode are styled there.
Re-styling your timeline should now be a breeze. Re-styling your timeline should now be a breeze.
## Development & mirrors
Development happens at: https://repo.prod.meissa.de/meissa/dda-masto-embed
Mirrors are:
* https://codeberg.org/meissa/dda-masto-embed (issues and PR)
* https://gitlab.com/domaindrivenarchitecture/dda-masto-embed (CI)
* https://github.com/DomainDrivenArchitecture/dda-masto-embed
## Include a timeline ## Include a timeline
Including a timeline needs the following html. The div with id `masto-embed` configures the timeline to be shown. 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 :-) We use bootstrap for rough styling. More styling is up to you at the moment, help is welcome :-)
``` ```html
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<title>masto-embed</title> <title>masto-embed</title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" <link rel="stylesheet" href="post.css">
integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk"
crossorigin="anonymous">
</head> </head>
<body> <body>
<div id="masto-embed" <div id="masto-embed"
@ -56,24 +50,23 @@ We use bootstrap for rough styling. More styling is up to you at the moment, hel
``` ```
Reference: Reference:
* `id` has to be `masto-embed` * `id` has to be `masto-embed`
* `account_name` is the name of your account. * `account_name` is the name of your account.
* `host_url` the url of your mastodon instance. * `host_url` the url of your mastodon instance.
* Use the `post.css` from the src/main/resources or the public folder.
## Using in reply mode ## Using in reply mode
Including replies of one of your posts will work as follows: Including replies of one of your posts will work as follows:
``` ```html
<!doctype html> <!doctype html>
<html> <html>
<head> <head>
<meta charset="utf-8" /> <meta charset="utf-8" />
<title>masto-embed</title> <title>masto-embed</title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" <link rel="stylesheet" href="post.css">
integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk"
crossorigin="anonymous">
</head> </head>
<body> <body>
<div id="masto-embed" <div id="masto-embed"
@ -87,17 +80,18 @@ Including replies of one of your posts will work as follows:
</body> </body>
</html> </html>
``` ```
Reference: Reference:
* `id` has to be `masto-embed` * `id` has to be `masto-embed`
* `account_name` is the name of your account. * `account_name` is the name of your account.
* `host_url` the url of your mastodon instance. * `host_url` the url of your mastodon instance.
* `replies_to` the id of your post. * `replies_to` the id of your post.
* `filter_favorited=<true|false>` true will show only favorited replies, false will show every answer. * `filter_favorited=<true|false>` true will show only favorited replies, false will show every answer.
## Dev setup ## Dev setup
``` ```bash
npm install -g npx npm install -g npx
npm install -g shadow-cljs npm install -g shadow-cljs
npm install -g source-map-support --save-dev npm install -g source-map-support --save-dev
@ -109,16 +103,17 @@ open browser at http://localhost:8080
Connect your repl for :frontend Connect your repl for :frontend
## Run the tests ## Run the tests
``` ```bash
shadow-cljs compile test shadow-cljs compile test
``` ```
## Releasing ## Releasing
### prod release ### prod release
```
```bash
#adjust version #adjust version
vi package.json vi package.json
git commit -am 'releasing' git commit -am 'releasing'
@ -131,9 +126,12 @@ git commit -am "version bump" && git push
``` ```
## Development & mirrors ## Development & mirrors
Development happens at: https://repo.prod.meissa.de/meissa/dda-masto-embed Development happens at: https://repo.prod.meissa.de/meissa/dda-masto-embed
Mirrors are: Mirrors are:
* https://codeberg.org/meissa/dda-masto-embed (issues and PR)
* https://gitlab.com/domaindrivenarchitecture/dda-masto-embed (CI issues and PR) * https://gitlab.com/domaindrivenarchitecture/dda-masto-embed (CI issues and PR)
* https://github.com/DomainDrivenArchitecture/dda-masto-embed * https://github.com/DomainDrivenArchitecture/dda-masto-embed

View file

@ -9,7 +9,7 @@ name = 'dda-masto-embed'
MODULE = 'not-used' MODULE = 'not-used'
PROJECT_ROOT_PATH = '.' PROJECT_ROOT_PATH = '.'
version = "0.2.5" version = "1.0.1-dev"
@init @init
def initialize(project): def initialize(project):

View file

@ -1,26 +1,26 @@
{ {
"name": "dda-masto-embed", "name": "dda-masto-embed",
"author": "meissa GmbH", "author": "meissa GmbH",
"version": "0.2.5", "version": "1.0.1-SNAPSHOT",
"homepage": "https://github.com/DomainDrivenArchitecture/dda-masto-embed", "homepage": "https://github.com/DomainDrivenArchitecture/dda-masto-embed",
"repository": "https://github.com/DomainDrivenArchitecture/dda-masto-embed", "repository": "https://github.com/DomainDrivenArchitecture/dda-masto-embed",
"license": "Apache-2.0", "license": "Apache-2.0",
"private": false, "private": false,
"devDependencies": { "devDependencies": {
"ajv": "^8.10", "ajv": "^8.10",
"eslint": ">=8.10.0", "eslint": ">=8.10.0",
"lodash.template": ">=4.5.0", "lodash.template": ">=4.5.0",
"shadow-cljs": "^2.17.8", "shadow-cljs": "^2.17.8",
"source-map-support": "^0.5.21" "source-map-support": "^0.5.21"
}, },
"dependencies": { "dependencies": {
"mastodon-api": "^1.3.0" "mastodon-api": "^1.3.0"
}, },
"main": "dda-masto-embed.js", "main": "dda-masto-embed.js",
"keywords": [ "keywords": [
"cljs", "cljs",
"mastodon", "mastodon",
"status", "status",
"bootstrap" "bootstrap"
] ]
} }