semvec/pypi-packages huggingface dataset:
audiorepr 0.0.2
Audiolize your data
License: MIT

# audiorepr

A python package to represent data using musical notes.

[![Documentation Status](https://readthedocs.org/projects/audiorepr/badge/?version=latest)](https://audiorepr.readthedocs.io/en/latest/?badge=latest)


## Installation

```
pip install audiorepr
```

## Examples

Demo in `examples/covid19.py`.

```python
import pandas as pd
from audiorepr import audiolize

ecdc = "https://gist.githubusercontent.com/emptymalei/90869e811b4aa118a7d28a5944587a64/raw/1534670c8a3859ab3a6ae8e9ead6795248a3e664/ecdc%2520covid%252019%2520data"

df = pd.read_csv(ecdc)

audiolize.audiolizer(df, target="ecdc-covid19-by-date.midi", pitch_columns=["DE", "AT", "FR"])
```

- By default, we use a min-max mapper to map the data onto midi notes 16 to 96. You can easily write your own mapper or simply map your own data on to the range [0, 126].
- The specified pandas dataframe columns will be mapped onto different tracks.
- `audiolize.audiolizer` also accepts numpy array or list as data input.


Play the output midi file using the player of your choice.
- [timidity](https://github.com/feross/timidity)(`Mac`, `Win`, `Linux`): a midi play in your terminal.
- [GarageBand]()(`Mac`): free software by Apple. GarageBand allows you to change tune the audio by changing the volumes, instruments, tempo, etc.

## Documentation

[WIP]

## Development

1. Create a new environment: `conda create -n audiorepr python=3.7 pip`
2. Instal requirements: `pip install -r requirements`


## Generate Documentation

The documentation is generated through sphinx.

1. `cd docs`
2. `make html`

The generated documentation is located inside `build/html`.

To update the documentation, update the `.rst` files in the `source` folder.


### Publishing

Publishing to [PYPI service]():

1. Run `python setup.py sdist bdist_wheel`
2. Test upload: `python -m twine upload --repository testpypi dist/*`
2. Upload:
   ```
   python -m twine upload dist/*
   ```
fastapi-slack 0.2.3
Slack extension for FastAPI.
License: MIT
Requires Python: >=3.9,<4.0
Keywords: FastAPI,Slack

# fastapi-slack

[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-brightgreen.svg)](https://conventionalcommits.org)
[![CircleCI](https://circleci.com/gh/dialoguemd/fastapi-slack.svg?style=svg&circle-token=d5088d3188d29980a98d21136927b0693ea7d90e)](https://circleci.com/gh/dialoguemd/fastapi-slack)
[![codecov](https://codecov.io/gh/dialoguemd/fastapi-slack/branch/master/graph/badge.svg?token=CVU9WOYOEG)](https://codecov.io/gh/dialoguemd/fastapi-slack)

Slack extension for FastAPI.

## Configuration - Environment Variables

### `slack_access_token`

Bot User OAuth Access Token as defined in OAuth & Permissions menu of the slack app.

### `slack_signing_secret`

App signing secret as shown in Basic Information menu of the slack app in the App
Credentials section.

## Setup

* Include fastapi-slack router:

```python
import fastapi_slack
from fastapi import FastAPI


app = FastAPI()
app.include_router(fastapi_slack.router)
```

## [Slash Commands]

* Depending on `fastapi_slack.SlashCommand` validates Slack request signature and
  extracts the info needed to process it:

```python
from fastapi import Depends, FastAPI
from fastapi_slack import SlashCommand, router

app = FastAPI()
app.include_router(router)


@app.post("/slash-commands")
def process_commands(slash_command: SlashCommand = Depends()):
    pass
```


[Slash Commands]: https://api.slack.com/interactivity/slash-commands