toot-script-condivisione-su.../README.md

106 lines
2.8 KiB
Markdown
Raw Normal View History

2022-11-14 13:34:13 +01:00
<h1 align="center"><img src="assets/share2fedi.svg" width="520" height="160" alt="Share2Fedi"></h1>
2020-09-23 16:08:21 +02:00
2022-11-14 13:34:13 +01:00
> Instance-agnostic share page for the Fediverse.
2020-09-23 18:39:38 +02:00
2022-11-14 13:39:51 +01:00
**[Share₂Fedi]** allows you to share stuff on Mastodon, GoToSocial, Pleroma, and other federated social networks, instance-agnostic. Just type in the post text and the instance URL, and click Post!
2021-01-30 15:12:32 +01:00
2022-11-14 13:39:51 +01:00
Or, open this page with the prefilled `text` URL parameter—it will be automatically inserted into the text field. The same goes for the `instance` URL parameter. This can be used to build custom share buttons for the federated social networks:
2020-09-23 18:39:38 +02:00
```html
2022-11-14 13:39:51 +01:00
<a href="https://s2f.kytta.dev/?text=Hello%20world!&instance=https%3A%2F%2Fmastodon.xyz">
Share on mastodon.xyz
2020-09-23 18:39:38 +02:00
</a>
```
2022-11-14 13:39:51 +01:00
The instance URL can be saved in your `localStorage` to be automatically appended if used later—handy!
2021-01-30 15:12:32 +01:00
## Hosting
### One-click Vercel deploy
2022-11-14 13:39:51 +01:00
For now, **Share₂Fedi** is vendor-locked to run on [Vercel](https://vercel.com/). To deploy it yourself, you can use the following button:
2022-02-02 15:32:36 +01:00
[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fkytta%2Ftoot)
2022-11-14 13:39:51 +01:00
<!-- TODO: update the selfhosting instructions -->
<!--
### Host it yourself
2022-11-14 13:39:51 +01:00
Self-hosting **Share₂Fedi** outside of Vercel requires some extra setup:
2021-11-04 18:20:24 +01:00
1. Make sure you have got Node.js v12 or later as well as pnpm installed
2. Build the static part of toot:
```sh
2021-11-04 18:20:24 +01:00
pnpm install # to install dependencies
pnpm run build # to build the website
```
3. Run the backend server for the form:
2022-03-18 12:16:21 +01:00
```sh
node api/toot.js
```
2022-03-18 12:39:31 +01:00
2022-03-18 12:16:21 +01:00
or if you want to run the process in the background:
```sh
pm2 start api/toot.js --watch --ignore-watch="node_modules"
```
2022-03-17 14:04:44 +01:00
> You can find a summary for pm2 at: https://pm2.keymetrics.io/docs/usage/quick-start/
4. Set up webserver
2022-03-17 14:04:44 +01:00
1. Apache
2022-03-17 14:04:44 +01:00
2022-03-18 12:17:16 +01:00
```apacheconf
2022-03-17 14:09:30 +01:00
DocumentRoot "path_to_toot/public"
ProxyPass "/api/toot" "http://localhost:8000/"
2022-03-17 14:04:44 +01:00
```
2. Nginx
2022-03-18 12:17:16 +01:00
```nginxconf
2022-03-17 14:09:30 +01:00
root path_to_toot/public;
2022-03-17 14:04:44 +01:00
index.html;
location /api/toot {
proxy_pass http://localhost:8000/;
}
```
3. Caddy
2022-05-17 15:30:54 +02:00
```caddy
root * path_to_toot/public;
try_files index.html
handle_path /api/toot {
reverse_proxy localhost:8000
}
```
2022-11-14 13:39:51 +01:00
-->
2021-01-30 15:12:32 +01:00
## See also
2022-02-12 12:30:49 +01:00
**[📯 Shareon](https://shareon.js.org)**
2022-11-14 13:39:51 +01:00
(lightweight, stylish, and ethical share buttons) uses **Share₂Fedi** under the hood!
## Licence
2022-11-14 13:39:51 +01:00
© 20202022 [Nikita Karamov]\
Licensed under the [GNU Affero General Public License, version 3][AGPL-3.0].
2022-11-14 13:39:51 +01:00
The repo banner includes Mastodons Full logo, licensed under [AGPL-3.0].
2020-09-23 18:39:38 +02:00
2022-03-17 14:04:44 +01:00
---
2021-08-29 14:10:23 +02:00
2023-03-16 10:41:55 +01:00
This project is hosted on GitHub: <https://github.com/kytta/share2fedi.git>
2021-08-29 14:10:23 +02:00
2022-11-14 13:39:51 +01:00
[AGPL-3.0]: https://spdx.org/licenses/AGPL-3.0-only.html
[Nikita Karamov]: https://www.kytta.dev
[Share₂Fedi]: https://s2f.kytta.dev/