Skip to main content
Help us improve PyPI by participating in user testing. All experience levels needed!

gPrime webapp for genealogy

Project description

# gPrime

[![Build Status](https://travis-ci.org/GenealogyCollective/gprime.svg?branch=master)](https://travis-ci.org/GenealogyCollective/gprime) [![codecov](https://codecov.io/gh/GenealogyCollective/gprime/branch/master/graph/badge.svg)](https://codecov.io/gh/GenealogyCollective/gprime)

gPrime is a web-based application for genealogy. It uses the Gramps API for data, reports, import/export, etc.

* Designed for collaboration and large databases
* Multi-user, password protected
* Support IIIF Image Server API - http://iiif.io/api/image/2.1/

Additional Information
----------------------

* Blog - https://genealogycollective.wordpress.com/
* Mailing list - https://groups.google.com/forum/#!forum/genealogycollective

Requirements
------------

* Python3

Python package dependencies:

* tornado
* PIL
* simplejson
* passlib
* meta

Installation
-------------

On Windows and Mac, perhaps the easiest method of using gPrime is to start with an [Anaconda Python3 environment](https://www.continuum.io/downloads).

Install from github:

```
git clone --depth 1 https://github.com/GenealogyCollective/gprime
cd gprime
```
Once you have the source files, you can:

```
python3 setup.py build
python3 setup.py install
```

or simply:

```
pip install . --user -U
```

Released version installation (once released):

```
pip3 install gprime
```

Getting Started
---------------

To run gPrime, you need to do two things:

1. Create a site directory
2. Create at least one user and password

To create a site directory, provide a name for the tree, and give the site-dir directory:

```
python3 -m gprime.app --create="My Family Tree" --site-dir="family_tree"
```

Then, you need at least one user (as an example, we use "demo" as the username):

```
python3 -m gprime.app --site-dir="~/family_tree" --add-user=demo
Password: (does not show any characters)
```

Optionally, you may now want to also import some data (see below). The site-directory has a folder named "media" for all of the images and other documents. You can copy them here, or, in the previous example, make ~/family_tree/media link to your media folder.

Running
-------

You can run gprime directly from either the downloaded directory, or from the installed version.

Installed version:

```
python3 -m gprime.app --config-file="familytree.conf"
```

Downloaded versions:

```
export PYTHONPATH=/path/to/gprime
python3 -m gprime.app --config-file="familytree.cfg"
```

Where `familytree.cfg` contains options and values, such as:

```
port = 8001
site_dir = "My_Family_Tree_Folder"
```
or

```
site_dir = "/home/dblank/Desktop/Blank_Family/Blank Family/"
language = "fr"
```

Options:
------------

* --site-dir=PATH - The directory of the gPrime site directory (required)
* --config-file=FILE - A config file of these options (optional)
* --sitename="Site Name" - Name to use for the site (optional, "gPrime" is default)
* --language=LANG_CODE - Language code (eg, "fr") for language to show webpages ("en", English, is default)
* --create=TREE-NAME - Create a site directory (given by --site-dir) and family tree database with TREE-NAME
* --add-user=USERNAME - Add a username and password; prompts for password if --password not given
* --remove-user=USERNAME - Remove a user's username and password from "SITE-DIR/passwd" file
* --change-password=USERNAME - Change a user's password; prompts for password if --password not given
* --password=PASSWORD - Use with --change-password, or --add-user (this option is not recommended)
* --import-file=FILENAME - Import a Gramps-supported file type (.ged, .gramps, .json, etc.)
* --port=PORT-NUMBER - Port to listen on (8000 is default)
* --hostname=LOCALHOST - Hostname to listen on ("localhost" is default)
* --server=True|False - Start the server? Default is True
* --open-browser=True|False - open a web browser on startup?
* --debug=True|False - Use to see additional debugging information; useful for development (auto-restarts server)
* --xsrf=True/False - Use cross-site request forgery protection (recommended)
* --help - List additional options and details

Common variations
-----------------

```
python3 -m gprime.app --create="Smith Family" --site-dir="gprime_folder"

python3 -m gprime.app --site-dir="gprime_folder" --import-file="myinfo.gramps"

python3 -m gprime.app --site-dir="/path/to/gprime_folder"

python3 -m gprime.app --help
```

Project details


Release history Release notifications

History Node

1.0.9a2

History Node

1.0.9a0

History Node

1.0.8a0

History Node

1.0.6a0

This version
History Node

0.0.5

History Node

0.0.3

History Node

0.0.2

History Node

0.0.1

History Node

0.0.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
gprime-0.0.5-py2.py3-none-any.whl (10.6 MB) Copy SHA256 hash SHA256 Wheel 3.5 Dec 27, 2016
gprime-0.0.5.tar.gz (13.3 MB) Copy SHA256 hash SHA256 Source None Dec 27, 2016

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page