Tools of the Trade | Section 1

Section 1: Tools of the Trade

ClojureScript is a very productive and efficient language. While these features stem largely from the language itself, ClojureScript owes quite a bit of its productivity to the tools and common practices that have developed around it (and its Lisp predecessors over the past few decades). While there are some code samples and exercises in this section - including a simple but complete application in Lesson 8 - the focus is on learning the tools that will make you an effective ClojureScript programmer. Just as a new JavaScript developer needs a basic understanding of Babel and Webpack, and the browser dev tools, a new ClojureScript developer ought to have a famialiarity with the tools that we cover in this section.

Now that we have a high-level perspective on ClojureScript as a language and is place in the JavaScript ecosystem, we will walk through the process of bootstrapping a new ClojureScript project, using Leiningen, the defacto Clojure and ClojureScript build tool. Next, we will introduce Figwheel, an invaluable tool for live-reloading code and styles, and we will learn how to write code that is conducive to reloable live reloading. Then, we will introduce the REPL - an extremely powerful tool for experimenting with small snippets of code. Finally, we will use these tools to create a weather forecasting app that showcases leiningen templates and live reloading. This project is intended to convey a taste of the process of developing ClojureScript rather than giving a deep understanding of the code. Don’t worry though - in the following section, we will begin our exploration of the language itself!