Skip to main content

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 fast processing of large databases
* Multi-user, password protected
* Supports IIIF Image Server API - http://iiif.io/api/image/2.1/
* Uses a powerful search interface
* 100% compatible with [Gramps](https://gramps-project.org) data model

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

* Blog - https://genealogycollective.wordpress.com/
* Mailing list - https://groups.google.com/forum/#!forum/genealogycollective
* Documentation - https://github.com/GenealogyCollective/gprime/tree/master/docs#gprime-documentation
* Demo - http://demo.gprime.info (username: demo, password: demo)

Get Involved!
-------------

gPrime is looking for help on many different topics:

* programming - in Python and Javascript
* translation into other languages - see demo for what exists
* CSS and HTML design - gPrime uses both

gPrime is also looking for some advsiors! If you would like to help developed focused goals for the future development of gPrime, please let us know:

[I'm interested in Advising gPrime](https://docs.google.com/forms/d/e/1FAIpQLSfhxC0mnVtweau0snweFW5-2Td8I9Wj-sCXpokeVT7EBLAypw/viewform)

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).

Once you have a Python environment, install gPrime with:

```
pip install gprime --user -U
```

(--user installs into user space, not global space. -U updates gPrime and dependencies. Leave off --user and use Adminstrative install method (sudo) to install for everyone.)


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

**In all of the following commands, --site-dir is always required.**

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:

```
gprime --site-dir="family_tree" --create="My Family Tree"
```

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

```
gprime --site-dir="family_tree" --add-user=demo
Password: (does not show any characters as you type)
```

Importing Data
--------------

Optionally, you may now want to also import some data (gPrime supports Gramps XML, GEDCOM, and JSON import formats):

```
gprime --site-dir="family_tree" --import-file="FamilyTree.gramps"
```

The site-directory has a folder named "media" for all of the images and other documents. On --file-import, gPrime will atempt to import any identified media by copying them into this media folder. If you want to prevent the copying, use --import-media=False. You can alternatively manually copy files into the media folder, or, in the previous example, make family_tree/media link to your media folder.

Running
-------

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

Installed version:

```
gprime --site-dir="family_tree"
```

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

* --site-dir=/PATH/TO/FOLDER - The directory of the gPrime site directory (required)
* --sitename="Site Name" - Name to use for the site (optional, "gPrime" 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.)
* --import-media=True/False - Attempt to import media with Gramps XML or JSON, used with --import-file
* --config-file=FILE - A config file of these options (optional); alternatively, will use SITE-DIR/config.cfg if one
* --port=PORT-NUMBER - Port to listen on (8000 is default)
* --hostname=LOCALHOST - Hostname to listen on ("localhost" is default)
* --prefix=/PATH - a URL prefix (e.g., /PATH/person/ )
* --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 on code change)
* --xsrf=True/False - Use cross-site request forgery protection (recommended)
* --help - List additional options and details

Rather than having to list all of these options on a command-line, you can put them in the SITE-DIR/config.cfg file:

```
### This is the contents of file SITE-DIR/config.cfg.
### Note that hyphens in option names are converted to underscores.

port = 8001
site_dir = "My_Family_Tree_Folder"
prefix = "/jones"
sitename = "Jerry's"
```

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

```
gprime --help
gprime --site-dir="family_tree_folder" --create="Smith Family"
gprime --site-dir="family_tree_folder" --import-file="myinfo.gramps"
gprime --site-dir="family_tree_folder" --add-user=demo --password=demo
gprime --site-dir="family_tree_folder"
```

Project details


Download files

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

Source Distribution

gprime-1.0.9a2.tar.gz (13.3 MB view details)

Uploaded Source

Built Distribution

gprime-1.0.9a2-py2.py3-none-any.whl (10.7 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file gprime-1.0.9a2.tar.gz.

File metadata

  • Download URL: gprime-1.0.9a2.tar.gz
  • Upload date:
  • Size: 13.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for gprime-1.0.9a2.tar.gz
Algorithm Hash digest
SHA256 ceac14397991870c9ac433ae90bc9f575e71d3d1056e3d3dc7af50f51e8daa60
MD5 e1779dc0563be7ddfb86f167bee1106c
BLAKE2b-256 82843f4139ea5bce91a5e70c8c804a6ec41c1e309a0a6b8e4089f793c32f070b

See more details on using hashes here.

File details

Details for the file gprime-1.0.9a2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for gprime-1.0.9a2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 039ddeca4b07b9f194f3193d305a11a618e0c87ce70e845a8797f36da59665b5
MD5 bc6c1fe28494290a9faf44f4a2899cc3
BLAKE2b-256 7cfc30abe6d468e1968caa71d97dbbd50ec1f51c4345fd32afbd52b943fee2d8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page