Description
This library provides common util namespaces and resources to share between the frontend and other non-frontend contexts. This library is not supposed to depend on other logseq libraries. This library is compatible with ClojureScript and with node/nbb-logseq to respectively provide frontend and Electron/commandline functionality.
API
This library is under the parent namespace logseq.common.
Dev
This follows the practices that the Logseq frontend follows. Most of the same linters are used, with configurations that are specific to this library. See this library's CI file for linting examples.
Setup
To run linters and tests, you'll want to install pnpm dependencies once:
pnpm install
Testing
To run nbb-logseq tests:
# Run all tests
$ pnpm test
# List available options
$ pnpm test -H
# Run tests with :focus metadata flag
$ pnpm test -i focus
To run ClojureScript tests:
clojure -M:test
To auto-run ClojureScript tests while writing tests:
clojure -M:test -w src