A mobile client for Elfeed built with React Native and written in ClojureScript.
Elfeed is an excellent RSS reader for Emacs and I was using it daily but now I'm traveling around and I need a basic mobile app. Also, this was a perfect excuse to play a bit with RN and CLJS.
This project uses:
I'm using Docker and Docker Compose in my development environment because I didn't want to install npm, js packages and all the Android libraries in my laptop. I'm not totally comfortable with this way setup and probably it wouldn't fit very well for iOS development, will see.
I use Emacs for development and Genymotion as an Android emulator.
$ script/boot# Start RN packager and a clojure REPL
M-x cider-connect ; localhost ; 7888# Connect to clojure REPL in port 7888
user> (start-figwheel "android")
- Open the app in Genymotion
At this moment, there are almost no tests in the project. The idea is add unit tests for event handlers, where almost all the logic of the app is happening. Later, will see if it's possible to add some kind of tests for views, trying to introduce the idea of snapshot testing, as React Native is doing with Jest.
Running the tests
$ lein doo node test once
Publish on Google Play
- Elfeed: Authentication (auth basic or something more complex)
Elfeed: Mark entry as read App: Update code to new re-frame v0.8 App: Split code in scenes and components
- App: Testing
RN: Change navigation to new navigation experimental RN: Use SwipeableListView to mark an entry as read from the list
- iOS version (I won't work on this because I don't use iOS, but I'm happy to help you if you are interested)
- Version for tablets