Skip to main content
Join the official 2020 Python Developers SurveyStart the survey!

Music database and web interface.

Project description

Build Status License Latest Version Supported Python versions Coverage Status Project Status

Music database and web interface.

Features

  • MishMash is a music database using Python and SQLAlchemy.
  • A command-line tool for building and managing a music database.
  • Web browser interface (using Pyramid) for browsing your music library.
  • Uses eyeD3 for reading MP3s and ID3 metadata.
  • Support and tested with Python 3.6 and Postgresql. SQLite is periodically tested with, but future features may not be supported (e.g. full text search).
  • Free software: GNU GPL v3.0 license

Getting Started

$ mishmash info
/\/\_____  .__       .__        _____                .__   /\/\
\(\(     \ |__| _____|  |__    /     \ _____    _____|  |__\(\(
  /  \ /  \|  |/  ___/  |  \  /  \ /  \\__  \  /  ___/  |  \
 /    Y    \  |\___ \|   Y  \/    Y    \/ __ \_\___ \|   Y  \
 \____|__  /__/____  >___|  /\____|__  (____  /____  >___|  /
         \/        \/     \/         \/     \/     \/     \/

Version              : 0.3
Database URL         : sqlite:////~/mishmash.db
Database version     : 0.3
Last sync            : Never
Configuration files  : <default>


=== Music library ===
0 music tracks
0 music artists
0 music albums
0 music tags

Surprise, you now have an empty sqlite database in the current directory. Let’s leave it here for now, it can be located elsewhere or use a different database using command line arguments and/or environment variables. Pretty useless without any music.:

$ mishmash sync ~/Music/Melvins
Syncing library 'Music': paths=['~/Music/Melvins/']
Syncing directory: ~/Music/Melvins/
Syncing directory: ~/Music/Melvins/1984 - Mangled Demos
Adding artist: Melvins
Syncing directory: ~/Music/Melvins/1986 - 10 Songs
Adding album: 10 Songs
Adding track: ~/Music/Melvins/1986 - 10 Songs/Melvins - 01 - Easy As It Was.mp3
Updating album: 10 Songs
...
== Library 'Music' sync'd [ 8.73s time (45.9 files/s) ] ==
401 files sync'd
401 tracks added
0 tracks modified
0 orphaned tracks deleted
0 orphaned artists deleted
0 orphaned albums deleted

Use your database as you wish. Browse it with mishmash web, or use one of its management commands.

Check out the Unsonic project for streaming capabilities.

See the changelog file for release history and changes.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for MishMash, version 0.3.1
Filename, size File type Python version Upload date Hashes
Filename, size MishMash-0.3.1-py3.8.egg (202.8 kB) File type Egg Python version 3.8 Upload date Hashes View
Filename, size MishMash-0.3.1-py3-none-any.whl (159.2 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size MishMash-0.3.1.tar.gz (179.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page