Mobilizon reshare è una suite per condividere gli eventi Mobilizon su un'ampia selezione di piattaforme e permettere ad un'organizzazione di automatizzare la propria strategia di social media sugli eventi e la loro promozione. https://mobilizon.it
Go to file
Simone Robutti 44340fde8f
Introduced FastAPI and Postgres support (#173)
* added poc

* added check for sqlite db

* added events test

* draft docker-compose-test.yml

* improved docker-compose

* added support for postgres migrations

* add documentation

* added some qol to migrations

* added migration generation script

* removed settings.toml

* waiting for postgress in script

* commented script

* added sample web config

* fixed tests

* mock memory db

* reviewed PR
2022-10-14 22:11:27 +02:00
.github/workflows Run CI for pull requests. (#159) 2022-03-13 21:51:25 +01:00
api_documentation Feature/autogenerate api doc (#147) 2022-02-23 17:29:37 +01:00
doc Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
etc Add completion scripts. (#166) 2022-04-11 08:36:10 +02:00
mobilizon_reshare Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
sample_settings/docker_web Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
scripts Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
tests Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
.coveragerc add pytest coverage configuration 2021-11-27 18:47:43 +01:00
.envrc Use test script everywhere in the pipeline. (#130) 2022-01-24 22:34:52 +01:00
.gitignore Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
.pre-commit-config.yaml updated to python 3.9 2021-05-02 18:33:13 +02:00
.pre-commit-hooks.yaml added .gitignore and pre-commit 2021-04-25 11:10:47 +02:00
Dockerfile Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
LICENSE publishers: Add Zulip publisher. (#62) 2021-09-26 20:12:06 +02:00
README.md Move Guix packages to a channel. (#168) 2022-05-26 22:46:59 +02:00
README.rst added README for pre-commit 2021-04-25 11:13:59 +02:00
channels-lock.scm Update dependencies. (#170) 2022-07-26 22:23:47 +02:00
docker-compose-migration.yml Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
docker-compose-web.yml Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
docker-compose.yml Release v0.3.2. 2022-06-05 19:12:08 +02:00
guix.scm Update dependencies. (#170) 2022-07-26 22:23:47 +02:00
manifest.scm Update dependencies. (#170) 2022-07-26 22:23:47 +02:00
poetry.lock Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
pyproject.toml Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
settings.toml Introduced FastAPI and Postgres support (#173) 2022-10-14 22:11:27 +02:00
setup.cfg reworked validation 2021-05-02 10:37:46 +02:00

README.md

CI

The goal of mobilizon_reshare is to provide a suite to reshare Mobilizon events on a broad selection of platforms. This tool enables an organization to automate their social media strategy in regards to events and their promotion.

Platforms

mobilizon-reshare currently supports the following social platforms:

  • Facebook
  • Mastodon
  • Twitter
  • Telegram
  • Zulip

Usage

Scheduling and temporal logic

The tool is designed to work in combination with a scheduler that executes it at regular intervals. mobilizon_reshare allows fine-grained control over the logic to decide when to publish an event, with the minimization of human effort as its first priority.

Installation

mobilizon_reshare is distributed through Pypi and DockerHub. Use

$ pip install mobilizon-reshare

to install the tool in your system or virtualenv.

This should install the command mobilizon-reshare in your system. Use it to access the CLI and discover the available commands and their description.

Guix package

If you run Guix you can install mobilizon-reshare by adding our Guix channel to your .config/guix/channels.scm.

To run mobilizon-reshare from master you can run the following command from the root of the repository:

$ guix time-machine -C channels-lock.scm -- install -L . mobilizon-reshare.git

Run on your local system

Once you have installed mobilizon_reshare you can schedule the refresh from Mobilizon with your system's cron:

$ sudo crontab -l
*/15 * * * * mobilizon-reshare start

Deploying through Docker Compose

To run mobilizon_reshare in a production environment you can use the image published to DockerHub. We also provide an example docker-compose.yml.

Contributing

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.