{"id":29026040,"url":"https://github.com/mtg/dunya-desktop","last_synced_at":"2025-06-26T05:08:15.489Z","repository":{"id":138310869,"uuid":"62576475","full_name":"MTG/dunya-desktop","owner":"MTG","description":"A modular, customizable and open-source desktop application for accessing and visualizing music data.","archived":false,"fork":false,"pushed_at":"2018-09-05T15:34:48.000Z","size":25101,"stargazers_count":89,"open_issues_count":31,"forks_count":17,"subscribers_count":15,"default_branch":"master","last_synced_at":"2025-03-26T06:34:58.432Z","etag":null,"topics":["audio-recordings","data-visualization","desktop-application","gui","music-scores","open-source","pyqt5","pyqtgraph","python","qt","qt5","visualization"],"latest_commit_sha":null,"homepage":"https://mtg.github.io/dunya-desktop/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MTG.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS"}},"created_at":"2016-07-04T16:51:10.000Z","updated_at":"2024-11-12T13:02:57.000Z","dependencies_parsed_at":"2024-01-20T17:19:34.615Z","dependency_job_id":null,"html_url":"https://github.com/MTG/dunya-desktop","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MTG/dunya-desktop","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fdunya-desktop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fdunya-desktop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fdunya-desktop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fdunya-desktop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MTG","download_url":"https://codeload.github.com/MTG/dunya-desktop/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fdunya-desktop/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262003993,"owners_count":23243358,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["audio-recordings","data-visualization","desktop-application","gui","music-scores","open-source","pyqt5","pyqtgraph","python","qt","qt5","visualization"],"created_at":"2025-06-26T05:08:14.663Z","updated_at":"2025-06-26T05:08:15.477Z","avatar_url":"https://github.com/MTG.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://github.com/MTG/dunya-desktop/blob/master/dunyadesktop_app/ui_files/icons/dunya-desktop-github.png\" width=\"200\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca target=\"_blank\" href='https://travis-ci.org/MTG/dunya-desktop'\u003e\n\t\t\u003cimg alt=\"travis\" src=\"https://travis-ci.org/MTG/dunya-desktop.svg?branch=master\"/\u003e\n\t\u003c/a\u003e\n\t\u003ca target=\"_blank\" href='https://codeclimate.com/github/MTG/dunya-desktop'\u003e\n\t\t\u003cimg alt=\"code-climate\" src=\"https://codeclimate.com/github/MTG/dunya-desktop/badges/gpa.svg\"/\u003e\n\t\u003c/a\u003e\n\t\u003ca target=\"_blank\" href='https://codecov.io/gh/MTG/dunya-desktop'\u003e\n\t\t\u003cimg alt=\"codecov\" src=\"https://codecov.io/gh/MTG/dunya-desktop/branch/master/graph/badge.svg\"/\u003e\n\t\u003c/a\u003e\n\t\u003ca target=\"_blank\" href='https://www.gnu.org/licenses/agpl-3.0.html'\u003e\n\t\t\u003cimg alt=\"AGPL\" src=\"https://img.shields.io/badge/License-AGPL%20v3-blue.svg\"/\u003e\n\t\u003c/a\u003e\n\t\u003ca target=\"_blank\" href='https://creativecommons.org/licenses/by-nc/4.0/legalcode'\u003e\n\t\t\u003cimg alt=\"CCBYNC\" src=\"https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg\"/\u003e\n\t\u003c/a\u003e\n\u003c/p\u003e\n\n**Dunya-desktop** is a desktop application, developed for accessing  and visualizing music data such as music scores, audio recordings, extracted features and analysis  results. It is a modular and extendable desktop application that the users can customise according to their needs.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://github.com/MTG/dunya-desktop/blob/master/resources/dunya-desktop-demo.gif\"\u003e\n\u003c/p\u003e\n\nDunya-desktop mainly uses [PyQt5](https://www.riverbankcomputing.com/software/pyqt/download5), Python bindings for [Qt5](https://www.qt.io/developers/) application framework, for the user interface design and [pycompmusic](https://github.com/MTG/pycompmusic) module for reaching the backend of the [Dunya](http://dunya.compmusic.upf.edu).\n\nRunning\n=======\n\nFirst, ensure that you have installed the relevant dependencies (see the\nInstallation section below).\n\nTo configure Dunya-desktop, copy the file `dunyadesktop_app/cultures/config.cfg.in` to `dunyadesktop_app/cultures/config.cfg`, for example:\n\n    cp dunyadesktop_app/cultures/config.cfg.in dunyadesktop_app/cultures/config.cfg\n\nEdit this file and replace the value `DUNYA_TOKEN` with your Dunya access token.\nYou can retrieve this token after signing in to the Dunya website and visiting\nhttps://dunya.compmusic.upf.edu/user/profile/\n\nRun Dunya-desktop by executing in the main directory:\n\n    ./dunya-desktop\n\n\nInstallation\n============\nThe code is compatible with Python 2.7+ and Python 3. We highly recommend you\nto use the code with Python 3 and with a virtual environment.\n\n\nInstalling dependencies on Mac OS\n---------------------------------\n\nThe given installation steps were tried on OS X El Capitan (v10.11.06) and OS X\nEl Sierra (v10.12.1).\n\n* Install Xcode (can be installed via [Mac App Store](https://itunes.apple.com/en/app/xcode/id497799835?mt=12)).\nThen install command-line tools:\n\n        xcode-select --install\n        sudo xcodebuild -license\n\n    After the installation, make sure that you have agreed Apple's licence agreement.\n\n* Install [Homebrew package manager](http://brew.sh/):\n\n        /usr/bin/ruby -e \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)\"\n\n\n### On Mac OS for Python 3.6\n\n* Install Python 3.6+, Qt 5.7 and wget with Homebrew:\n\n        brew install python3 qt@5.7 ffmpeg wget\n\n* Create a virtual environment (virtualenv) and install requirements.\n\n        pyvenv env\n        source env/bin/activate\n\n* Go to directory of where dunya-desktop is downloaded.\n\n    __IMPORTANT:__ Don't forget to change 'path/to/dunya-desktop' with the actual directory name.\n\n        cd path/to/dunya-desktop\n\n* Finally, install the package requirements.\n\n        pip3 install -r requirements\n        pip3 install PyQt5\n\n\n### On Mac OS for Python 2.7\n\n* Install Python 2.x, Qt 5.7 and wget with Homebrew:\n\n        brew install python qt@5.7 ffmpeg wget\n\n* Download PyQt 5.7.1 and SIP source packages:\n\n        wget https://sourceforge.net/projects/pyqt/files/sip/sip-4.19/sip-4.19.tar.gz\n        wget https://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.7.1/PyQt5_gpl-5.7.1.tar.gz\n\n* Untar and compile PyQt 5.7.1 and SIP:\n\n        # compile sip\n        tar -xvf sip-4.19.tar.gz\n        cd sip-4.19\n        python configure.py -d /usr/local/lib/python2.7/site-packages/\n        make\n        sudo make install\n\n        # compile PyQt5\n        cd ..\n        tar -xvf PyQt5_gpl-5.7.1.tar.gz\n        cd PyQt5_gpl-5.7.1\n        python configure.py --confirm-license -d /usr/local/lib/python2.7/site-packages/ --qmake=/usr/local/Cellar/qt\\@5.7/5.7.1/bin/qmake --sip=../sip-4.19/sipgen/sip --sip-incdir=../sip-4.19/siplib\n        make\n        sudo make install\n\n* Create a virtual environment (virtualenv) and install requirements.\n\n        pip install virtualenv\n        virtualenv --system-site-packages env\n        source env/bin/activate\n\n* Go to directory of where dunya-desktop is downloaded.\n\n    __IMPORTANT:__ Don't forget to change 'path/to/dunya-desktop' with the actual directory name.\n\n        cd path/to/dunya-desktop\n\n* Finally, install the package requirements.\n\n        pip install -r requirements\n\n\nInstalling dependencies on Ubuntu 16.04\n---------------------------------------\n\nThe given installation steps were tried on Ubuntu 16.04.02 LTS (xenial).\n\n* Install Qt 5.x and ffmpeg:\n\n        sudo add-apt-repository --yes ppa:ubuntu-sdk-team/ppa\n        sudo apt-get update -qq\n        sudo apt-get install -qq qtdeclarative5-dev libqt5svg5-dev qtmultimedia5-dev build-essential\n        sudo apt-get install -qq ffmpeg\n        export QMAKE=/usr/lib/x86_64-linux-gnu/qt5/bin/qmake\n\n\n### On Ubuntu for Python 3.6\n\n* Install Python 3.6\n\n        sudo apt-get install -qq python3-dev\n\n* Create a virtual environment (virtualenv) and install requirements.\n\n        pyvenv env\n        source env/bin/activate\n\n* Go to directory of where dunya-desktop is downloaded.\n\n    __IMPORTANT:__ Don't forget to change 'path/to/dunya-desktop' with the actual directory name.\n\n        cd path/to/dunya-desktop\n\n* Finally, install the package requirements.\n\n        pip3 install -r requirements\n        pip3 install PyQt5\n\n\n### On Ubuntu for Python 2.7\n\n* Install Python 2.x\n\n        sudo apt-get install -qq python-dev\n\n* Download PyQt 5.8 and SIP source packages:\n\n        wget https://sourceforge.net/projects/pyqt/files/sip/sip-4.19.1/sip-4.19.1.tar.gz\n        wget https://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.8/PyQt5_gpl-5.8.tar.gz\n\n* Untar and compile PyQt 5.8 and SIP:\n\n        # compile sip\n        tar -xzf sip-4.19.1.tar.gz\n        cd sip-4.19.1/\n        python configure.py\n        make\n        sudo make install\n        cd ..\n\n        # compile PyQt5\n        tar -xzf PyQt5_gpl-5.8.tar.gz\n        cd PyQt5_gpl-5.8/\n        python configure.py --confirm-license --qmake=/usr/lib/x86_64-linux-gnu/qt5/bin/qmake\n        make\n        sudo make install\n\n* Create a virtual environment (virtualenv) and install requirements.\n\n        pip install virtualenv\n        virtualenv --system-site-packages env\n        source env/bin/activate\n\n* Go to directory of where dunya-desktop is downloaded.\n\n    __IMPORTANT:__ Don't forget to change 'path/to/dunya-desktop' with the actual directory name.\n\n        cd path/to/dunya-desktop\n\n* Finally, install the package requirements.\n\n        pip install -r requirements\n\nLicense\n=======\nThe source code hosted in this repository is licenced under the terms of the GNU Affero General Public License (v3 or later). Any data (the audio recordings, music scores, features, figures, outputs etc.) are licenced under Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.\n\nContact\n=========\nHasan Sercan Atlı\thsercanatli\tAT\tgmail\tDOT\tcom\n\nAcknowledgements\n================\nDunya-desktop is supported by the European Research Council under the European Union’s Seventh Framework Program, as part of the CompMusic project (ERC grant agreement 267583).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtg%2Fdunya-desktop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmtg%2Fdunya-desktop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtg%2Fdunya-desktop/lists"}