/generator-andy

Andy helps you to quickly create a well configured, well behaved Android application (and project libraries too!). It's the spiritual successor to Android KickstartR project but updated to the modern times!

Primary LanguageJavaScriptMIT LicenseMIT

Andy

Build Status Dependency Status devDependency Status

Introduction

NOTE: Currently Andy is in heavy development! It's not finished and stable by any means, so expect a lot of bugs and nasty things! You've been warned, pal!

Let's think about how we start a new Android project:

  1. Open Android Studio.
  2. Fill the fields (application name, package name…)
  3. Select what support libraries do you want.
  4. Wait 'till Android Studio indexes everything.
  5. Start editing build.gradle to add dependencies, then your custom deploy code and configurations (and scratch your head thinking why some things don't work as expected!)…
  6. Start coding!

Introducing… ANDY!

Andy helps you to quickly create a well configured, well behaved Android application (including support for Android TV, Android Wear, Glass and project libraries too!). It's the spiritual successor to Android KickstartR project but updated to the modern times!

With Andy you have de facto the following features:

  • It will download automatically all required SDKs and Support Libraries as necessary because it's configured to use the great SDK Manager Plugin written by the brave and the bold Jake Warthon!
  • It will create automatically all androidTest, debug and release directories! And… as it creates an androidTest directory, it includes Expresso by default!
  • It creates a version.properties file to update your app version easily!
  • It configures gradle to display a dialog (or password prompt) when signing your application (as Tim Rodes has described in this great post!).
  • It enables by default the gradle daemon to speed things up when compiling from terminal (Android Studio enables this by default).
  • It generates a properly .gitignore file.
  • More to come!

Andy is built using Yeoman, a fantastic tool for creating scaffolds for Web and whatever application you could imagine of!

Getting Started

Note: If you're planning to contribute refer to Installation for devs instead!

Installation

As Andy is a Yeoman plugin, it's mandatory to install first Yeoman if you didn't do it before:

$ npm install -g yo

Once the step before is finished, you can install Andy properly:

npm install -g generator-andy

Installation for Devs

As Andy is a Yeoman plugin, it's mandatory to install first Yeoman if you didn't do it before:

$ npm install -g yo

Clone this repository and cd into it:

$ git clone git@github.com:ViewsForAndroid/generator-andy.git && cd generator-andy

Link it:

$ npm link

Now you can use yo andy as usual!

Usage

Create a new directory where you want to put your application code and cd into it, then call Andy:

$ yo andy

Generators

By default Andy includes the following generators:

Mobile

Create a mobile application!

Finish this section!

Wear

Create a wear application!

Finish this section!

Glass

Create a glass application!

Finish this section!

Library

Create a library component!

Finish this section!

ToDo

There are a lot of things to do, but for now the most important ones are:

  • Finish current iteration for generating a complete application project.
  • Write the library generator and make it composable with the app generator.
  • Write properly tests!
  • Create new generators based on Android TV, Android Wear and Glass.

Contributions

Pull requests and issues are very welcome! Keep in mind that main development is done in the develop branch!

Acknowledgements

This project is partially inspired by the work done by Groupsky who started his own generator-android project.

Creator

Aldo Borrero González – aldo@aldoborrero.com

License

Andy source code is released under the MIT License!