{"id":13760420,"url":"https://github.com/pink-gorilla/notebook","last_synced_at":"2025-12-12T01:15:33.841Z","repository":{"id":50159303,"uuid":"78638606","full_name":"pink-gorilla/notebook","owner":"pink-gorilla","description":"Web based Clojure notebook application/-library.","archived":false,"fork":false,"pushed_at":"2021-06-27T01:08:26.000Z","size":37890,"stargazers_count":104,"open_issues_count":5,"forks_count":10,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-13T11:06:34.076Z","etag":null,"topics":["clojure","clojurescript","codemirror","data-science","gorilla-notebook","gorilla-repl","pink-gorilla","re-frame","reagent","vega"],"latest_commit_sha":null,"homepage":"https://pink-gorilla.github.io/","language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pink-gorilla.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-01-11T12:49:39.000Z","updated_at":"2025-04-08T04:45:58.000Z","dependencies_parsed_at":"2022-07-30T02:07:53.289Z","dependency_job_id":null,"html_url":"https://github.com/pink-gorilla/notebook","commit_stats":null,"previous_names":["pink-gorilla/gorilla-notebook"],"tags_count":55,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pink-gorilla%2Fnotebook","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pink-gorilla%2Fnotebook/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pink-gorilla%2Fnotebook/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pink-gorilla%2Fnotebook/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pink-gorilla","download_url":"https://codeload.github.com/pink-gorilla/notebook/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248703199,"owners_count":21148118,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["clojure","clojurescript","codemirror","data-science","gorilla-notebook","gorilla-repl","pink-gorilla","re-frame","reagent","vega"],"created_at":"2024-08-03T13:01:09.879Z","updated_at":"2025-12-12T01:15:33.798Z","avatar_url":"https://github.com/pink-gorilla.png","language":"Clojure","funding_links":[],"categories":["Clojure"],"sub_categories":[],"readme":"# Pink Gorilla Notebook [![GitHub Actions status |pink-gorilla/notebook](https://github.com/pink-gorilla/notebook/workflows/CI/badge.svg)](https://github.com/pink-gorilla/notebook/actions?workflow=CI)\n[![Clojars Project](https://img.shields.io/clojars/v/org.pinkgorilla/notebook.svg)](https://clojars.org/org.pinkgorilla/notebook)\n[![Clojars Project](https://img.shields.io/clojars/v/org.pinkgorilla/notebook-bundel.svg)](https://clojars.org/org.pinkgorilla/notebook-bundel)\n\nPink Gorilla Notebook is a rich browser based notebook REPL for Clojure and ClojureScript, which aims at extensibility\n (development- and runtime) and user experience while being very lightweight. Extensibility primarily revolves around\n  UI vizulisations and data.\n\n### Use cases\n- Data science\n- Persistent experiments and demos (Clojure/ClojureScript libraries)\n- Courses and education on all matters related to clojure\n\n### Web Interface\n\nWhichever method you use to start the notebook, you should reach it at [`http://localhost:8000/`](http://localhost:8000/).\n\n## Run Notebook standalone \n\nThe easiest way to run the notebook locally is leveraging the `clojure` cli\n\n```\nclojure -Sdeps '{:deps {org.pinkgorilla/notebook-bundel {:mvn/version \"RELEASE\"}}}' -m pinkgorilla.notebook-bundel\n```\n\n## Run Notebook with **default bundel**\n\nSince the default bundel ships many default ui extensions, you want to use the **notebook-bundel** \nartefact, because the javascript frotend app has already been precompiled, which results in faster startup-time.\n\n### in your deps.edn project\n\nWe recommend to use tools.deps over leiningen fortwo reasons:\n- no dependency coflicts with tools.deps (tools deps resolves to the highest dependency version, vs leiningen which depends on the position in the project.clj\n- use RELEASE so you always get the most recent notebook)\n\nOne way to configure the notebook is to pass it a edn configuration file. An example is\n[notebook edn config](https://github.com/pink-gorilla/notebook/blob/master/resources/notebook-core.edn)\n\nIn your deps.edn add this alias:\n```\n:notebook {:extra-deps {org.pinkgorilla/notebook-bundel {:mvn/version \"RELEASE\"}}\n           :exec-fn pinkgorilla.notebook-bundel/run\n           :exec-args {:config \"notebook-config.edn\"}}\n```\nthen run it with `clojure -X:notebook`.\n\n[trateg](https://github.com/clojure-quant/trateg) uses notebook-bundel with deps.edn:\nClone trateg and run `clojure -X:notebook`\n\n### in your leiningen project\n\n** We don't recommend leiningen use with notebook, as leiningen does not use the highest version of  dependencies.  ** \n\n## Run Notebook with **custom bundel**\n\nIf you define your own ui extensions, you need to compile the javascript bundel.\nThis requires some extra initial compilation time.\n\n### in your deps.edn project\n\n[ui-quil](https://github.com/pink-gorilla/ui-quil) use deps.edn to build a custom notebook \nbundel (that includes the library that gets built).\n\n### in your leiningen project\n\n[gorilla-ui](https://github.com/pink-gorilla/gorilla-ui) and\n[ui-vega](https://github.com/pink-gorilla/ui-vega) use leiningen to run notebooks with a \ncustom build bundel, and with custom notebook folder.\n\n\n## Run Notebook in Docker Image\n\nDocumentation has been moved [over here](https://pink-gorilla.github.io/)\n\n\u003c!-- [![dockeri.co](https://dockeri.co/image/pinkgorillawb/gorilla-notebook)](https://hub.docker.com/r/pinkgorillawb/gorilla-notebook) --\u003e\n[![](https://images.microbadger.com/badges/version/pinkgorillawb/gorilla-notebook.svg)](https://microbadger.com/images/pinkgorillawb/gorilla-notebook \"Get your own version badge on microbadger.com\")\n[![](https://images.microbadger.com/badges/image/pinkgorillawb/gorilla-notebook.svg)](https://microbadger.com/images/pinkgorillawb/gorilla-notebook \"Get your own image badge on microbadger.com\")\n\n## Run Notebook from cloned git repo\n\nThis option is mainly there for development of notebook. \nFor regular use, the long compile-times are not really sensible.\n\nRun `clojure -X:notebook` to run the notebook. \n\nThis runs the notebook with ui libraries bundled:\n- gorilla ui\n- gorilla plot\n\n## Run Development UI \n\nRun `clojure -X:develop` to run the develop ui. \n\n## Licence\n\nGorilla is licensed to you under the MIT licence. See LICENCE.txt for details.\n\nCopyright © 2019- Jony Hudson, Andreas Steffan and contributors\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpink-gorilla%2Fnotebook","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpink-gorilla%2Fnotebook","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpink-gorilla%2Fnotebook/lists"}