⌨️ A tool that gives you a massive head start when building Compose based apps. It saves you from time-consuming setup and configuration

Overview

💻 create-compose-app

latestVersion Twitter: theapache64

A tool that gives you a massive head start when building Compose based apps. It saves you from time-consuming setup and configuration

🛠 Installation

~$ sudo npm install -g create-compose-app

⌨️ Usage

~$ create-compose-app
Choose platform
1) Android
2) Desktop
3) Web
4) Chrome extension

Demo

Android (see template)

  • MVVM
  • Hilt
  • Compose
  • Navigation
  • Logger
  • Typography (with GoogleSans)

Desktop (see template)

  • Architecture (MVVM) with Android-ish structure (SingleActivity)
  • Dependency Injection (Dagger2)
  • Navigation/Routing (Decompose)
  • Launcher Icons (for all platforms)
  • A separate data module
  • Testing (both unit tests and UI tests)
  • Theme
  • Logging (Arbor)
  • Font (GoogleSans)

Web (see template)

  • A basic web counter example

Chrome extension (see template)

  • A simple popup window

✍️ Author

👤 theapache64

Feel free to ping me 😉

🤝 Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Open an issue first to discuss what you would like to change.
  2. Fork the Project
  3. Create your feature branch (git checkout -b feature/amazing-feature)
  4. Commit your changes (git commit -m 'Add some amazing feature')
  5. Push to the branch (git push origin feature/amazing-feature)
  6. Open a pull request

Please make sure to update tests as appropriate.

Show your support

Give a ⭐️ if this project helped you!

Patron Link Buy Me A Coffee

📝 License

Copyright © 2021 - theapache64

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

This README was generated by readgen

You might also like...
Episodie is a TV show time tracker app with unusual design written in kotlin and clean architecture approach. Get to know how much time you spent watching tv shows.
Episodie is a TV show time tracker app with unusual design written in kotlin and clean architecture approach. Get to know how much time you spent watching tv shows.

Episodie Episodie is a TV show time tracker app with unusual design. Get to know how much time you spent watching tv shows. Track easily overall progr

Consuming Kanye West quotes REST API (Kanye as a Service)
Consuming Kanye West quotes REST API (Kanye as a Service)

Kanye Quotes A free REST API for random Kanye West quotes (Kanye as a Service) API

Kalam is an app that gives people a chance to write their stories on the app.
Kalam is an app that gives people a chance to write their stories on the app.

Kalam is an app that gives people a chance to write their stories on the app. This app gives a good story for the story readers and gives good story writers a chance to write their own story

An easy to use android library to let devs know how much internet-data their app is consuming
An easy to use android library to let devs know how much internet-data their app is consuming

EasyAnalytics! an easy to use android library to let developers know how much internet-data their app is consuming. We can identify this as we want ba

Sharkur is a fork of Purpur which adds more configuration and also some optimalization.

Sharkur Sharkur is a fork of Purpur which adds more configuration and also some optimization. API Javadoc Dependency Information Maven repository

simple-flank is a Gradle plugin to use Flank in Android projects with no configuration needed

simple-flank simple-flank is a new gradle plugin with a clear focus: make the setup as simple as possible. Applied to any application or library modul

An android app will start when boot and exit after 1s. Develop for Redmi K40 to enable DC dimming automatically.
An android app will start when boot and exit after 1s. Develop for Redmi K40 to enable DC dimming automatically.

An android app will start when boot and exit after 1s. Develop for Redmi K40 to enable DC dimming automatically.

Android Package Inspector - dynamic analysis with api hooks, start unexported activities and more. (Xposed Module)
Android Package Inspector - dynamic analysis with api hooks, start unexported activities and more. (Xposed Module)

Inspeckage - Android Package Inspector Inspeckage is a tool developed to offer dynamic analysis of Android applications. By applying hooks to function

Quick start with the Google Maps Android API

Please note: This repository is not currently maintained, and is kept for historical purpose only. You can find an up to date tutorial here: https://g

