Skip to content

Github client written in functional style using Arrow library

Notifications You must be signed in to change notification settings

dobrowins/arrow-git

Repository files navigation

ArrowGit

Example project showing how to use Arrow to build native Android applications. Simplest possible github client.

Build with clean architecture in mind, kotlin only. Frameworks used:

  • Arrow
  • Retrofit
  • Coroutines
  • Toothpick for DI
  • Moxy for MVP
  • Cicerone for navigation
  • PaperDB for persistence

It may not be purely functional project, a lot of improvements needed and will be done while I'd use Arrow in production on daily basis — yet let me tell you I enjoy using this library so much. Agility that your code gets when you using functional programming concepts is beyond reach by any other means. The height of abstraction which can be implemented for you to think about your code is crazily handy — you just never knew this if you didn't try yet.

One con though — code could get slightly less readable and extremely confusing for your colleagues not familiar with fp, BUT — use it as opportunity to teach them about it. Why wouldn't you spend some time to make their life better?

About

Github client written in functional style using Arrow library

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages