npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@zazuko/ssz-views

v0.2.6

Published

SSZ Views

Downloads

6

Readme

ssz-views

Generate Views

Views are pre-generated based on the exported JSON files. A command line tool is provided for this step. The tool must be called like this:

./bin/ssz-views.js generate --endpoint=http://ld.zazuko.com/query --base=http://localhost:8080/ config.json views

The endpoint argument is used to lookup hierarchies on the SPARQL endpoint. The given base will be used as base URL for the views. It must match the URL that will be used for the server. config.json is the input file and views the output folder.

Generate Views to a Triplestore

Generating the view triples into a triplestore is almost the same as into a file. The filename must be replaced by the SPARQL Graph Store URL of the target store. Additional you can give a target named graph and user + password, if required:

./bin/ssz-views.js generate2store --endpoint=http://ld.zazuko.com/query --base=http://localhost:8080/ config.json http://localhost:3030/ssz/data

View Server

The view server hosts the generated views and runs them on the fly. Content negotiation can be used to fetch the results in RDF serializations or CSV.
The following URL patterns are used:

  • GET /: Returns an index of all views pointing to the views using hydra:member.
  • GET /:viewId: Returns the triples of the generated view. The viewId matches the Veröffentlichung/VeröffentlichungID from the json config.
  • GET /:viewId/observation/: Returns the on the fly generated observations based on the view definition with the given viewId.

Examples

To run server locally, create a .env.dev.local file with values for environment to configure. For example:

BASE_URL=https://ld.stadt-zuerich.ch/statistics/view/
ENDPOINT_URL=https://ld.integ.stadt-zuerich.ch/query
VIEW_ENDPOINT_URL=https://ld.integ.stadt-zuerich.ch/query

Then, execute npm start to run the server.

The following curl request will fetch the view V000001 as CSV and store it in test.csv:

curl -v -H 'accept: text/csv' http://localhost:8080/V000001/observation/ > test.csv

The following curl request will fetch the view V000001 as N-Triples and store it in test.nt:

curl -v -H 'accept: application/n-triples' http://localhost:8080/V000001/observation/ > test.nt