logseq/deps/publishing
Gabriel Horner 67a7a0a3e9 enhance: Add default namespace of :logseq.property
for db/ident of built-in-properties. Namespacing block identities will
be important for future features. Adding namespacing also fixed some
hidden coupling between identity and name. Also converted a couple more
related :block/name queries to use :db/ident to slowly get us closer to
named blocks
2024-03-15 18:37:15 -04:00
..
.carve Add docs and workflow for dep 2023-04-09 23:13:33 +08:00
.clj-kondo Add docs and workflow for dep 2023-04-09 23:13:33 +08:00
src/logseq enhance: Add default namespace of :logseq.property 2024-03-15 18:37:15 -04:00
test/logseq/publishing fix publishing lint 2023-09-20 10:45:12 -04:00
.gitignore Add docs and workflow for dep 2023-04-09 23:13:33 +08:00
README.md Add docs and workflow for dep 2023-04-09 23:13:33 +08:00
bb.edn Update clj-kondo and bb-tasks for deps projects 2023-06-13 14:48:50 +08:00
deps.edn Update clj-kondo and bb-tasks for deps projects 2023-06-13 14:48:50 +08:00
nbb.edn Fix nbb.edn paths with latest nbb-logseq 2023-04-12 11:02:43 +08:00
package.json Update nbb-logseq to stub in cljs-bean.transit 2024-03-11 15:19:50 -04:00
yarn.lock Update nbb-logseq to stub in cljs-bean.transit 2024-03-11 15:19:50 -04:00

README.md

Description

This library handles exporting the frontend.publishing single page application. 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.publishing. This library provides two namespaces for node/CLI contexts, logseq.publishing and logseq.publishing.export and two namespaces for the frontend, logseq.publishing.html and logseq.publishing.db.

Usage

See logseq.tasks.dev.publishing for a CLI example. See the frontend for cljs usage.

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 yarn dependencies once:

yarn install

This step is not needed if you're just running the frontend application.

Testing

Testing is done with nbb-logseq and nbb-test-runner. Some basic usage:

# Run all tests
$ yarn test
# List available options
$ yarn test -H
# Run tests with :focus metadata flag
$ yarn test -i focus

Managing dependencies

See standard nbb/cljs library advice in graph-parser.