{"id":17245542,"url":"https://github.com/bobbicodes/instacode","last_synced_at":"2025-09-19T10:58:00.676Z","repository":{"id":101319535,"uuid":"184528837","full_name":"bobbicodes/instacode","owner":"bobbicodes","description":"Clojure notebook generator with KaTeX and KLIPSE","archived":false,"fork":false,"pushed_at":"2021-07-29T00:23:13.000Z","size":784,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-06-04T10:10:37.547Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://porkostomus.github.io/instacode/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"epl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bobbicodes.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-02T05:58:44.000Z","updated_at":"2021-07-29T00:23:17.000Z","dependencies_parsed_at":"2023-07-12T10:16:00.361Z","dependency_job_id":null,"html_url":"https://github.com/bobbicodes/instacode","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/bobbicodes/instacode","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bobbicodes%2Finstacode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bobbicodes%2Finstacode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bobbicodes%2Finstacode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bobbicodes%2Finstacode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bobbicodes","download_url":"https://codeload.github.com/bobbicodes/instacode/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bobbicodes%2Finstacode/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275926112,"owners_count":25553969,"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","status":"online","status_checked_at":"2025-09-19T02:00:09.700Z","response_time":108,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2024-10-15T06:29:49.553Z","updated_at":"2025-09-19T10:58:00.658Z","avatar_url":"https://github.com/bobbicodes.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Instacode\n\nClojure notebook generator with [KaTeX](https://github.com/KaTeX/KaTeX) and [KLIPSE](https://github.com/viebel/klipse)\n\n## Generate static content from the REPL\n\nThe `nb` function takes 2 strings, a text block which may include KaTeX formulas (inline or display style), and an interactive code block. Slashes (`\\`), quotes (`\"`), etc. must be escaped when used from the REPL. \n\nThe page [here](https://porkostomus.github.io/instacode/) was generated from the REPL like this:\n\n```\n~/instacode$ lein repl\ninstacode.core=\u003e (nb \"$$\\\\huge{\\\\pink{x}=\\\\dfrac{-\\\\blue{b}\\\\pm\\\\sqrt{\\\\blue{b}\\\\purple{^2}-4\\\\red{a}\\\\orange{c}}}{2\\\\red{a}}}$$\" \"(defn prime-factors\n  ([n] (prime-factors 2 n))\n  ([f n]\n   (if (= n 1)\n     (if (zero? (mod n f))\n       (cons f (prime-factors f (/ n f)))\n       (recur (inc f) n)))))\n\n(defn perfect-squares [s]\n  (loop [items (sort s) pairs []]\n    (if (empty? items) pairs\n      (if (= (first items) (second items))\n        (recur (drop 2 items) (conj pairs (first items)))\n        (recur (rest items) pairs)))))\n\n(defn simplify-sqrt [sqrt]\n  (let [sq (reduce * (perfect-squares (prime-factors sqrt)))]\n    [sq (/ sqrt (* sq sq))]))\n\n(defn quadratic-rational [[a b c]]\n  (let [discriminant (simplify-sqrt (- (* b b) (* 4 a c)))]\n    [(/ (- b) (first discriminant))\n     (last discriminant) (/ (* 2 a) (first discriminant))]))\n\n(quadratic-rational [3 24 48])\")\n```\n![Screenshot](Screenshot.png)\n\n## Start a web server\n\n```\n~/instacode$ lein run\n```\n\n![Ring app](ring.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbobbicodes%2Finstacode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbobbicodes%2Finstacode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbobbicodes%2Finstacode/lists"}