Repository navigation
Home
I started this Wiki a few years back as I tried to navigate the fast-changing space of ClojureScript tools. I abandoned it for a while, but picked it up again recently (mid-2017).
The rest of this page is mostly ancient gubbish: early notes from a few years ago. Rest of the pages in the Wiki are somewhat more useful - a raw capture of interesting links as I come across them, with incremental attempts at organization. My focus here is no longer exclusively ClojureScript; I'll include tidbits about related areas too, mostly in the Clojure/CLJS space, but with some blurring of the boundaries to include other tools too.
Feel free to browse, or suggest changes. PRs accepted happily.
I hope this will become a useful guide for ClojureScript (CLJS) developers. I am starting it now, April 2014, to "scratch my own itch". I am an occasional CLJS developer, fascinated by the power and flexibility of this new language but discouraged -- ironically enough -- by the rapid rate at which the development tool-chain is improving. Though this improvement is wonderful, it means that I spend way too much time upgrading my tools rather than focusing on my projects.
My goal in this guide is to document the evolving best practices for CLJS development. I hope that I only need to bootstrap the effort before it becomes useful enough that other folks will add their knowledge and insights.
Here are the topics that I want to cover. For now, this is just an outline. I will fill in the pieces as soon as I can. I welcome everyone to contribute and help complete this faster.
I don't want to write a book, or even a complete guide to ClojureScript programmning. Instead, I want to just:
- Link to best-practice documents elsewhere on the web
- Fill in just enough missing pieces to help hold this structure together
- Invite colleagues to improve this document
Most of this ClojureScript Stone Soup project will live in this wiki pages. The main project repository will, I think, only hold occasional bits of sample code.
What is Clojure?
- Lisp
- Functional programming
- Books to read
- Java and JavaScript
- Hosted compilation
- Google Closure
- Java
- Clojure
- Leiningen
- Editors, IDEs, and other programming environments
- Emacs
- Light Table
- Browser tools
- Books about ClojureScript programming
- ClojureScript tutorials
- Hello world with leiningen
- Om - Reactive DOM manipulation library; a thin wrapper around Facebook's React JavaScript library. The learning curve is fairly steep, but the abstraction model is great and this is now (early 2014) quickly becoming the best-of-class tool.
- Reagent
- Re-frame
- Pedestal
- Hoplon
- Dom manipulation
- Austin
- Reloading namespaces
- Ajax libs
- Scalability
- Databases
- Using local storage
- Communication
- TDD
- Automated testing
- PhantomJS
- Browser-based tools
- Heroku
- AWS
- Android
- iOS
- Microsoft