nicfit / MishMash

Music database, etc.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MishMash

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.

About

Music database, etc.

License:GNU General Public License v3.0


Languages

Language:Python 93.1%Language:Makefile 5.3%Language:Dockerfile 0.6%Language:Mako 0.3%Language:JavaScript 0.3%Language:CSS 0.2%Language:Shell 0.2%