Grafer is a large graph/network rendering library written using webGL, specializing in displaying and interacting with large datasets in real time. It provides multiple node types including simple geometric shapes and custom textures. Multiple edge types are also provided such as straight line, straight path, and bezier. Labels are customizable, with options included to change background, placement, and font. The viewer can operate in 2D or 3D.
import { GraferController } from '@uncharted.software/grafer';
// format data
const nodes = {
data: [
{ x: -8.6, y: 5.0 },
{ x: 8.6, y: 5.0 },
{ x: 0.0, y: -10.0 },
{ x: 0.0, y: 0.0 },
],
};
const edges = {
data: [
{ source: 0, target: 1 },
{ source: 1, target: 2 },
{ source: 2, target: 0 },
{ source: 3, target: 0 },
{ source: 3, target: 1 },
{ source: 3, target: 2 },
],
};
// initialize grafer
const canvas = document.getElementById('grafer_container');
const layers = [{ nodes, edges }];
new GraferController(canvas, { layers });See more examples available here.
All documentaton, including API reference, is available here.
yarn installto install all required dependenciesyarn run developto build and start the hot-reload dev server- Access examples at http://localhost:8090/
yarn installto install all required dependencies- One of the following scripts depending on use case:
yarn run buildto build the library from sourceyarn run developto build and start the hot-reload dev server (which also allows examples to be accessed athttp://localhost:8090/)yarn run lintto run linteryarn run testto run tests
- Remove all uncommitted changes from the
srcdirectory npm version <new_version_number>to update the version numberyarn run prepackto run build and validation scriptsnpm publishto publish to NPM- Ensure tags are pushed to Github
- Use tag to create a new release with changelog
