Skip to content
This repository was archived by the owner on Oct 12, 2020. It is now read-only.

tfiers/zorro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

222 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zorro: a Zotero client for Android


Project status: initial development.

License

The Zorro application and its logo are Copyright © Tomas Fiers, 2019-2020.
Its source code is made available under the AGPLv3 license.

Contributing

Contributions are welcome. Follow the recommendations in this classic blogpost to make sure your pull request gets merged, quickly.

Does the code seem too daunting to start hacking on it? No Android development experience? See the next section.

Understanding the code

The code is based on the recommended Jetpack architecture and uses most Android Architecture Components (view binding, ViewModels and data binding, observable LiveData, a local database with Room, task scheduling with WorkManager, data abstraction through a Repository, navigation with NavController and SafeArgs, and Kotlin niceness such as coroutines, extension functions, and delegated properties).

It also uses Timber for logging; Retrofit as HTTP client; Moshi as JSON parser; and ConstraintLayout, RecyclerView, and Material Design for its UI.

💡 If you don't have experience with these tools (or with Android development in general), I heartily recommend the "Android Kotlin Fundamentals" course, which teaches all of them.

Additionally, the following dependencies are used (these are not taught in the mentioned course):

  • OkHttp (on which Retrofit is built), to insert headers in all HTTP requests.
  • ThreeTenABP, a backport of Java's new util.time.*, to be able to use this great package on older Android versions.

About

Zorro: a Zotero client for Android

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages