# clownface

> Simple but powerful graph traversing library

Latest version **2.0.3** (published 2024-11-25) · MIT license · 0 weekly downloads

## Install

```sh
npm install clownface
pnpm add clownface
yarn add clownface
bun add clownface
```

## Health

**Score 38/100 (D)** — status: maintenance-mode.

Positive: has types package; esm support; no vulnerabilities; high quality score.

Warnings: low downloads.

Negative: stale; low maintenance score.

## Facts

| | |
|---|---|
| Version | 2.0.3 |
| Published | 2024-11-25 |
| First published | 2015-11-05 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | separate (@types/clownface) |
| Module format | ESM + CommonJS |
| Dependencies | 3 |
| Unpacked size | 167.4 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 43 |
| Author | Thomas Bergwinkl |
| Maintainers | ludovicm67, zazuko-bot |
| Keywords | rdf, graph, traversing |

## Links

- npm: https://www.npmjs.com/package/clownface
- Repository: https://github.com/zazuko/clownface
- Homepage: https://zazuko.github.io/clownface/#/
- Issues: https://github.com/zazuko/clownface/issues
- npm.io page: https://npm.io/package/clownface

## Dependencies (3)

- [@rdfjs/namespace](https://npm.io/package/@rdfjs/namespace.md) ^2.0.0
- [@rdfjs/data-model](https://npm.io/package/@rdfjs/data-model.md) ^2.0.1
- [@rdfjs/environment](https://npm.io/package/@rdfjs/environment.md) 0 - 1

## Alternatives

- [apollo-link-http-common](https://npm.io/package/apollo-link-http-common.md) — 879.0K weekly downloads
- [react-relay](https://npm.io/package/react-relay.md) — 336.8K weekly downloads
- [relay-test-utils](https://npm.io/package/relay-test-utils.md) — 181.6K weekly downloads
- [@vendure/core](https://npm.io/package/@vendure/core.md) — 14.8K weekly downloads
- [@pnpm/deps.graph-sequencer](https://npm.io/package/@pnpm/deps.graph-sequencer.md) — 13.4K weekly downloads

## Recent versions

- 2.0.3 (latest) — 2024-11-25
- 0.3.0-rc6 (unstable) — 2015-12-19
- 2.0.2 — 2024-01-16
- 2.0.1 — 2023-09-25
- 2.0.0 — 2023-07-20
- 1.5.1 — 2022-04-04
- 1.5.0 — 2022-03-30
- 1.4.0 — 2021-07-09
- 1.3.0 — 2021-06-14
- 1.2.0 — 2020-12-10
- 1.1.1 — 2020-11-17
- 1.1.0 — 2020-10-19
- 1.0.0 — 2020-07-11
- 0.12.4 — 2020-05-18
- 0.12.3 — 2020-04-14
- … 8 more at https://npm.io/package/clownface/versions

## README

# clownface

[![Build Status](https://travis-ci.org/zazuko/clownface.svg?branch=master)](https://travis-ci.org/github/zazuko/clownface)
[![NPM Version](https://img.shields.io/npm/v/clownface.svg?style=flat)](https://npm.im/clownface)

Clownface is a graph traversal library inspired by [Gremlin](https://tinkerpop.apache.org/gremlin.html) which allows to query any [RDF dataset](https://rdf.js.org/dataset-spec/) in a concise and readable way.

Clownface greatly simplifies interacting with RDF data in JavaScript.

# Quick start

The recommended way is to use clownface with and RDF/JS environment.
It also requires [`DataFactory`](https://rdf.js.org/data-model-spec/#datafactory-interface) and [`DatasetFactory`](https://rdf.js.org/dataset-spec/#datasetfactory-interface), for example those provided by [`@rdfjs/data-model`](https://npm.im/@rdfjs/data-model) and [`@rdfjs/dataset`](https://npm.im/@rdfjs/dataset) packages respectively, as well as [`@rdfjs/namespace`](https://npm.im/@rdfjs/namespace).

```shell
npm install clownface @rdfjs/environment @rdfjs/data-model @rdfjs/dataset @rdfjs/namespace
````

```js
import Environment from '@rdfjs/environment/Environment.js'
import NamespaceFactory from '@rdfjs/namespace/Factory.js'
import DatasetFactory from '@rdfjs/dataset/Factory.js'
import DataFactory from '@rdfjs/data-model/Factory.js'
import ClownfaceFactory from 'clownface/Factory.js'

const $rdf = new Environment([
  NamespaceFactory,
  DatasetFactory,
  DataFactory,
  ClownfaceFactory
])

const graph = $rdf.clownface()
```

Alternatively, if you already use [@zazuko/env](https://npm.im/@zazuko/env), it comes bundled with clownface and its dependencies.

```js
import $rdf from '@zazuko/env'

const graph = $rdf.clownface()
```

# Learn more

If you are new to RDF and JavaScript, consider our [Getting Started](https://zazuko.com/get-started/developers/#traverse-an-rdf-graph) guide that also covers Clownface basics.

For API documentation and examples, see http://zazuko.github.io/clownface/.

---
_Source: https://npm.io/package/clownface · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
