Skip to content

northone-inc/local-spicedb

Repository files navigation

Local SpiceDB

GitHub Workflow Status

Warning This project is still experimental, not for production use - FEATURES MAY CHANGE WITHOUT WARNING THIS Project doesn't work in CircleCI!

Local SpiceDB instance for testing

Features

  • Interacts with spicedb in your local $PATH
  • provides start and start server functionality
  • users in-memory to easily throw-away for integration testing

Install

brew bundle # installs spicedb locally
npm install -D local-spicedb

Usage

import { describe, it } from 'vitest'
import { SpiceDBServer } from 'local-spicedb'

describe('My SpiceDB Application', () => {
  it('can start and stop server', async () => {
    const server = SpiceDBServer({ 'grpc-preshared-key': 'test' })
    await server.start()
    // ...
    // 1. make requests to spicedb server, default port using pre-shared key above
    // 2....
    // 3. great profit
    // ...
    await server.stop() # sends SIGINT to running process
  })
})

Attributions