2021-12-03 17:57:06 +01:00
[![CI ](https://github.com/Tech-Workers-Coalition-Italia/mobilizon-reshare/actions/workflows/main.yml/badge.svg?branch=master )](https://github.com/Tech-Workers-Coalition-Italia/mobilizon-reshare/actions/workflows/main.yml)
2022-01-07 23:49:36 +01:00
The goal of `mobilizon_reshare` is to provide a suite to reshare Mobilizon events on a broad selection of platforms. This
2021-07-05 22:49:57 +02:00
tool enables an organization to automate their social media strategy in regards
to events and their promotion.
2022-02-05 18:46:02 +01:00
# Platforms
`mobilizon-reshare` currently supports the following social platforms:
- Facebook
- Mastodon
- Twitter
- Telegram
- Zulip
2021-07-05 22:49:57 +02:00
# Usage
## Scheduling and temporal logic
The tool is designed to work in combination with a scheduler that executes it at
2022-01-07 23:49:36 +01:00
regular intervals. `mobilizon_reshare` allows fine-grained control over the logic to decide when
2021-07-05 22:49:57 +02:00
to publish an event, with the minimization of human effort as its first priority.
2022-01-07 23:49:36 +01:00
## Installation
2021-07-05 22:49:57 +02:00
2022-02-21 15:26:03 +01:00
`mobilizon_reshare` is distributed through [Pypi ](https://pypi.org/project/mobilizon-reshare/ ) and [DockerHub ](https://hub.docker.com/r/fishinthecalculator/mobilizon-reshare ). Use
2021-07-05 22:49:57 +02:00
2022-01-07 23:49:36 +01:00
```shell
$ pip install mobilizon-reshare
```
2021-10-05 15:32:18 +02:00
2022-01-07 23:49:36 +01:00
to install the tool in your system or virtualenv.
2021-10-05 15:32:18 +02:00
2022-01-07 23:49:36 +01:00
This should install the command `mobilizon-reshare` in your system. Use it to access the CLI and discover the available
commands and their description.
2021-07-05 22:49:57 +02:00
2022-01-07 23:49:36 +01:00
### Guix package
2021-07-05 22:49:57 +02:00
2022-02-21 15:26:03 +01:00
If you run the Guix package manager you can install `mobilizon_reshare` from the root of the repository by running:
2021-07-05 22:49:57 +02:00
2022-01-07 23:49:36 +01:00
``` shell
$ guix install -L . mobilizon-reshare.git
```
2021-07-05 22:49:57 +02:00
2022-01-07 23:49:36 +01:00
To use the same dependencies used in CI env:
2021-04-25 11:13:15 +02:00
2022-01-07 23:49:36 +01:00
``` shell
$ guix time-machine -C channels-lock.scm -- install -L . mobilizon-reshare.git
```
2021-04-25 11:13:15 +02:00
2022-01-07 23:49:36 +01:00
## Run on your local system
2021-10-05 15:32:18 +02:00
2022-01-07 23:49:36 +01:00
Once you have installed `mobilizon_reshare` you can schedule the refresh from Mobilizon with your system's `cron` :
2021-10-05 15:32:18 +02:00
2022-01-07 23:49:36 +01:00
```bash
$ sudo crontab -l
*/15 * * * * mobilizon-reshare start
```
2021-10-05 15:32:18 +02:00
2022-01-07 23:49:36 +01:00
## Deploying through Docker Compose
2021-10-05 15:32:18 +02:00
2022-01-07 23:49:36 +01:00
To run `mobilizon_reshare` in a production environment you can use the image published to DockerHub. We also provide an example [`docker-compose.yml` ](https://github.com/Tech-Workers-Coalition-Italia/mobilizon-reshare/blob/master/docker-compose.yml ).
2021-10-05 15:32:18 +02:00
# Contributing
2022-01-07 23:49:36 +01:00
We welcome contributions from anybody. Currently our process is not structured but feel free to open or take issues through Github in case you want to help us. We have setup some instructions to setup a development environment [here ](https://github.com/Tech-Workers-Coalition-Italia/mobilizon-reshare/blob/master/doc/contributing.md ).