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
magowiz 8ff6555c60
Feature/autogenerate api doc (#147)
* initial commit with generate-doc.sh script and generated documentation, added pdoc3 dependency

* fixed import errors due to missing SECRETS_FOR_DYNACONF environment value, updated doc, force/overwrite if documentation exists

* moved pdoc3 dependency from dependencies to dev-dependencies

* removed generated doc

* add api-documentation (pdoc3 target directory) to .gitignore

* switch to sphinx which supports better typehints notation

* remove module path prefix from methods name

* add support for typehints

* remove autogenerated files

* ignore autogenerated files

* fixed typo in .gitignore

* added empty _static folder to avoid warning on build

* initial commit with generate-doc.sh script and generated documentation, added pdoc3 dependency

* fixed import errors due to missing SECRETS_FOR_DYNACONF environment value, updated doc, force/overwrite if documentation exists

* moved pdoc3 dependency from dependencies to dev-dependencies

* removed generated doc

* switch to sphinx which supports better typehints notation

* remove autogenerated files

* remove gui browser documentation open, use /bin/sh instead of /bin/bash

* remove windows/dos documentation generation make, drop windows/dos support

Co-authored-by: Giacomo Leidi <goodoldpaul@autistici.org>
2022-02-23 17:29:37 +01:00
.github/workflows Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
api_documentation Feature/autogenerate api doc (#147) 2022-02-23 17:29:37 +01:00
doc Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
docker Enforce the same dependencies in dev and prod. (#141) 2022-02-16 12:23:31 +01:00
mobilizon_reshare Pave the way for using only EventPublications outside of storage module. (#149) 2022-02-23 17:26:13 +01:00
scripts Feature/autogenerate api doc (#147) 2022-02-23 17:29:37 +01:00
tests Pave the way for using only EventPublications outside of storage module. (#149) 2022-02-23 17:26:13 +01: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 Feature/autogenerate api doc (#147) 2022-02-23 17:29:37 +01: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
LICENSE publishers: Add Zulip publisher. (#62) 2021-09-26 20:12:06 +02:00
README.md README.md: Add Pypi link. (#148) 2022-02-21 15:26:03 +01:00
README.rst added README for pre-commit 2021-04-25 11:13:59 +02:00
channels-lock.scm Enforce the same dependencies in dev and prod. (#141) 2022-02-16 12:23:31 +01:00
docker-compose.yml scheduler.py: Fix intervals. (#146) 2022-02-20 12:45:50 +01:00
guix.scm Docker image (#84) 2021-10-31 01:55:25 +02:00
manifest.scm Python scheduler docker image (#134) 2022-02-05 18:46:02 +01:00
poetry.lock Feature/autogenerate api doc (#147) 2022-02-23 17:29:37 +01:00
pyproject.toml Feature/autogenerate api doc (#147) 2022-02-23 17:29:37 +01: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 the Guix package manager you can install mobilizon_reshare from the root of the repository by running:

$ guix install -L . mobilizon-reshare.git

To use the same dependencies used in CI env:

$ 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.