Most apps support hot reloading and REPL debugging via Figwheel.
Counter Vanilla
The most trivial example. Uses "vanilla" JavaScript to render a UI.
Counter
The basic example of using Carry with carry-reagent for rendering UI using Reagent.
Friend List
Inspired by this problem about dynamic search input. Demonstrates how to dispatch new signals from signal handler and also features:
- carry-reagent for rendering UI using Reagent
- carry-history for routing
- carry-schema for model validation using Schema
- carry-debugger for time traveling debugging
- carry-logging for logging to console
- unit tests
TodoMVC
The implementation of TodoMVC reference example.
Features:
- carry-reagent for rendering UI using Reagent
- carry-history and Silk for routing
- carry-persistence and hodgepodge for local storage persistence
- carry-schema for model validation using Schema
- carry-debugger for time traveling debugging
- carry-logging for logging to console
- uses Specter for model updates
- carry-atom-sync to directly access app model as an atom in REPL
Pickings
The small desktop app using Carry.
Features:
- written in Clojure
- Seesaw for UI
- reloaded workflow for easier running from REPL
Apps Using DataScript
Counter DataScript
The simplest example of using DataScript in-memory database for a model and carry-reagent for rendering UI using Reagent.
Shopping Cart
The more advanced example of using DataScript and carry-reagent. Inspired by flux-comparison problem.
Counter Devcards
An example of rendering counter app in Devcards. Also see guide.
Features:
- carry-atom-sync for making Devcards history work seamlessly with Carry
- carry-reagent for rendering UI using Reagent
- carry-logging for logging to console
Blueprint Splitting
See guide.
HOF
Demonstrates how to assemble a blueprint and UI from multiple modules using higher-order functions.
Features:
- carry-reagent for rendering UI using Reagent
Multimethods
Demonstrates how to assemble a blueprint from multiple modules with a help of multimethods.
Features:
- carry-reagent for rendering UI using Reagent
Multimethods & core.match
Demonstrates how to assemble a blueprint from multiple modules with a help of multimethods and core.match
.
Features:
- carry-reagent for rendering UI using Reagent
Composite Apps
See guide.
Subapps
In this project counter app and friend list app instances are "statically" added to the app blueprint. Several helper methods are extracted to make it easy to include any subapp at the time of app instantiation.
Counter List
In this example counter app instances are created and removed dynamically after app is started. Inspired by Elm Architecture v0.16 example.