Vipra
The Vipra application is a topic modeling based search system with a frontend web application, a backend REST service and a maintenance tool for data import and modeling. It attempts to leverage automatically discovered topic informations in document collections to ease collection browsing and organization. The search system relies on ElasticSearch and Apache Lucene.
This application was created by Eike Cochu for his master's degree thesis in computer science, 2015-2016 at the Freie Universität in Berlin, Germany.
Components
- vipra-backend: Backend application that connects to the database, filebase and search engine.
- vipra-cmd: Backend utility tool to import and manage backend services.
- vipra-ui: Frontend user interface that connects to the backend REST service.
- vipra-util: Shared libraries and classes for backend applications and utility tools.
Installation
- If MongoDB or ElasticSearch run on different servers that the JavaEE application server, then the configuration files need to be changed. Change
config.properties
file - in
vipra.war
: Openvipra.war
in an archive program, navigate to/WEB-INF/classes
and editconfig.properties
file appropriately. - in
vipra-cmd.jar
: Openvipra-cmd.jar
and editconfig.properties
file appropriately. - Test connection by running
./vipra -t
- Copy
vipra.war
to your JavaEE application server
Development
Requirements
Run dependencies
- Java (8+)
- MongoDB (2.6+)
- ElasticSearch (2.1+)
- DynamicDTM
- JavaEE Application Server, e.g. Tomcat (8+)
Additional build dependencies
Build
- Clone this repository to
./vipra
- Navigate to
./vipra
- Execute
./build.sh
to build all projects - Copy
vipra-backend/target/vipra.war
to your JavaEE application server - Test connections by running
./vipra -t