https://github.com/comunica/jquery-widget.js
🖼 A jQuery widget to query heterogeneous interfaces using Comunica SPARQL
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.5%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
🖼 A jQuery widget to query heterogeneous interfaces using Comunica SPARQL
Basic Info
- Host: GitHub
- Owner: comunica
- License: mit
- Language: JavaScript
- Default Branch: master
- Homepage: http://query.linkeddatafragments.org/
- Size: 105 MB
Statistics
- Stars: 20
- Watchers: 6
- Forks: 39
- Open Issues: 24
- Releases: 0
Topics
Metadata Files
README.md
Comunica SPARQL jQuery Widget
Try the Comunica SPARQL jQuery Widget online.
This jQuery widget is a browser-based user interface to the Comunica SPARQL client. It allows users to execute SPARQL queries over one or multiple heterogeneous interfaces, such as Triple Pattern Fragments interfaces.
The @comunica/web-client-generator allows this widget to be generated for any Comunica configuration.
Installation
This tool requires Node.JS 10.0 or higher and is tested on OSX and Linux.
The easiest way to use this tool is by installing it from NPM as follows:
bash
$ npm install -g @comunica/web-client-generator
Alternatively, you can install from the latest GitHub sources:
bash
$ git clone git@github.com:comunica/jQuery-Widget.js.git
Generate jQuery widget
After installation, the comunica-web-client-generator CLI tool allows you to generate a new widget.
If installed from the GitHub sources, use ./bin/generate.js instead of comunica-web-client-generator.
Generating the widget for the default Comunica SPARQL config can be done as follows:
bash
$ comunica-web-client-generator
The output will be available in the build/ directory.
Provide a custom config
In order to override the default config, you can pass one as argument.
bash
$ comunica-web-client-generator config/config-default.json
This assumes that your engine's dependencies are available in your working directory.
If this is not the case, provide a path to your engine's directory via the -c option:
bash
$ comunica-web-client-generator path/to/engine/config/config-default.json -c path/to/engine/
Change settings and queries
The default datasources and queries can be changed as follows:
bash
$ comunica-web-client-generator -s settings.json -q queries
Examples for the settings.json file
and the queries directory.
Show all available options
All available options for this command are:
```bash $ comunica-web-client-generator -h comunica-web-client-generator generates Comunica Web clients Usage: comunica-web-client-generator config/config-default.json comunica-web-client-generator config/config-default.json -d my-build/ -s my-settings.json comunica-web-client-generator config/config-default.json -q my-queries/ comunica-web-client-generator config/config-default.json -w my-webpack.config.js
Options: -b The base URL at which the Web Client will be deployed [default: https://query.linkeddatafragments.org/] -d Destination of the built output (defaults to build) -m The compilation mode (defaults to production, can also be development) -c Path to the main Comunica module (defaults to cwd) -q Path to custom queries directory -s Path to custom settings file -w Path to custom Webpack config --help Print this help message ```
Running in a Docker container
Run the pre-built container
bash
docker run -p 3000:80 -it --rm comunica/jquery-widget.js
Run from git sources
Configure your widget by editing the settings.json file.
Next, edit the queries directory in which you should insert the queries that will be present by default in the widget.
Build the Docker container as follows:
bash
docker build -t comunica-sparql-widget .
After that, you can run your newly created container by mounting your current folder to the Docker container:
bash
docker run -p 3000:80 -it --rm comunica-sparql-widget
Settings and queries can be passed at runtime by mounting your custom queries.json to the Docker container:
```bash
Compile queries.json from settings.json and the files in the queries folder
./bin/queries-to-json.js
Provide the compiled queries.json at runtime
docker run -v $(pwd)/queries.json:/usr/share/nginx/html/queries.json -p 3000:80 -it --rm comunica-sparql-widget ```
Access on http://localhost:3000
For developers of this package
The following is only relevant for developers that contribute to this package.
Using the code
- Run
yarn installto fetch dependencies and build the browser version of the client code. - Run
yarn run devto run a local Web server (yarn run dev-prodfor minified production output). - Edit datasources in
settings.jsonand queries in thequeriesfolder, and runqueries-to-jsonto compile both of them in a single JSON file. - Run
yarn run buildto generate a production version in thebuildfolder.
How the browser client works
The original Comunica SPARQL engine is written for the Node.js environment. The Webpack library makes it compatible with browsers.
The query engine itself runs in a background thread using Web Workers. The user interface (ldf-client-ui.js) instructs the worker (ldf-client-worker.js) to evaluate queries by sending messages, and the worker sends results back.
License
The Linked Data Fragments jQuery Widget was originally written by Ruben Verborgh and ported for Comunica SPARQL by Ruben Taelman.
This code is copyrighted by Ghent University – imec and released under the MIT license.
Owner
- Name: Comunica
- Login: comunica
- Kind: organization
- Location: Ghent, Belgium
- Website: https://comunica.dev
- Twitter: comunicajs
- Repositories: 69
- Profile: https://github.com/comunica
Flexible SPARQL and GraphQL over decentralized RDF on the Web.
GitHub Events
Total
- Issues event: 9
- Watch event: 1
- Delete event: 9
- Issue comment event: 28
- Push event: 49
- Pull request event: 25
- Pull request review comment event: 13
- Pull request review event: 13
- Fork event: 3
- Create event: 14
Last Year
- Issues event: 9
- Watch event: 1
- Delete event: 9
- Issue comment event: 28
- Push event: 49
- Pull request event: 25
- Pull request review comment event: 13
- Pull request review event: 13
- Fork event: 3
- Create event: 14
Committers
Last synced: 8 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Ruben Taelman | r****n@u****e | 200 |
| Ruben Verborgh | r****n@v****g | 146 |
| Renovate Bot | b****t@r****m | 83 |
| renovate[bot] | 2****] | 48 |
| greenkeeper[bot] | g****] | 20 |
| Kakooza Jerry | a****a@g****m | 6 |
| Jesse Wright | 6****r | 4 |
| Pieter Colpaert | p****t@o****g | 2 |
| FlorianFV | 6****V | 2 |
| Maarten Segers | M****y | 2 |
| Manu De Buck | m****k@t****e | 2 |
| Mila Frerichs | m****s@g****m | 2 |
| Pieter Heyvaert | p****t@u****e | 2 |
| Pixel998 | m****8@g****m | 2 |
| surilindur | 1****r | 2 |
| Pieter Colpaert | p****r@i****e | 2 |
| Alfredo Serafini | s****f | 1 |
| Jim Balhoff | b****f@g****m | 1 |
| Kasper Zutterman | k****9@g****m | 1 |
| Marc Portier | m****r@g****m | 1 |
| Martin Vanbrabant | 6****b | 1 |
| Maxim Stockmans | 5****s | 1 |
| Philo van Kemenade | p****e@g****m | 1 |
| Simon Van Braeckel | 3****e | 1 |
| Vincent Emonet | v****t@g****m | 1 |
| gvanderh | g****h@g****m | 1 |
| stephanie | 5****7 | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 5 months ago
All Time
- Total issues: 49
- Total pull requests: 104
- Average time to close issues: 11 months
- Average time to close pull requests: 4 months
- Total issue authors: 21
- Total pull request authors: 22
- Average comments per issue: 1.47
- Average comments per pull request: 1.58
- Merged pull requests: 52
- Bot issues: 4
- Bot pull requests: 54
Past Year
- Issues: 3
- Pull requests: 25
- Average time to close issues: 6 days
- Average time to close pull requests: 18 days
- Issue authors: 3
- Pull request authors: 5
- Average comments per issue: 0.0
- Average comments per pull request: 1.72
- Merged pull requests: 11
- Bot issues: 0
- Bot pull requests: 10
Top Authors
Issue Authors
- rubensworks (14)
- KasperZutterman (5)
- pheyvaer (3)
- balhoff (2)
- mvanbrab (2)
- MPParsley (2)
- renovate[bot] (2)
- RubenVerborgh (2)
- jeswr (2)
- AronBuzogany (2)
- phivk (2)
- greenkeeper[bot] (2)
- gvanderh (1)
- KakoozaJerry (1)
- VirginiaBalseiro (1)
Pull Request Authors
- renovate[bot] (45)
- greenkeeper[bot] (9)
- jeswr (8)
- simonvbrae (6)
- Pixel998 (4)
- KakoozaJerry (4)
- MPParsley (3)
- FlorianFV (3)
- milafrerichs (3)
- KasperZutterman (2)
- stephaniech97 (2)
- phivk (2)
- surilindur (2)
- MaximStockmans (2)
- noahvsb (2)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- npm 12 last-month
- Total dependent packages: 1
- Total dependent repositories: 1
- Total versions: 22
- Total maintainers: 5
npmjs.org: @comunica/web-client-generator
A tool to generate a Web-based client for a given Comunica config.
- Homepage: https://comunica.dev/
- License: MIT
-
Latest release: 3.0.2
published over 1 year ago
Rankings
Maintainers (5)
Dependencies
- babel-eslint ^10.1.0 development
- eslint ^7.0.0 development
- manual-git-changelog ^1.0.1 development
- pre-commit ^1.2.2 development
- @babel/core ^7.16.0
- @babel/polyfill ^7.12.1
- @babel/preset-env ^7.16.4
- @comunica/config-query-sparql ^2.0.1
- @comunica/query-sparql ^2.2.1
- @comunica/runner ^2.0.3
- @rubensworks/solid-client-authn-browser ^1.13.0
- @turf/centroid ^6.5.0
- babel-loader ^8.2.3
- file-loader ^6.0.0
- json-loader ^0.5.7
- leaflet ^1.7.1
- minimist ^1.2.5
- n3 0.11.3
- node-polyfill-webpack-plugin ^1.1.4
- rdf-string 1.6.1
- relative-to-absolute-iri ^1.0.6
- webpack ^5.69.0
- webpack-cli ^4.9.2
- webpack-dev-server ^4.7.4
- wellknown ^0.5.0
- wicket ^1.3.6
- yasgui-yasqe 2.11.22
- 1060 dependencies
- JamesIves/github-pages-deploy-action 3.7.1 composite
- actions/cache v2 composite
- actions/checkout v2 composite
- actions/checkout v2.5.0 composite
- actions/setup-node v2 composite
- nginx 1.23.2-alpine build
- node 18.12.1 build