Code Monkey home page Code Monkey logo

android-template's Introduction

Clean architecture kotlin template ๐Ÿค–

Use this template Pre Merge Checks License Language

A simple Github template that lets you create an Android/Kotlin project and be up and running in a few seconds, Which is suitable for Clean architecture projects.

This template is focused on delivering a project with static analysis and continuous integration already in place.

How to use ๐Ÿ‘ฃ

Just click on Use this template button to create a new repo starting from this template.

Once created don't forget to update the:

Features ๐ŸŽจ

Someone said features? I heared you, I'll find you ๐Ÿ˜‚๐Ÿ˜‚

  • 100% Kotlin-only template.
  • JetPack compose 1.0.0-alpha11.
  • All layers of clean architecture (UI, Presentation, Domain, Data, Device) you may also add (Remote and Cache as needed).
  • Sample Espresso, Instrumentation & JUnit tests.
  • 100% Gradle Kotlin DSL setup.
  • Dependency versions managed via buildSrc.
  • CI Setup with GitHub Actions.
  • Kotlin Static Analysis via ktlint and detekt.
  • Publishing Ready.
  • Issues Template (bug report + feature request).
  • Pull Request Template.

Gradle Setup ๐Ÿ˜

This template is using Gradle Kotlin DSL as well as the Plugin DSL to setup the build.

Dependencies are centralized inside the Dependencies.kt file in the buildSrc folder. This provides convenient auto-completion when writing your gradle files.

Static Analysis ๐Ÿ”

This template is using ktlint with the ktlint-gradle plugin to format your code. To reformat all the source code as well as the buildscript you can run the ktlintFormat gradle task.

This template is also using detekt to analyze the source code, with the configuration that is stored in the detekt.yml file (the file has been generated with the detektGenerateConfig task).

CI โš™๏ธ

This template is using GitHub Actions as CI. You don't need to setup any external service and you should have a running CI once you start using this template.

There are currently the following workflows available:

Publishing ๐Ÿš€

The template is setup to be ready to publish a library/artifact on a Maven Repository. If you're using JitPack, you don't need any further configuration and you can just configure the repo on JitPack. If you're using another repository (MavenCentral/JCenter/etc.), you need to specify the publishing coordinates.

Contributing ๐Ÿค

Feel free to open a issue or submit a pull request for any bugs/improvements.

Original Repo

This is just a modification to the great work of cortinico and the original repo. I customized the repo to my needs for further imporvments.

android-template's People

Contributors

abd3lraouf avatar

Watchers

 avatar

Forkers

mgamale

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.