Skip to content

Clerk in Babashka #232

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 81 commits into from
Jun 24, 2025
Merged

Clerk in Babashka #232

merged 81 commits into from
Jun 24, 2025

Conversation

zampino
Copy link
Collaborator

@zampino zampino commented Oct 18, 2022

  • use bb / sci with fixed Expose sci.lang.Namespace babashka/babashka#1397
  • drop stubs folder in favour of .bb source files
  • fix auto-resolve in edamame read for e.g. ::clerk/visibility annotations
  • fix add-viewers! scope
  • var from defs
  • support for markdown notebooks (?)
  • fix slideshow viewer (?)
  • in-memory cache
  • on-disk cache (?)
  • cache dir conflicts (make special dir for bb)
  • investigate kondo false postive redundant ignores
  • performance of re-render with caching
  • make nextjournal.beholder work in bb
  • get rid of bb-runtime.edn
  • :require-cljs true in bb
  • run tests in bb
  • go over nextjournal.markdown API with @zampino

Release order:

  • nextjournal.beholder
  • nextjournal.markdown
  • bb
  • quickblog
  • clerk

Usage

Boot both an nREPL and a clerk server running in babashka:

$ bb --config bb-runtime.edn dev --port 9999

build clerk notebooks as static app:

$ bb --config bb-runtime.edn build --browse --paths notebooks/hello.clj notebooks/rule_30.clj

Copy link
Member

@mk mk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks really good. Only found some tiny nitpicks.


#_(-> [(clojure.java.io/file "notebooks") (find-ns 'user)] nippy/freeze nippy/thaw)

(defn ->cache-file [hash]
(str config/cache-dir fs/file-separator hash))
(utils/if-bb
(str (fs/file config/cache-dir (str "bb_" hash)))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe write the bb cache to a different directory by setting config/cache-dir differently? otoh that could lead to conflicts when overwriting it…

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I did it exactly like this to not cause conflicts when overriding the directory.

@mk mk merged commit 772d67a into main Jun 24, 2025
14 checks passed
@mk mk deleted the bb-clerk branch June 24, 2025 12:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants