{"id":22490528,"url":"https://github.com/zazuko/SPEX","last_synced_at":"2025-08-02T22:33:11.639Z","repository":{"id":42450887,"uuid":"259313651","full_name":"zazuko/SPEX","owner":"zazuko","description":"SPEX is designed to introspect data within SPARQL endpoints, leveraging the self-describing nature of RDF-based data to enhance your comprehension of the underlying schema. ","archived":false,"fork":false,"pushed_at":"2023-07-21T11:42:23.000Z","size":13762,"stargazers_count":30,"open_issues_count":16,"forks_count":3,"subscribers_count":6,"default_branch":"main","last_synced_at":"2024-03-15T19:23:17.391Z","etag":null,"topics":["rdf","schema","sparql","visualization"],"latest_commit_sha":null,"homepage":"https://spex.zazuko.com","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zazuko.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-04-27T12:39:52.000Z","updated_at":"2024-02-14T09:49:48.000Z","dependencies_parsed_at":"2023-02-16T23:01:11.921Z","dependency_job_id":"aadd26f6-24cf-4c7d-9c9a-a1f48607b76e","html_url":"https://github.com/zazuko/SPEX","commit_stats":null,"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zazuko%2FSPEX","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zazuko%2FSPEX/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zazuko%2FSPEX/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zazuko%2FSPEX/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zazuko","download_url":"https://codeload.github.com/zazuko/SPEX/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228501302,"owners_count":17930229,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rdf","schema","sparql","visualization"],"created_at":"2024-12-06T17:22:18.653Z","updated_at":"2024-12-06T17:25:15.104Z","avatar_url":"https://github.com/zazuko.png","language":"Vue","readme":"# SPEX - SPARQL Endpoint Explorer\n\nSPEX is a tool designed to introspect data within SPARQL endpoints, leveraging the self-describing nature of RDF-based data to help users better understand its schema.\n\nWith the schema information available, you can use SPEX to browse instances of the data and follow links to other data points.\n\nWhile SPEX is great for exploring and introspecting previously unknown datasets, it's not a generic graph-browser. Its primary goal is to provide insights into the schema and demonstrate basic data relationships. For more advanced graph exploration, consider using tools like [Graph Explorer](https://github.com/zazuko/graph-explorer).\n\n## Usage\n\nTry a [live instance of SPEX](https://spex.zazuko.com) to get started.\n\nSPEX uses SPARQL to determine the available data. To begin, provide a SPARQL endpoint. Once configured, SPEX can introspect data from the default graph or a specific named graph. Use the named-graphs dropdown to narrow the scope if needed.\n\nSPEX executes generic SPARQL queries to understand the data structure, grouping entities with the same class and querying distinct properties. It also examines property data types and their connections to other concepts.\n\n![SPEX screenshot](docs/image/SPEX.png \"SPEX in action\")\n\nDepending on the dataset size, introspection can be resource-intensive. To mitigate this, SPEX checks for available SHACL shapes on the endpoint/graph and uses them if found, instead of running a SPARQL query.\n\nYou can download the auto-generated shape as a starting point if you want to provide shapes on the endpoint.\n\n## Limitations\n\nIntrospection and auto-generation of SHACL shapes might yield unexpected results in cases where:\n\n* more than one class is assigned to instances of data\n* multiple datasets have the same class but different properties\n\nIn such situations, providing pre-defined SHACL shapes is recommended. Inferring the correct structure automatically requires more effort than SPEX's generic queries.\n\nThe URL of the shape is a work in progress; see [this issue](https://github.com/zazuko/SPEX/issues/25) for more information.\n\nSPEX attempts to find an optimal layout for rendering tables, but there's always room for improvement. Use your browser's zoom controls if the layout doesn't fit the page.\n\n## Accessing an unencrypted (http) SPARQL endpoint\n\nSPEX is a web application that runs in a browser window. This may cause issues if a SPARQL endpoint isn't available on https and SPEX is served on https only. Refer to [Mixed Content](https://developers.google.com/web/fundamentals/security/prevent-mixed-content/fixing-mixed-content) restrictions for more information.\n\nA common error in this scenario is `TypeError: Network request failed` when trying to access an http SPARQL endpoint. The only exception is your local machine, where you'll always be able to access an http-only SPARQL endpoint on localhost.\n\nTo fix this, either implement a SPARQL proxy or serve SPEX on an http resource.\n## SPEX as a local Application\n\nSPEX can be installed as a so-called [progressive web application](https://en.wikipedia.org/wiki/Progressive_web_application)\n(PWA). If you follow the [guide at MDN](https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Developer_guide/Installing),\nSPEX will be available on your desktop computer like any other application.\n\n## Extending SPEX\n\nSPEX is developed by Zazuko and released as Open Source Software under\nthe [MIT license](LICENSE).\n\nWe use SPEX on a daily base to work with datasets. There are many ideas\nof what could and should be added to SPEX. Check out the GitHub issues\nto see what could be done next.\n\nThere are three ways to get new features implemented:\n\n1. Implement it on your own and submit a pull-request to this repository.\n2. Pay us for a specific feature. Get [in contact with us](mailto:info@zazuko.com?subject=SPEX) by email to get a quote.\n3. Wait for 1 or 2 to happen.\n\n## Support\n\nZazuko provides commercial support for SPEX, get in [contact with us](mailto:info@zazuko.com?subject=SPEX) for\nmore information.\n\n## Development Project setup\n\n```\nnpm install\n```\n\n### Compiles and hot-reloads for development\n```\nnpm run serve\n```\n\n### Compiles and minifies for production\n```\nnpm run build\n```\n\n### Run your unit tests\n```\nnpm run test:unit\n```\n\n### Lints and fixes files\n```\nnpm run lint\n```\n\n### Customize configuration\nSee [Configuration Reference](https://cli.vuejs.org/config/).\n","funding_links":[],"categories":["Vue"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzazuko%2FSPEX","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzazuko%2FSPEX","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzazuko%2FSPEX/lists"}