GrowthRing is a collections of attempts to visualize how a document grows over revisions. It contains:
-
a multiple sequence alignment tool for texts, written in Scala.
-
an interactive demo of text de-identification.
This software was in part used for a research paper presented in PACLIC 2014: k-repeating substrings: a string-algorithmic approach to privacy-preserving publishing of textual data. (paper, slides)
sbt and Java Development Kit (JDK) are required both for building and using this application. Latest release is built with sbt 1.10.0 and openjdk 21.0.3.
This application has a number of parameters that are set by a configuration file (or by Java properties). See src/main/resources/reference.conf
for the default values and .conf
files at the top level of the repository for other examples.`
-
sbt "~WarStart
# see https://index.scala-lang.org/earldouglas/sbt-war -
xdg-open http://localhost:8080
# or open http://localhost:8080 on your browser
-
sbt assembly
-
java -Dconfig.file=msa.conf -jar target/scala-*/growthring-assembly-*.jar < sample_input.txt | dot /dev/stdin -Tpdf -o sample_output.pdf
-
sbt assembly
-
java -Dconfig.file=anonym.conf -jar target/scala-*/growthring-assembly-*.jar < sample_input.txt > sample_output.txt
Note: instructions below have not been tested for years and probably need updating.
Better performance might be achieved by SAIS, which you need to install as separate a native library separately.
-
Use the command below to get the shared library version of SAIS. You may need to add
-fPIC
toCFLAGS
in the Makefile.-
make && ld -shared sais.o -o libsais.so
-
-
Put
libsais.so
into any directory included byLD_LIBRARY_PATH
(or current directory). -
Use
java -Xss50M -Dconfig.file=sais.conf -jar target/scala-*/growthring-assembly-*.jar
or otherwise specify-Dorg.whym.growthring.repeatsMethod=sais
.
Note: instructions below have not been tested for years and probably need updating.
-
sbt publishM2
-
mvn -f pom-gae.xml appengine:devserver
-
xdg-open http://localhost:8080
# or open http://localhost:8080 on your browser
The above procedures will automatically invoke compilation, but if you specifically want to compile:
-
Build sources with
sbt compile
.
-
Yusuke Matsubara <whym@whym.org>
-
See https://meta.wikimedia.org/wiki/Talk:Vision/ja for credits of the texts contained in
sample_input.txt