Modify Comunica
On this page
The following guides show how to configure your own Comunica engine, or extend Comunica by implementing new components. If you want to see some full examples, have a look at our dedicated examples repository.
Getting started with modification
Basic guides on how to easily get started with Comunica modification.
Querying with a custom configuration from the command line
Create a custom configuration of Comunica modules with reduced features, and query with it from the command line.
Querying with a custom configuration in a JavaScript app
Create a custom configuration of Comunica modules with changed features, and query with it from within your application using the JavaScript API.
Exposing your custom config as an npm package
Wrap your config in an npm package, and expose a CLI tool and a JavaScript API.
Exposing your custom config in a Web client
Demonstrate your query engine as a static Web page.
Contributing a new query operation actor to the Comunica repository
Setup a development environment, implement a new actor, and create a pull request.
Adding a config parameter to an actor
For an existing actor, add a parameter that can be customized in the config file.
Extensions
Existing extensions of Comunica.
Modify FAQ
Frequently asked question about Comunica modification.
Advanced modification
Advanced guides on how to get the most out of Comunica modification.
Actor Patterns
Overview of common design patterns for actors
Algebra
The internal representation of queries during query execution.
Core Architecture
The low-level software architecture of Comunica for achieving modularity.
SPARQL Architecture
The high-level software architecture of Comunica for implementing SPARQL.
Browser builds
All modules in Comunica can be built for the browser.
Buses and Actors
An overview of all buses in Comunica and their actors.
Components.js
Components.js is the dependency injection framework that Comunica uses to wire components via config files.
Custom CLI arguments
Adding custom arguments to CLI tools
Expression Evaluator
The expression evaluation engine of Comunica.
Hypermedia
Discovery of data source capabilities during query execution.
Joins
Overview of how join operations are handled during query planning
Linking local Comunica versions to other projects
Guide on how to use a local development version of Comunica with another local project
Logging
How to log messages from within actors.
Mediators
An overview of all mediators in Comunica.
Metadata
Information for adaptive planning of query operations.
Observers
Passively observe actions executed by actors on a given bus.
Query operation result types
An overview of the different output types for query operations.
RDF Parsing and Serializing
Basic concepts behind parsing and serializing RDF.
Testing
The unit and integration tests that lead to a more stable codebase.
Benchmarking
Guidelines on running experiments with Comunica.