Metadata-Version: 2.1
Name: troi
Version: 0.0.1rc0
Summary: An empathetic music recommendation system pipeline
Home-page: https://github.com/metabrainz/troi-recommendation-playground
Author: MetaBrainz Foundation
License: UNKNOWN
Description: # Introduction
        
        This project is aim to create a sandbox for developers to develop and
        experiment with music recommendation engines. To accomplish this goal,
        the MetaBrainz Foundation has created and hosted a number of data-sets
        that can be accessed as a part of this project.
        
        You can see some of the data sets that are hosted here:
        
          http://bono.metabrainz.org:8000
        
        The AcousticBrainz project hosts the Annoy indexes that allows
        you to find recordings that have similar characteristics given an initial recording.
        
        The ListenBrainz project offers a number of data sets:
        
        1. Collaborative filtered recordings that suggest what recordings a
        user should listen to based on their previous listening habits.
        2. User statistics that were derived from users recent listening
        habits.
        
        MusicBrainz provides:
        
        1. Related artists -- which artists are related to other artists.
        
        MessyBrainz provides:
        
        1. MessyBrainz -> MusicBrainz mapping for mapping listens with MSIDs
           to MusicBrainz MBIDs
        
        
        ## Installation
        
        
        **Linux and Mac**
        ```
        virtualenv -p python3 .ve
        source .ve/bin/activate
        pip3 install -r requirements.txt
        ```
        
        If you plan to do local development or run tests, you'll need to:
        
        ```
        pip3 install -e .
        ```
        
        **Windows**
        
        ```
        virtualenv -p python3 .ve
        .ve\Scripts\activate.bat
        pip3 install -r requirements.txt
        ```
        
        **Docker**
        
        On non Linux operating systems installing python modules can be a bit of a pain. For that a thin-shell docker
        container can be created. Note that docker is not required, but helpful if you're not on Linux.
        
        To use this container, you first need to build the container and start it:
        
        ```
        ./run-docker.sh build
        ./run-docker.sh up
        ```
        
        Now you can run any of the scripts via run-docker.sh:
        
        ```
        ./run-docker.sh recommend_recordings.py rob similar
        ```
        
        When you are done with the container, take it down with:
        
        ```
        ./run-docker.sh down
        ```
        
        To run tests:
        
        ```
        ./run-docker.sh test
        ```
        
        
        ## sample use
        
        **Linux**
        ```
        ./recommended_recordings.py <user name> <artist type [top/similar]>
        open OpenPost.html
        ```
        
        **Windows**
        ```
        ./recommended_recordings.py <user name> <artist type [top/similar]>
        OpenPost.html
        ```
        
        **Docker**
        
        
        ```
        docker build -t metabrainz/troi-hoster .
        docker run --rm -p 8000:80 --name troi-hoster metabrainz/troi-hoster
        ```
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.8
Description-Content-Type: text/markdown
