WaG is a highly configurable frontend for creating word profile portals based on corpus resources compatible with the Manatee-open search engine. It provides comprehensive visualizations of linguistic data through seamless integration with our API services.
WaG integrates with the following backend services:
- MQuery - General corpora analysis including concordances, frequency distributions, and collocations
- Frodo - Corpus-driven dictionaries
- WSServer - Syntax-based collocations and word similarities
WaG operates in conjunction with APIGuard, our specialized HTTP API proxy and virtual API endpoint provider.
With WaG, you can:
-
Analyze linguistic data for:
- Single words
- Comparative analysis of two or more words
- Word translations
-
Explore comprehensive linguistics insights including:
- Text statistics
- Time-based trends
- Collocations
- Geographical data
- And much more
-
Combine data from multiple resources for enriched analysis
The easiest way to run WaG is using Docker Compose, which sets up all required services including WaG, APIGuard, MQuery, Frodo, Redis, MariaDB, and Nginx.
- Docker
- Docker Compose
-
Configure environment (optional):
The project includes a .env file with working defaults that point to example configurations in install/docker/. You can use it as-is or customize the paths if needed:
WAG_CONFIG_PATH=./install/docker/conf APIGUARD_CONF=./install/docker/apiguard.json MQUERY_CONF=./install/docker/mquery.json FRODO_CONF=./install/docker/frodo.json CORPORA_CONF=./install/docker/corpora VERT_TAGEXTRACT_CONF=./install/docker/vert-tagextract
-
Start all services:
docker compose up -d
-
Access WaG at
http://localhost:8080
For development with hot-reloading:
-
Configure environment (optional):
For development, you'll need to specify paths to local checkouts of the backend services. Add these to your .env file:
APIGUARD_PATH=/path/to/apiguard MQUERY_PATH=/path/to/mquery FRODO_PATH=/path/to/frodo
The other variables from the production setup are reused.
-
Start development environment:
docker compose -f docker-compose.dev.yml up
-
Access WaG at
http://localhost:8080(frontend dev server athttp://localhost:9001)
The Docker setup includes:
- WaG (main application)
- APIGuard (
localhost:8081) - API proxy - MQuery (
localhost:8082) - Corpus analysis - Frodo (
localhost:8083) - Dictionary services - Nginx (
localhost:8080) - Web server - Redis - Caching
- MariaDB - Database
The project uses custom Dockerfiles located in the dockerfiles/ directory:
Dockerfile.wag- Production WaG buildDockerfile.wag.dev- Development build with hot-reloadingDockerfile.apiguard,Dockerfile.mquery,Dockerfile.frodo- Backend services
Tomáš Machálek (2020): Word at a Glance: Modular Word Profile Aggregator. In: Proceedings of LREC 2020, s. 7011–7016.
@InProceedings{machalek2020lrec, author = {Tomáš Machálek}, title = "{Word at a Glance: Modular Word Profile Aggregator.}", booktitle = {Proceedings of the Twelfth International Conference on Language Resources and Evaluation (LREC 2020)}, year = {2020}, publisher = {European Language Resources Association (ELRA)}, language = {english} }