Skip to content


Subversion checkout URL

You can clone with
Download ZIP
key-value database wrapper for SQL database (MySQL, SQLite)
CSS JavaScript Python Other
Failed to load latest commit information.
docs fix docs for cli
kvlite fix typo in collection.put()
tests fix issue with diff. serializers
.gitignore fix package preparation issues
Makefile fix automatic build
README.rst fix typo
requirements-dev.txt nose and coverage support added
requirements-mysql.txt split requirements
requirements-webui.txt add pyservice as required module for webui
requirements.txt split requirements
setup.cfg nose and coverage support added fix typo



kvlite is small open-source library for storing documents in SQL databases. Only three methods are needed to manipulate documents in database: get(), put(), delete(). At the moment supported MySQL and SQLite databases only. A document can be string, list/tuple or dictionary. Default serialization is based on cPickleSerializer methods but of course it is possible to define own serialization to store data in kvlite databases.

A document is a string, list/tuple, dictionary or any structure which can be serialized by cPickle, JSON or own serializer.

A collection is a group of documents stored in kvlite. It can be thought of as roughly the equivalent of a table in a relational database.

The format of uri (uniform resource identifier) for databases:

  • for mysql: 'mysql://username:password@hostname:port/database.collection_name'
  • for sqlite: 'sqlite://path-to-sqlite-file:collection_name' or 'sqlite://memory:collection_name'

In case when sqlite is in use two variants of collection is possible: store data in file or store data in memory.

There's two ways how to simplify access to kvlite's data: command line and web interface. Command line:

python -mkvlite.cli

Web interface:

python -mkvlite.webui


please check installation guideline <>


Developer interface



Something went wrong with that request. Please try again.