Comments
  • Process fails while removing temporary files in Windows

    Process fails while removing temporary files in Windows

    The project is created successfully but the create-compose-app command fails at Removing temp files... step

    It happens for all the template

    Command line log:

    ? Initializing...
    ??  Downloading template...
    ? Unzipping...
    ? Preparing source and test files (1/2) ...
    ? Verifying file contents (2/2) ...
    ??  Removing temp files...
    Exception in thread "main" java.nio.file.FileSystemException: C:\path\to\compose-chrome-extension-template.zip: The process cannot access the file because it is being used by another process.
    
            at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:92)
            at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
            at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
            at java.base/sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:274)
            at java.base/sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:110)
            at java.base/java.nio.file.Files.deleteIfExists(Files.java:1181)
            at com.github.theapache64.corvetee.Corvette.start(Corvette.kt:147)
            at com.github.theapache64.corvetee.Corvette.start$default(Corvette.kt:55)
            at com.theapache64.createcomposeapp.MainKt.createChromeExtensionApp(Main.kt:119)
            at com.theapache64.createcomposeapp.MainKt.main(Main.kt:47)
    
    opened by mddanishansari 3
  • ./gradlew run is failing

    ./gradlew run is failing

    I have created a project using commands which were mentioned in the readme.

    I am using java version 1.8.0_271. However, I am getting the following error:

    ComposeProjects/DesktopProject/build/generated/source/kapt/main/com/androidbytes/desktopproject/ui/feature/splash/SplashViewModel_Factory.java:16: error: cannot access SplashViewModel
    public final class SplashViewModel_Factory implements Factory<SplashViewModel> {
                                                                  ^
      bad class file: ~/DesktopProject/build/classes/kotlin/main/com/androidbytes/desktopproject/ui/feature/splash/SplashViewModel.class
        class file has wrong version 55.0, should be 52.0
        Please remove or make sure it appears in the correct subdirectory of the classpath.
    
    opened by umangce 2
  • Empty 'com' folder doesn't get deleted for Android project if package name doesn't start with 'com'

    Empty 'com' folder doesn't get deleted for Android project if package name doesn't start with 'com'

    As the title suggests empty com folder should get deleted if the package name doesn't start with com for eg. org.test. This is happening only for Android project.

    It should be deleted from three places main test and androidTest

    In Android Studio it looks something like this

    image

    opened by mddanishansari 1
Releases(2022.12.19)
Owner
theapache64
theapache64
☁️🌤🌧☀ Weather Android application that gives you the weather information of your saved location or any region you are looking for☁️🌤🌧☀

☁️????☀ Weather Android application that gives you the weather information of your saved location or any region you are looking for☁️????☀

Nisa Efendioğlu 4 Apr 6, 2022
Twidere-Android Twidere is a powerful twitter client for Android 1.6+ 1 , which gives you a full Holo experience and nearly full Twitter's feature.

Twidere for Android Material Design ready and feature rich Twitter/Mastodon/Fanfou app for Android 4.1+. Enjoy Fediverse now! Twidere-Android is maint

Twidere Project 2.7k Jan 2, 2023
An Android app that gives you a password generated by a given phrase with a custom algorithm, it also has password and biometric security.

An Android app that gives you a password generated by a given phrase with a custom algorithm, it also has password and biometric security.

Marcos Ariel Paccor 1 May 23, 2022
Java/Kotlin lightweight implementation of RFC-6238 and RFC-4226 to generate and validate time-based one-time passwords (TOTP).

1time Java/Kotlin lightweight implementation of RFC-6238 and RFC-4226 to generate and validate time-based one-time passwords (TOTP). Maven / gradle de

Atlassian Labs 31 Dec 21, 2022
An android app consuming movies api build with Jetpack Compose

Movies App An Android app consuming MovieDb API to display list of movies, built with Compose, MVVM pattern as well as Architecture Components. Min Ap

Ronnie Otieno 18 Dec 14, 2022
An Android base project building on MVVM Architecture Pattern. This can help you build new apps faster

MVVM Explanation If you can't imagine what is MVVM, please read my medium article here first. It can fully explain the revolution of Software architec

Danh Dev 29 Sep 21, 2022
A Frida based tool that traces usage of the JNI API in Android apps.

jnitrace A Frida based tool to trace use of the JNI API in Android apps. Native libraries contained within Android Apps often make use of the JNI API

null 1.1k Jan 7, 2023
Easy setup of static analysis tools for Android and Java projects.

[DEPRECATED] Gradle static analysis plugin ⚠️ A fork of this project is maintained at https://github.com/GradleUp/static-analysis-plugin/ Please migra

Novoda 408 Dec 19, 2022
Display's information about SpaceX crew members and ships by consuming a rest api and storing the data to display when the user is offline.

Space-X App Display's information about SpaceX crew members(look for ‘Crew’ section in rest api docs) and ships (look for ‘Ships’ section in rest api

krishna chaitanya 2 Apr 8, 2022
A powerful cross-platform UI toolkit for building native-quality iOS, Android, and Progressive Web Apps with HTML, CSS, and JavaScript.

Ionic Ionic is an open source app development toolkit for building modern, fast, top-quality cross-platform native and Progressive Web Apps from a sin

Ionic 48.4k Jan 3, 2023