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

@terrestris/shogun-util

v10.2.0

Published

Connect to a SHOGun instance with ease.

Downloads

1,409

Readme

SHOGun-Util

Connect to a SHOGun instance with ease.

Installation

npm i @terrestris/shogun-util

Usage

This package contains two core classes:

  • SHOGunAPIClient: Provides access to the HTTP API endpoints of SHOGun.
  • SHOGunApplicationUtil: A set of helper functions to parse SHOGun entities into JavaScript/OpenLayers instances.

See the following example to get an idea on how the classes can be utilized:

import Keycloak from 'keycloak-js';

import Map from 'ol/Map';

import SHOGunApplicationUtil from '@terrestris/shogun-util/dist/parser/SHOGunApplicationUtil';
import SHOGunAPIClient from '@terrestris/shogun-util/dist/service/SHOGunAPIClient';

// Create the (optional) Keycloak connector. This is required if bearer token authentication
// is needed inside you project setup only.
const keycloak = new Keycloak({
  url: 'https://localhost/auth',
  realm: 'SHOGunRealm',
  clientId: 'SHOGunClient'
});

// Initialize the keycloak client.
keycloak.init({
  onLoad: 'check-sso'
});

// Create the client to easily connect to a SHOGun instance, e.g. to get an
// application configuration.
const client = new SHOGunAPIClient({
  // The path to SHOGun.
  url: '/api',
  // The (optional) keycloak connector.
  keycloak: keycloak
});

// Create the parser to transform SHOGun entities into OpenLayers instances.
const parser = new SHOGunApplicationUtil({
  client
});

// Get the application with ID 1909.
const application = await client.application().findOne(1909);

// Get the map view.
const view = await parser.parseMapView(application);
// Parse the layers.
const layers = await parser.parseLayerTree(application);

// And build the map.
const map = new Map({
  view,
  layers
});

Development

npm run watch:buildto can be used to inject an updated version of shogun-util into another project. The script will also watch for further changes.

npm run watch:buildto ../shogun-gis-client/node_modules/@terrestris/shogun-util/