Giter VIP home page Giter VIP logo

gedcomx-java's Introduction

Welcome

This project hosts the Java implementation of the GEDCOM X project and serves as the reference implementation of GEDCOM X. The modules of this project each address specific aspects of the GEDCOM X Specification Set, including:

Build Status

Reading and Writing XML and JSON

The gedcomx-model subproject provides Java classes that correspond to the data types defined by the GEDCOM X Conceptual Model. These classes are instrumented such that they can be used to read and write both XML and JSON.

For more information about reading and writing GEDCOM X XML and JSON, see the gedcomx-model module.

GEDCOM X Web Services

The gedcomx-rs-client module provides support for reading from and writing to a GEDCOM X Web service API that conforms to the GEDCOM X RS Specification.

GEDCOM X File Format

The gedcomx-fileformat subproject provides support for reading and writing the GEDCOM X File Format.

GEDCOM X Extensions

The extensions module provides a place for extensions to GEDCOM X. FamilySearch has defined a set of extensions to the GEDCOM X Conceptual Model and to the GEDCOM X RS specification that comprise the definition of the FamilySearch API.

The FamilySearch API Client comprises the developer SDK for the FamilySearch API.

Here's how you might use this project.

Maven Repositories

The GEDCOM X Java artifacts are provided via a Maven repository structure. Most Java-based build systems (Ant, Maven, Gradle, etc.) have support for Maven repositories.

Here's some snippets of what the dependency declarations might look like in some of the most common build systems. Note that these snippets declare a dependency on the gedcomx-model artifact, but you may want to declare dependencies on gedcomx-fileformat or gedcomx-rs-client or whatever.

Finding the Latest Version

To find the latest version of the libraries, read the Maven Metadata and use the "release" version.

Maven

<project>
  ...
  <dependencies>
    ...
    <dependency>
      <groupId>org.gedcomx</groupId>
      <artifactId>gedcomx-model</artifactId>
      <version>${gedcomx.version}</version>
    </dependency>
    ...
  </dependencies>
  ...
</project>

Apache Ivy

<ivy-module>
...
  <dependencies>
    ...
    <dependency org="org.gedcomx" name="gedcomx-model" rev="${gedcomx.version}"/>
    ...
  </dependencies>
...
</ivy-module>

Gradle

...
dependencies {
  runtime group: 'org.gedcomx', name: 'gedcomx-model', version: gedcomxVersion
}
...

Apache Buildr

...
compile.with transitive('org.gedcomx:gedcomx-model:#{gedcomx-version}')
...

Build

Here's how you build this project from source:

git clone https://github.com/FamilySearch/gedcomx-java.git
cd gedcomx-java
mvn install

The build for this project is automated via Travis CI, which automatically validates any updates to the code. When a release is needed, a Jenkins build server generously hosted by CloudBees is used to perform the release.

gedcomx-java's People

Contributors

stoicflame avatar dnash21e avatar thomast73 avatar daveyse avatar ranbo avatar wilfordej avatar dchamberlain avatar carpentermp avatar compiledpanda avatar tygan avatar hghubert avatar brenthale avatar briankunze avatar jdsumsion avatar ericfoutz avatar dependabot[bot] avatar landonvg avatar epabst avatar ablundgren avatar atomkirk avatar thnaeff avatar jonesej avatar roblyon avatar jonathanfowlke avatar srmadsen avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.