https://github.com/zachcp/simplecomponent
a simple component to show use of D3 from Reagent
https://github.com/zachcp/simplecomponent
Last synced: 26 days ago
JSON representation
a simple component to show use of D3 from Reagent
- Host: GitHub
- URL: https://github.com/zachcp/simplecomponent
- Owner: zachcp
- Created: 2015-12-20T01:20:54.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-12-21T15:38:32.000Z (over 9 years ago)
- Last Synced: 2023-03-23T13:42:30.358Z (about 2 years ago)
- Language: Clojure
- Homepage: http://zachcp.github.io/simplecomponent/
- Size: 132 KB
- Stars: 15
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# simplecomponent
A simple compoenent to use Reagent/Re-frame with d3.js
see http://zachcp.github.io/simplecomponent/
## Overview
If you want to use reagent with D3.js you need to use lifecycle methods.
These can be very non-intuitive to use, somewhat defeating the otherwise
easy-to-use [Reagent](https://holmsand.github.io/reagent/).This project follows the state-management pattern of [re-frame](https://github.com/Day8/re-frame).
Its worth reading the documentationon that project because1. it will get you up and running
2. it has great sections for more advanced topics.I also ended up using these following as references:
1. jszakmeister's [clojurescript, D3, and Reagent](http://www.szakmeister.net/blog/2015/nov/26/clojurescript-d3-and-reagent)
2. nils blum-oests [post on the same topic](http://nils-blum-oeste.net/clojurescripts-reagent-using-props-in-lifecycle-hooks/)
3. the discussion in [this thread](https://groups.google.com/forum/#!searchin/reagent-project/component-did-update/reagent-project/bDIiKdeDqj8/FdiaKRDJFcsJ)## Setup
To get an interactive development environment run:
lein figwheel
and open your browser at [localhost:3449](http://localhost:3449/).
This will auto compile and send all changes to the browser without the
need to reload. After the compilation process is complete, you will
get a Browser Connected REPL. An easy way to try it is:(js/alert "Am I connected?")
and you should see an alert in the browser window.
To clean all compiled files:
lein clean
To create a production build run:
lein cljsbuild once min
And open your browser in `resources/public/index.html`. You will not
get live reloading, nor a REPL.## License
Copyright © 2014 FIXME
Distributed under the Eclipse Public License either version 1.0 or (at your option) any later version.