<commit_before>:readme:
:img: https://raw.githubusercontent.com/neo4j-contrib/neo4j-apoc-procedures/master/docs/img

image:https://travis-ci.org/neo4j-contrib/neo4j-apoc-procedures.svg[alt="Travis CI Status", link="https://travis-ci.org/neo4j-contrib/neo4j-apoc-procedures"] image:https://img.shields.io/maven-central/v/org.neo4j.procedure/apoc.svg[alt="Maven status"] image:https://img.shields.io/github/release/neo4j-contrib/neo4j-apoc-procedures.svg[alt="Github release status"] image:https://img.shields.io/github/contributors/neo4j-contrib/neo4j-apoc-procedures.svg[alt="contributor stats"]

= Awesome Procedures for Neo4j 3.x

== Detailed Feature Documentation
See the https://neo4j-contrib.github.io/neo4j-apoc-procedures[APOC User Guide] for documentation of each of the major features of the library, including data import/export, graph algorithms, spatial, and more.

// tag::readme[]

== Introduction

// tag::intro[]
// tag::intro-text[]

image::https://raw.githubusercontent.com/neo4j-contrib/neo4j-apoc-procedures/master/docs/img/apoc.gif[float=right]

Neo4j 3.0 introduced the concept of user defined procedures.
Those are custom implementations of certain functionality, that can't be (easily) expressed in Cypher itself.
Those procedures are implemented in Java and can be easily deployed into your Neo4j instance, and then be called from Cypher directly.

The APOC library consists of many (about 300) procedures to help with many different tasks in areas like data integration, graph algorithms or data conversion.

=== License

Apache License 2.0

=== "APOC" Name history

http://matrix.wikia.com/wiki/Apoc[Apoc] was the technician and driver on board of the Nebuchadnezzar in the Matrix movie. He was killed by Cypher.

*APOC* was also the first bundled http://neo4j.com/blog/convenient-package-neo4j-apoc-0-1-released/[A Package Of Components] for Neo4j in 2009.

*APOC* also stands for "Awesome Procedures On Cypher"

=== Download latest release

Go to http://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/latest
to find the latest release and download the binary jar to place into your `$NEO4J_HOME/plugins` folder.

// end::intro-text[]
// tag::build[]

=== Build & install the current development branch from source

----
git clone http://github.com/neo4j-contrib/neo4j-apoc-procedures
./gradlew shadow
cp build/libs/apoc-<version>-SNAPSHOT-all.jar $NEO4J_HOME/plugins/
$NEO4J_HOME/bin/neo4j restart
----

// If you want to run embedded or use neo4j-shell on a disk store, configure your `plugins` directory in `conf/neo4j.conf` with `dbms.plugin.directory=path/to/plugins`.

A full build including running the tests can be run by `./gradlew build`.
<commit_msg>Update release link for 3.1.x<commit_after>:readme:
:img: https://raw.githubusercontent.com/neo4j-contrib/neo4j-apoc-procedures/master/docs/img

image:https://travis-ci.org/neo4j-contrib/neo4j-apoc-procedures.svg[alt="Travis CI Status", link="https://travis-ci.org/neo4j-contrib/neo4j-apoc-procedures"] image:https://img.shields.io/maven-central/v/org.neo4j.procedure/apoc.svg[alt="Maven status"] image:https://img.shields.io/github/release/neo4j-contrib/neo4j-apoc-procedures.svg[alt="Github release status"] image:https://img.shields.io/github/contributors/neo4j-contrib/neo4j-apoc-procedures.svg[alt="contributor stats"]

= Awesome Procedures for Neo4j 3.1.x

== Detailed Feature Documentation
See the https://neo4j-contrib.github.io/neo4j-apoc-procedures[APOC User Guide] for documentation of each of the major features of the library, including data import/export, graph algorithms, spatial, and more.

// tag::readme[]

== Introduction

// tag::intro[]
// tag::intro-text[]

image::https://raw.githubusercontent.com/neo4j-contrib/neo4j-apoc-procedures/master/docs/img/apoc.gif[float=right]

Neo4j 3.0 introduced the concept of user defined procedures.
Those are custom implementations of certain functionality, that can't be (easily) expressed in Cypher itself.
Those procedures are implemented in Java and can be easily deployed into your Neo4j instance, and then be called from Cypher directly.

The APOC library consists of many (about 300) procedures to help with many different tasks in areas like data integration, graph algorithms or data conversion.

=== License

Apache License 2.0

=== "APOC" Name history

http://matrix.wikia.com/wiki/Apoc[Apoc] was the technician and driver on board of the Nebuchadnezzar in the Matrix movie. He was killed by Cypher.

*APOC* was also the first bundled http://neo4j.com/blog/convenient-package-neo4j-apoc-0-1-released/[A Package Of Components] for Neo4j in 2009.

*APOC* also stands for "Awesome Procedures On Cypher"

=== Download latest release

Go to http://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/3.1.0.3
to find the latest release and download the binary jar to place into your `$NEO4J_HOME/plugins` folder.

// end::intro-text[]
// tag::build[]

=== Build & install the current development branch from source

----
git clone http://github.com/neo4j-contrib/neo4j-apoc-procedures
./gradlew shadow
cp build/libs/apoc-<version>-SNAPSHOT-all.jar $NEO4J_HOME/plugins/
$NEO4J_HOME/bin/neo4j restart
----

// If you want to run embedded or use neo4j-shell on a disk store, configure your `plugins` directory in `conf/neo4j.conf` with `dbms.plugin.directory=path/to/plugins`.

A full build including running the tests can be run by `./gradlew build`.

{'fraction_non_alphanumeric': 0.11819021237303785, 'fraction_numerical': 0.01791320406278855, 'mean_word_length': 4.707060063224446, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 16, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 1, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4755136', 'n_tokens_mistral': 1846, 'n_tokens_neox': 1746, 'n_words': 498}