A radio automation based on MPD.

boyska 867812fba7 canonicalize ids here and there 2 gadi atpakaļ
doc 5976c3fe3d new apt dependencies to compile more stuff 3 gadi atpakaļ
larigira 867812fba7 canonicalize ids here and there 2 gadi atpakaļ
.drone.yml cda36fc1b0 drone matrix 6 gadi atpakaļ
.flake8 d19b18eb3c formattazione con black 5 gadi atpakaļ
.gitignore a7d7f368b9 ignore py3 cache files 8 gadi atpakaļ
.pylintrc 78dc70d2a6 pylintrc added 7 gadi atpakaļ
.readthedocs.yml 1f9f103876 support .readthedocs.yml configuration 5 gadi atpakaļ
.travis.yml f027517c49 drone CI badge in readme 6 gadi atpakaļ
HISTORY.txt 97b38e1a49 version bump to 1.3.0 5 gadi atpakaļ
ISSUE_TEMPLATE.md 3d541993c7 issue template 3 gadi atpakaļ
MANIFEST.in a8b9ba275a serve jqueryui static files 8 gadi atpakaļ
README.rst f027517c49 drone CI badge in readme 6 gadi atpakaļ
RELEASE.rst 318cd3391f info on how to release 5 gadi atpakaļ
conftest.py 2bc118bfd9 http testing 10 gadi atpakaļ
publish-release 318cd3391f info on how to release 5 gadi atpakaļ
setup.py d4852d5df4 Improve installation and quickstart docs 3 gadi atpakaļ

README.rst

=========
larigira
=========

.. image:: https://travis-ci.org/boyska/larigira.svg?branch=master
:target: https://travis-ci.org/boyska/larigira
:alt: Build status

.. image:: https://drone.degenerazione.xyz/api/badges/boyska/larigira/status.svg?branch=master
:alt: Build status on self-managed CI server

.. image:: https://img.shields.io/pypi/v/larigira.svg
:target: https://pypi.python.org/pypi/larigira
:alt: Latest Version


About
-------

A radio automation based on MPD. Larigira will sit right to your mpd player and
will keep your playlist never empty. It will also manage a db of "events", so
that you can schedule shows, play jingles every X minutes, etc.

Software stack
---------------

* MPD, of course
* python3.5 or greater

- gevent as an async framework
- flask to provide web interface and rpc
* tinydb as an embedded database

Why? (aka design features)
--------------------------

Reinventing a player is a bad idea. MPD provides an eccellent base.

Separating the player from "action loops" makes it easy to work on this. For
example, you can stop larigira for some minutes, and the audio will keep
playing. It also means that you can easily replace specific parts of your radio
automation.

The "continous playing" part is separated from the "events" part. ``larigira``
can be run to perform one, the other, or both.

The "audio generation" part can be used separately by any script that you like.

Installation
-------------

Just run ``python setup.py install``. It will, of course, also work in a
virtualenv. Apart from running an MPD server, there is no additional setup.

You will find some command in your PATH now; they all begin with ``larigira``,
so the usual ```` is a good way to explore them ;)

The name
---------

larigira mai la sbaglia...

-- https://www.youtube.com/watch?v=K9XJkOSSdEA