Udacity Android Developer Nanodegree Program - Capstone project

A pocket helper for all comic lovers! The application contains a plenty of features which can help users to manage their personal comic collection, browse the latest published issues and track the release dates of all favorite volumes. Also Comicser has a built-in search feature which allows users to load and browse some additional comic info like volume descriptions and character profiles.

All comic related data provided by Comic Vine API.


Installation instructions

  • Clone this repository using git clone [email protected]:djkovrik/Comicser.git command
  • Add API_KEY into your gradle.properties file (you can obtain a new API key here)
  • Now you can build and install release version of the app using installRelease gradle task


Common Project Requirements

Core Platform Development

  • App integrates a third-party library.
  • App validates all input from servers and users. If data does not exist or is in the wrong format, the app logs this fact and does not crash.
  • App includes support for accessibility. That includes content descriptions, navigation using a D-pad, and, if applicable, non-audio versions of audio cues.
  • App keeps all strings in a strings.xml file and enables RTL layout switching on all layouts.
  • App provides a widget to provide relevant information to the user on the home screen.

Google Play Services

  • App integrates two or more Google services. Google service integrations can be a part of Google Play Services or Firebase.
  • Each service imported in the build.gradle is used in the app.
  • If Analytics is used, the app creates only one analytics instance.

Material Design

  • App theme extends AppCompat.
  • App uses an app bar and associated toolbars.
  • App uses standard and simple transitions between activities.


  • App builds from a clean repository checkout with no additional configuration.
  • App builds and deploys using the installRelease Gradle task.
  • App is equipped with a signing configuration, and the keystore and passwords are included in the repository. Keystore is referred to by a relative path.
  • All app dependencies are managed by Gradle.

Data Persistence

  • App stores data locally either by implementing a ContentProvider OR using Firebase Realtime Database. No third party frameworks nor Room Persistence Library may be used.
  • If it regularly pulls or sends data to/from a web service or API, app updates data in its cache at regular intervals using a SyncAdapter or JobDispacter.
  • App uses a Loader to move its data to its views.


Udacity Android Developer Nanodegree - Capstone project.

Comicser Info

⭐ Stars 12
🔗 Source Code github.com
🕒 Last Update a year ago
🕒 Created 4 years ago
🐞 Open Issues 0
➗ Star-Issue Ratio Infinity
😎 Author djkovrik