/patchesdb

Web interface for instrument sharing sites.

Primary LanguagePython

Website:    http://swami.resonance.org
Author:     Josh Green <josh@resonance.org>

Resonance Instrument Database (PatchesDB deployment site)
http://sounds.resonance.org

PatchesDB is a web based instrument database system used for distributing
and sharing instrument files.  The source code is distributed under the
GPL v2 license.

It is currently work in progress and really rough around the edges.
If you are really interested in installing your own instance of this
software, please contact the author or join the swami-devel mailing list.

The main reason for the current release is to solicit support from other
developers and users interested in contributing.  We encourage anyone
interested to contact us.


Features
--------
- Supports multiple instrument types (currently SoundFont, DLS and GigaSampler)
- User accounts and authoring profiles for publishing content
- Category browsing of instruments
- Licensing using Creative Commons licenses
- Automated importing/compression of contributed instruments using CRAM
- libInstPatch used to parse files and import instrument information
- Comment and rating system
- Powerful search features


Requirements
------------
mod_python
MySQL
libInstPatch
mysql-python


Required archive utilities
(for extracting user contributed content)
-----------------------------------------
bzip2
gzip
unzip
unarj
sfArk

Probably other things I'm forgetting..



File index
----------
include/                Included HTML/Email content for customization
images/                 All images and css
sql/                    SQL statements used for creating database tables
utils/                  Utilities run from command line
InstDB.py               General utility functions for SQL and HTML
PatchItem.py            Classes for SQL tables and HTML/SQL generation
Util.py                 Utility functions (delete patch, etc)
README                  This file, silly..
SqlHelpers.py           SQL helper classes (Select, Update, Insert, etc)
browse.py               Browse by category interface
config.py               Configuration file
config.py.example       Example config file
confirm.py              Email confirmations for registration and password reset
dbinit.py               One time database table creation script
dnld.py                 Patch file download interface
edit.py                 Edit instrument item interface
help.py                 Show help content interface
index.py                Main web site interface
item.py                 View instrument item interface
list.py                 List instrument items interface
patchesHandler.py       Main mod_python handler and user login smarts
phpbb.py                phpBB database integration functions
profile.py              Edit user profile interface
register.py             Register user account interface
resetpass.py            Reset password interface
search.py               Search interface
software.py             Software/credits page
submit.py               Content submission interface

utils
-----
patchesdb_taskd.py      Task Daemon - Handles imports, emails, etc.
patchesdb.py            Command line interface for PatchesDB management