Skip to content
GeneWeb is a genealogy software with a web interface created by Daniel de Rauglaudre. It can be installed locally on a stand-alone machine and on any web server.
OCaml HTML JavaScript CSS Makefile Shell
Branch: master
Clone or download
Pull request Compare This branch is 13 commits behind geneweb:master.
Type Name Latest commit message Commit time
Failed to load latest commit information.
benchmark Place module: added split_suburb,only_suburb,without_suburb,compare_p… Oct 11, 2019
bin/distrib Re-imported from old geneweb Sep 6, 2019
etc Protect -bash in gwd and gwsetup with quotes (allow spaces in filenam… Oct 18, 2018
hd Correct dag.txt for image=off behaviour Sep 23, 2019
lib Update: dates: consider 0 as empty Oct 26, 2019
man Fix gwc manpage Nov 1, 2016
test Place module: added split_suburb,only_suburb,without_suburb,compare_p… Oct 11, 2019
.gitignore Moved to Jul 10, 2019
.travis.yml TraviCI: opam: removed piqi pin Oct 14, 2019
CHANGES Fix some typos found by codespell Dec 24, 2015
ICHANGES Fix some typos found by codespell Dec 24, 2015
INSTALL Make install for macOS, icons folder, icns files, updates in INSTALL,… Jul 25, 2016
LICENSE remplacement des alt par title, correction bug date, suppression redi… Oct 3, 2011
Makefile Used a DUNE_DIR_EXCLUDE variable to exclude unecessary directories (e… Jul 24, 2019 README: update appveyor badge (OCaml 4.09) Oct 10, 2019
appveyor.yml Update AppVeyor to Ocaml 4.09, everything x64 Oct 3, 2019
configure Used a DUNE_DIR_EXCLUDE variable to exclude unecessary directories (e… Jul 24, 2019
dune Enabled more warnings and fixed a lot of it. Sep 13, 2018
dune-project Update to dune 1.10 Jul 8, 2019
dune-workspace Improved build, added opam file, fixed travis build. Sep 13, 2018
geneweb.opam opam file: do not use --api by default Jul 24, 2019


GeneWeb is an open source genealogy software written in OCaml. It comes with a Web interface and can be used off-line or as a Web service.

Build status

Linux macOS Windows (mingw64)
OCaml 4.05 l405 m405 -
OCaml 4.06 l406 m406 -
OCaml 4.07 l407 m407 -
OCaml 4.08 l408 m408 -
OCaml 4.09 l409 m409 win-409


The documentation is available online:


Using opam:

opam pin add geneweb -k git --no-action
opam depext geneweb
opam install geneweb

Getting involved

We encourage you to participate in this open source project. We love pull requests, bugs reports, ideas...

Contributor guidelines

Install dependencies

$ opam install camlp5 cppo dune markup ounit

Build instructions

  1. Run the configuration script
    $ ./configure
  2. Build the distibution
    $ make clean distrib

Building the API

The API uses the Google Protocol Buffer to exchange information encoded as pb, json, xml.

Install protoc, and these extra dependencies:

$ opam install ocurl piqi piqilib redis redis-sync yojson

Then, tell the configure script to enable API.

$ ./configure --api

Coding style

  • Try to keep the same coding style as the existing one.
  • New code should not contain any trailing whitespace.
  • Each pull request should have a single clear purpose. If it containes multiple unrelated changes, those changes should be split into separate pull requests.
  • If the PR needs to be update, push force.
  • When submitting a new feature/function, write documentation and tests if it is relevant.


All files marked in this distribution are Copyright (c) 1998-2016 INRIA (Institut National de Recherche en Informatique et Automatique) and distributed under the GNU GENERAL PUBLIC LICENSE. See LICENSE file for details.

You can’t perform that action at this time.