Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

describe JS (NPM) shacl tools #11

Open
VladimirAlexiev opened this issue Nov 12, 2024 · 7 comments
Open

describe JS (NPM) shacl tools #11

VladimirAlexiev opened this issue Nov 12, 2024 · 7 comments

Comments

@VladimirAlexiev
Copy link
Collaborator

VladimirAlexiev commented Nov 12, 2024

cc @tpluscode @amivanoff
https://www.npmjs.com/search?q=shacl has a lot of useful tools.
Below is a rough list, but we need to find the git repos, and add all attributes needed by "awesome.
Add category "SHACL Compact".

Already have:

  • shacl-engine
  • (@zazuko/shacl-playground: this is just to make links to their Playground)
  • shacl-language-server

JavaScript/Typescript SHACL validators

  • @rdfc/shacl-processor-ts
  • @google/schemarama: parse JSON-LD, Microdata, RDFa. Validate ShEx and SHACL.

FAKES? Reported as spam at https://www.npmjs.com/support

SHACL Compact:

  • @comunica/actor-rdf-serialize-shaclc, @comunica/actor-rdf-parse-shaclc
  • @jeswr shaclc-write, shaclc-parse

Querying / Inference

  • @tpluscode clownface-shacl-path
  • @hydrofoil/shape-to-query - Generate SPARQL queries from SHACL Node Shapes.
  • @jeswr construct-inferences-shacl - Construct queries to do inferencing on SHACL constraints.

Declarative UIs

  • @ulb-darmstadt/shacl-form
  • @hydrofoil/shaperone-rdf-validate-shacl
  • @hydrofoil/shaperone-wc - Web Component rendering SHACL forms.
  • @hydrofoil/shaperone-core - Base processor of SHACL Shape intended to build forms
  • @jordi-c/solid-fef-cli - Solid Front end Form (sfef): a command line interface for creating forms on Vue/Angular frameworks from SHACL.
  • @jeswr shacl-form-react - A HTML5 form generator for any SHACL constraint compliant to the W3C standard.
  • @brinxmat shacl-jsonforms - SHACL-to-JSONForms converter.
  • @Babibubebon vue-shacl-form - Vue.js component for HTML5 form generation based on SHACL.

Convertors

  • @jeswr/shacl2shex
  • @comake/shacl-to-json-schema
  • @oslo-flanders/shacl-template-generator - Generates a SHACL template based on an OSLO JSON-LD file (OSLO is a spec for data exchange in eGovernment).
  • @pheyvaer merweb - Generate SHACL shapes and vocabularies from Mermaid class diagrams.
  • @siqueirarenan shacl-jsonschema-converter - Convert SHACL to JSON Schema.
  • @jiaoxlong json-schema-ld and jsc-ld - represent JSON schema in RDF (RDF Schema) and RDF shapes in SHACL.
  • @minorg shaclmate - Generate TypeScript from SHACL shapes.
  • @zazuko/rdf-markdown-shacl - Extract RDF from markdown using SHACL shapes. No documentation but a very interesting idea.

IDEs

  • @BruJu shacled-turtle - Code Mirror Turtle language support with autocompletion.

Developer tools

  • @minorg shacl-ast - Abstract Syntax Tree for SHACL.
  • @zazuko/shacl-test - Runs SHACL shapes against a set of positive and negative test cases (data graphs).
  • @pietercolpaert extract-cbd-shape - Extract an entity based on Concise Bounded Description (CBD: same algorithm usually used in SPARQL DESCRIBE) and a SHACL shape
  • @tpluscode/shacl-cli - Node CLI to validate RDF
@ktk
Copy link

ktk commented Nov 12, 2024

The fakes look fake to me

@jeswr
Copy link
Contributor

jeswr commented Nov 12, 2024

@smessie you have some JS tooling / websites that aren't listed here; perhaps you want to add them as well?

@tpluscode
Copy link
Collaborator

Happy to add some of my work. Off the top of my head:

@tpluscode/shacl-cli

I do not think it deserves the list

@hydrofoil/shaperone-*

Shaperone is included already. No point listing individual packages

@VladimirAlexiev
Copy link
Collaborator Author

@tpluscode so the Shaperone repo already describes those packages?

@bergos
Copy link

bergos commented Nov 13, 2024

I also stumbled over the fishy packages listed under fakes recently. More of them can be found with a reverse dependency search on npm. I checked if I can automatically detect these packages, but I may create a manual list and report them in the meantime. I don't know why they have been created and if they are harmful, but hopefully, it's easy to get rid of them as they are clearly copyright violations.

@tpluscode
Copy link
Collaborator

@tpluscode so the Shaperone repo already describes those packages?

More or less. I've started work on long-overdue docs overhaul. Anyway, I find the project a whole without the necessity to split hairs

@smessie
Copy link

smessie commented Dec 6, 2024

@smessie you have some JS tooling / websites that aren't listed here; perhaps you want to add them as well?

Thanks for the mention @jeswr.

Following might be interesting to add if it fits the scope:

  • FormGenerator (GitHub - Demo): An app to generate a basic declarative form description by using a drag-and-drop interface. You can choose between the UI ontology, SHACL, and RDF-Form as ontology. Choosing SHACL allows you to build shapes in this way.
  • FormRenderer (GitHub - Demo): An app to fill out a form by rendering its declarative form description as HTML in the browser. Allows for easy data entry by the use of an UI.
  • FormCli (GitHub): An app to fill out a form by rendering its declarative form description as text on the command line.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants