generator-android-kotlin-mvvm

1.8.3 • Public • Published

Code Base Generator for Android Project

A Boilerplate code generator for creating Android project. Using fully Kotlin and MVVM pattern that refer to Android Jetpack. Because Im tired to setup Dagger and other stuffs everytime initializing a new project. This boilerplate using PokéAPI for sample list.

npm version Dynamic JSON Badge Dynamic JSON Badge Dynamic JSON Badge Dynamic JSON Badge Dynamic JSON Badge

What's Included:

TODO List:

  • [ ] Offline First (using Room and paging lib)
  • [x] Add Example Usage of Fragment
  • [ ] Create Documentation Code Snippet
  • [x] Add example for using Coroutines
  • [ ] Create Unit Test

How To Use

Install yeoman using NPM

npm install -g yo

Create your project directory

mkdir MyNewApp
cd MyNewApp/

Install generator using NPM

npm install -g generator-android-kotlin-mvvm

Run Generator using Yeoman

yo android-kotlin-mvvm

Open project using Android Studio, build, and done!

Notes

Make sure you are using java version 17 before try to sync/build the source. Configure it at android studio -> file -> project structure -> SDK location -> gradle settings -> gradle JDK

Testing Local Database Migration

notes: right now, room is configured but not used for default.

This boilerplate using Room to store Local Database, to handle each migration you can refer to existing sample. In this sample we add new column in existing table.

  • After first project build, make sure database schemas generated for 1st version, it should be located in YOUR_PROJECT_DIR\app\schemas\YOUR_PACKAGE_PATH.data.AppDatabase\1.json, if its not exist, try to rebuild the project.

  • do changes on this 3 files:

  1. AppDatabase.kt

change version number from 1 to 2. (Migration query has been included, MIGRATION_1_2)

  1. LocalPokemon.kt

since we adding column, we need update the entity with the new column.

  1. AppModule.kt
  • add migration query to the database builder, for details you can also check the TODOs.

  • then rebuild the project, new schema version should be generated, 2.json

  • go to MigrationTest.kt and run test using device or emulator.

Package Sidebar

Install

npm i generator-android-kotlin-mvvm

Weekly Downloads

1

Version

1.8.3

License

ISC

Unpacked Size

456 kB

Total Files

90

Last publish

Collaborators

  • adiandrea