{"id":18953076,"url":"https://github.com/packtworkshops/the-clojure-workshop","last_synced_at":"2025-08-13T23:02:39.999Z","repository":{"id":54930921,"uuid":"213598063","full_name":"PacktWorkshops/The-Clojure-Workshop","owner":"PacktWorkshops","description":"A New, Interactive Approach to Learning Clojure ","archived":false,"fork":false,"pushed_at":"2023-07-12T20:26:50.000Z","size":28658,"stargazers_count":74,"open_issues_count":3,"forks_count":42,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-06-13T09:53:22.996Z","etag":null,"topics":["clojurescript","destructuring","figwheel","filter","lazy-sequences","leningen","map","reagent","repl"],"latest_commit_sha":null,"homepage":"","language":"Clojure","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PacktWorkshops.png","metadata":{"files":{"readme":"README.md","changelog":null,"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-10-08T09:12:12.000Z","updated_at":"2025-05-04T01:45:46.000Z","dependencies_parsed_at":"2024-11-08T13:51:28.272Z","dependency_job_id":null,"html_url":"https://github.com/PacktWorkshops/The-Clojure-Workshop","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/PacktWorkshops/The-Clojure-Workshop","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PacktWorkshops%2FThe-Clojure-Workshop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PacktWorkshops%2FThe-Clojure-Workshop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PacktWorkshops%2FThe-Clojure-Workshop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PacktWorkshops%2FThe-Clojure-Workshop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PacktWorkshops","download_url":"https://codeload.github.com/PacktWorkshops/The-Clojure-Workshop/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PacktWorkshops%2FThe-Clojure-Workshop/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261166748,"owners_count":23119085,"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":["clojurescript","destructuring","figwheel","filter","lazy-sequences","leningen","map","reagent","repl"],"created_at":"2024-11-08T13:35:58.023Z","updated_at":"2025-07-01T11:06:33.256Z","avatar_url":"https://github.com/PacktWorkshops.png","language":"Clojure","readme":"# The Clojure Workshop\n[![GitHub issues](https://img.shields.io/github/issues/PacktWorkshops/The-Clojure-Workshop.svg)](https://github.com/PacktWorkshops/The-Clojure-Workshop/issues)\n[![GitHub forks](https://img.shields.io/github/forks/PacktWorkshops/The-Clojure-Workshop.svg)](https://github.com/PacktWorkshops/The-Clojure-Workshop/network)\n[![GitHub stars](https://img.shields.io/github/stars/PacktWorkshops/The-Clojure-Workshop.svg)](https://github.com/PacktWorkshops/The-Clojure-Workshop/stargazers)\n[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/PacktWorkshops/The-Clojure-Workshop/pulls)\n\nThis is the repository for [The Clojure Workshop](https://www.amazon.com/Clojure-Workshop-Interactive-Approach-Learning-dp-1838825487/dp/1838825487/ref=mt_other?_encoding=UTF8\u0026me=\u0026qid=1610976962\u0026utm_source=github\u0026utm_medium=repository\u0026utm_campaign=9781838825485\u0026utm_term=Clojure\u0026utm_content=The%20Clojure%20Workshop), published by [Packt](https://www.packtpub.com/?utm_source=github). It contains all the supporting project files necessary to work through the course from start to finish.\n\n## Requirements and Setup\n\u003ca href=\"https://www.amazon.com/Clojure-Workshop-Interactive-Approach-Learning-dp-1838825487/dp/1838825487/ref=mt_other?_encoding=UTF8\u0026me=\u0026qid=1610976962\u0026utm_source=github\u0026utm_medium=repository\u0026utm_campaign=9781838825485\u0026utm_term=Clojure\u0026utm_content=The%20Clojure%20Workshop\"\u003e\u003cimg src=\"https://github.com/PacktWorkshops/Workshop-Covers/blob/master/The%20Clojure%20Workshop.png\" alt=\"The Clojure Workshop\" height=\"290px\" width=\"240px\" align=\"right\" this.target=\"_blank\"\u003e\u003c/a\u003e\n\nTo get started with the project files, you'll need to:\n1. Install OpenJDK on [Windows](https://adoptopenjdk.net/releases.html)\n2. Install Clojure on [Windows/Mac/Linux](https://leiningen.org/)\n\n## About The Clojure Workshop\n[The Clojure Workshop](https://www.amazon.com/Clojure-Workshop-Interactive-Approach-Learning-dp-1838825487/dp/1838825487/ref=mt_other?_encoding=UTF8\u0026me=\u0026qid=1610976962\u0026utm_source=github\u0026utm_medium=repository\u0026utm_campaign=9781838825485\u0026utm_term=Clojure\u0026utm_content=The%20Clojure%20Workshop) introduces you to the world of functional programming, helping you learn how to build real-world applications in Clojure and ClojureScript, keeping best practices, high performance and scalability in mind.\t \n\n## What you will learn\n* Write idiomatic code with Clojure and ClojureScript\n* Understand and use common patterns and best practices\n* Experiment with code and interact with programs using the REPL\n* Learn the fundamentals of functional programming and immutability\n* Master concepts including mapping, filtering, reducing and recursion\n* Structure and build your code using namespaces and Leiningen\n* Write unit tests to validate application behavior\n* Simplify your code and improve efficiency with macros\n\n## Related Workshops\nIf you've found this repository useful, you might want to check out some of our other workshop titles:\n* [The HTML and CSS Workshop](https://www.amazon.com/HTML-CSS-Workshop-Interactive-Approach-ebook/dp/B082926TQG/ref=sr_1_1?dchild=1\u0026keywords=The%20HTML%20and%20CSS%20Workshop\u0026qid=1611056782\u0026sr=8-1\u0026utm_source=GitHub\u0026utm_medium=Repository\u0026utm_campaign=9781838824532\u0026utm_term=HTML%20and%20CSS\u0026utm_content=The%20HTML%20and%20CSS%20Workshop)\n* [The JavaScript Workshop](https://www.amazon.com/JavaScript-Workshop-Interactive-Approach-Learning-ebook/dp/B0824584WF/ref=sr_1_1?dchild=1\u0026keywords=The%20JavaScript%20Workshop\u0026qid=1611056880\u0026sr=8-1\u0026utm_source=GitHub\u0026utm_medium=Repository\u0026utm_campaign=9781838641917\u0026utm_term=JavaScript\u0026utm_content=The%20JavaScript%20Workshop)\n* [The React Workshop](https://www.amazon.com/React-Workshop-Interactive-Approach-Learning-ebook/dp/B082VG6JCL/ref=sr_1_1?dchild=1\u0026keywords=The%20React%20Workshop\u0026qid=1611056710\u0026sr=8-1\u0026utm_source=GitHub\u0026utm_medium=Repository\u0026utm_campaign=9781838645564\u0026utm_term=React\u0026utm_content=The%20React%20Workshop)\n\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpacktworkshops%2Fthe-clojure-workshop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpacktworkshops%2Fthe-clojure-workshop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpacktworkshops%2Fthe-clojure-workshop/lists"}