Welcome to mincePy’s documentation!

Coveralls Travis CI Latest Version https://img.shields.io/pypi/wheel/mincepy.svg https://img.shields.io/pypi/pyversions/mincepy.svg https://img.shields.io/pypi/l/mincepy.svg

mincePy: move the database to one side and let your objects take centre stage.

MincePy is an object-relational mapper (ORM) using the data mapper pattern designed specifically for computational and data science. What does this all mean?? It’s simple really, it means you can store, find, get the history of and annotate any of your python objects either in your local database or one shared with your collaborators.

Features

  • Ability to work locally or collaboratively on a shared database.
  • Automatic tracking of in-memory objects.
  • Easy addition of new python types.
  • Object version control.
  • Live references between objects.
  • Optimistic locking.
  • Python 3.5+ compatible.
  • A responsive, Qt, gui.

Installation

Installation with pip:

pip install mincepy

Installation from git:

# via pip
pip install https://github.com/muhrin/mincepy/archive/master.zip

# manually
git clone https://github.com/muhrin/mincepy.git
cd mincepy
python setup.py install

Next you’ll need MongoDB, in Ubuntu it’s as simple as:

apt install mongodb

see here, for other platforms.

Development

Clone the project:

git clone https://github.com/muhrin/mincepy.git
cd mincepy

Create a new virtualenv for mincePy:

virtualenv -p python3 mincepy

Install all requirements for mincePy:

env/bin/pip install -e '.[dev]'

Versioning

This software follows Semantic Versioning