Metadata-Version: 2.1
Name: escarpolette
Version: 0.7.2
Summary: Manage your musical playlist with your friends without starting a war.
Home-page: https://github.com/erdnaxeli/escarpolette
License: GPL-3.0
Author: Alexandre Morignot
Author-email: erdnaxeli@cervoi.se
Requires-Python: >=3.7,<4.0
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Requires-Dist: click (>=7.0,<8.0)
Requires-Dist: fastapi (>=0.47.1,<0.48.0)
Requires-Dist: importlib_metadata (>=1.5.0,<2.0.0)
Requires-Dist: pydantic (>=1.3,<2.0)
Requires-Dist: pyjwt (>=1.7.1,<2.0.0)
Requires-Dist: sqlalchemy (>=1.2,<2.0)
Requires-Dist: uvicorn (>=0.11.2,<0.12.0)
Requires-Dist: xdg (>=4.0,<5.0)
Requires-Dist: youtube-dl
Project-URL: Repository, https://github.com/erdnaxeli/escarpolette.git
Description-Content-Type: text/markdown

# Escarpolette

This project provides a server and clients to manage your music playlist when you are hosting a party.

It supports many sites thanks to the awesome project [youtube-dl](https://rg3.github.io/youtube-dl/).

## Features

Server:
* add items (and play them!)
* get playlist's items
* runs on Android! (see [instructions](#Android))

Web client:
* there is currently no web client :(

## Dependencies

* Python 3.7
* the player [mpv](https://mpv.io)

They should be available for most of the plateforms.


## Installation

```Shell
pip install escarpolette
```

### Android

You will need [Termux](https://termux.com/).
Then inside Termux you can install it with:

```Shell
# dependencies
pkg install python python-dev clang mpv
# escarpolette
pip install escarpolette
```

Note that while the project can run without wake-lock, acquiring it improve the performance (with a battery trade off).

## Usage

```Shell
escarpolette [--config config.cfg] [--host host] [--port port] [--help]
```

The default configuration should be good for all the usages.

## Dev

You will need [Poetry](https://poetry.eustace.io/) to manage the dependencies.

Clone the repo and then type `poetry install`.
You can run the app with `poetry run python -m escarpolette`.

## Todo

* server
    * votes
    * bonjour / mDNS
    * prevent adding youtube / soundcloud playlists
    * restrictions by users
    * configuration of those restrictions by an admin
* web client
    * show playing status
    * votes
    * configure restrictions:
        * max video added per user
        * max video length
    * admin access:
        * configure restrictions
        * no restrictions for him
        * force video order

Maybe one day?
* android client
* iOS client

