script per siti che facilita la condivisione delle pagine web nelle istanze Mastodon toot ti permette di condividere URL su Mastodon, sunziona per qualsiasi istanza. Basta inserire il testo del tuo post e l'URL dell'istanza e cliccare su "Toot!". https://mastodon.it
Go to file
Tealk b8b07e4248
add caddy syntax
2022-05-17 15:30:54 +02:00
.github Update usernames 2022-02-02 15:32:36 +01:00
api Update years in licence headers 2022-02-12 12:36:08 +01:00
assets Update toot logo to be more Mastodon-like 2021-01-30 14:25:48 +01:00
src Fix font naming 2022-03-16 13:55:08 +01:00
.browserslistrc Move browserslist to separate file 2020-09-23 18:09:46 +02:00
.editorconfig Add EditorConfig 2021-01-29 22:56:37 +01:00
.gitignore Change output directory to public 2021-08-27 15:13:50 +02:00
.node-version Migrate from asdf to nodenv 2021-08-14 17:43:45 +02:00
.prettierignore Update .prettierignore 2021-08-29 13:54:26 +02:00
.prettierrc.json Use Prettier to format files 2021-08-14 19:12:42 +02:00
CHANGELOG.md Fix font naming 2022-03-16 13:55:08 +01:00
LICENSE Migrate license from MIT to AGPL-3.0 2021-01-30 00:48:40 +01:00
README.md add caddy syntax 2022-05-17 15:30:54 +02:00
gulpfile.js Change output directory to public 2021-08-27 15:13:50 +02:00
package.json v2.3.1 2022-03-16 13:55:20 +01:00
pnpm-lock.yaml Bump some dependencies 2022-02-12 12:30:28 +01:00

README.md

toot

Cross-instance share page for Mastodon

toot allows you to share stuff on Mastodon, cross-instance. Just put in your post text and the instance URL and click Toot!

And if you open this page with text URL parameter, it will be auto-inserted in the text field. The same goes for the instance URL parameter. This can be used to build custom share buttons for Mastodon:

<a href="https://toot.kytta.dev/?text=Hello%20world!&instance=https%3A%2F%2Fmastodon.xyz">
  Share on Mastodon
</a>

The instance URL can be saved in your localStorage to be automatically appended later — handy!

Hosting

One-click Vercel deploy

For now, toot is a tad bit vendor-locked to run on Vercel. To deploy it yourself, you can use the following button:

Deploy with Vercel

Host it yourself

Self-hosting toot outside of Vercel requires some extra setup:

  1. Make sure you have got Node.js v12 or later as well as pnpm installed

  2. Build the static part of toot:

    pnpm install    # to install dependencies
    pnpm run build  # to build the website
    
  3. Run the backend server for the form:

    node api/toot.js
    

    or if you want to run the process in the background:

    pm2 start api/toot.js --watch --ignore-watch="node_modules"
    

    You can find a summary for pm2 at: https://pm2.keymetrics.io/docs/usage/quick-start/

  4. Set up webserver

    1. Apache
    DocumentRoot "path_to_toot/public"
    
    ProxyPass "/api/toot"  "http://localhost:8000/"
    
    1. Nginx
    root path_to_toot/public;
    index.html;
    
    location /api/toot {
        proxy_pass http://localhost:8000/;
    }
    
    1. Caddy
    root * path_to_toot/public;
    try_files index.html
    
    handle_path /api/toot {
       reverse_proxy localhost:8000
    }
    

See also

📯 Shareon (lightweight, stylish, and ethical share buttons) uses toot under the hood!

Licence

Copyright © 20202022 Nikita Karamov
Licenced under the GNU Affero General Public License, version 3

The toot logo is based on Mastodons Simple logo, licensed under AGPL-3.0.

The repo banner includes Mastodons Full logo, licensed under AGPL-3.0.


This project is hosted on Codeberg: https://codeberg.org/kytta/toot