You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jim Paris 39e66fe38c Test exclusive_lock better 2 years ago
docs Consistently use bytes everywhere for stream data 2 years ago
extras Run 2to3 automatic fixes over entire tree 2 years ago
nilmdb Use os.replace instead of os.remove; remove a "no cover" 2 years ago
tests Test exclusive_lock better 2 years ago
.coveragerc Remove old files from .coveragerc exclusions 2 years ago
.gitattributes Incorporate versioneer for versioning 9 years ago
.gitignore Ignore built modules 9 years ago
.pylintrc Clean up some pylint warnings and potential errors 9 years ago
Makefile Clean up __pycache__ on "make clean" 2 years ago
README.txt Fix install instructions for python3 2 years ago
setup.cfg Update coverage config 2 years ago Remove references to local copy of datetime_tz 2 years ago Update build system for Python 3 2 years ago


nilmdb: Non-Intrusive Load Monitor Database
by Jim Paris <>


# Runtime and build environments
sudo apt install python3.7 python3.7-dev python3-pip

# Base NilmDB dependencies
sudo pip3 install cherrypy decorator simplejson requests
sudo pip3 install python-dateutil tz progressbar psutil
sudo pip3 install python-datetime-tz

# Other dependencies (required by some modules)
sudo pip3 install numpy

# Tools for running tests
sudo pip3 install nose coverage

python3 nosetests


sudo python3 install


nilmdb-server --help
nilmdb-fsck --help
nilmtool --help

See docs/ for info on setting up a WSGI application in Apache.