:cyclone: A Pokedex app using ViewModel, LiveData, Room and Navigation

Last update: Jun 15, 2022


Kotlin Pokedex

Pokedex app built with Kotlin

Awesome Kotlin Android CI License MIT Say thanks

Download

Go to the releases page to download the latest available apk.

Screenshots

Home Pokedex Pokedex FAB

Pokedex Search Pokedex Generation Pokemon Info - About

Pokemon Info - Base Stats Pokemon Info - Evolution News Detail

Development Roadmap

Features

  • Home
  • Pokedex
  • Pokedex - FAB
  • Pokedex - Search
  • Pokedex - Generation
  • Pokemon Info
  • Pokemon Info - About
  • Pokemon Info - Base Stats
  • Pokemon Info - Evolution
  • News Detail

Thanks

Design

Other Pokedex Projects

Contributors


@zsmb13

@aesean

@STFBEE

@CorneilleEdi

@naufalprakoso

You

Author


@mrcsxsiq

License

All the code available under the MIT license. See LICENSE.

MIT License

Copyright (c) 2019 Marcos Paulo Farias

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

GitHub

https://github.com/mrcsxsiq/Kotlin-Pokedex
Comments
  • 1. Jetpack compose

    Hello @mrcsxsiq . Nice job, congrats man.

    Lets to add jetpack compose in some screens. It is a new concept and would be very interesting to see it works in a real application.

    Reviewed by francismariano at 2020-01-10 12:11
  • 2. Refactor code based on review

    I've reviewed this code for the following article: https://zsmb.co/lets-review-pokedex/

    These are the changes I'm suggesting in that article, take any or all of them as you wish! :)

    Reviewed by zsmb13 at 2020-01-07 14:19
  • 3. Found a plagiarize code..?

    I found this repository and it seems the owner changed and removed every copyright from the sources.

    https://github.com/thinktocode/PokeDex

    I've made an issue for arranging the problem, but I've got a block from the owner. 😭

    Reviewed by rurimo at 2020-12-22 10:36
  • 4. Bump coordinatorlayout from 1.1.0 to 1.2.0

    ⚠️ Dependabot is rebasing this PR ⚠️

    Rebasing might not happen immediately, so don't worry if this takes some time.

    Note: if you make any changes to this PR yourself, they will take precedence over the rebase.


    Bumps coordinatorlayout from 1.1.0 to 1.2.0.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-05-12 04:53
  • 5. Bump glide from 4.12.0 to 4.13.2

    Bumps glide from 4.12.0 to 4.13.2.

    Release notes

    Sourced from glide's releases.

    Glide v4.13.2

    Bugs

    • Update AVIF dependency to fix proguard stripping code erroneously (bumptech/glide#4761, e2b488c30d27138fecc7a3adc353c66b3756147f)

    Glide v4.13.1

    Bugs

    Glide 4.13.0

    Features

    • Add an integration library to support decoding AVIF (3fd8e777e2be6a3fedc5f5c5f688970a212a285f, f5e78ed03c99a9804285360b36b04d3089c80cff, 2b52437cd52bbacf0376d84aa2eec5b63ba53ac4)

    Bugs

    Deprecations

    Behavior Changes

    Breaking Changes

    Build Changes

    Commits
    • 3c1e7b9 Bump version to 4.13.2.
    • eec04c2 avif integration: Update libavif dependency to a319893
    • 6e51c13 Bump version to 4.13.1
    • 96e190b avif: Add annotationProcessor dependency
    • 1a6fa92 Merge pull request #4738 from sjudd:bump_version_to_4.13.0
    • 878d148 Bump version to 4.13.0
    • 2b52437 Open source the AVIF Integration
    • f5e78ed Internal change
    • 979459c Add experimental ImageDecoder based animated webp decoders to Glide.
    • f83cc27 Convert image decoder helper class into a OnHeaderDecoded listener.
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-05-12 04:25
  • 6. Bump mockk-agent-jvm from 1.12.0 to 1.12.4

    Bumps mockk-agent-jvm from 1.12.0 to 1.12.4.

    Release notes

    Sourced from mockk-agent-jvm's releases.

    V1.12.4

    • Add a Junit 4 rule, thanks @​jonapoul
    • Recognize atLeast = 0, thanks @​uyw4687
    • Revert the latest change about logging messages in withArg calls as it seems community usage was being impacted by the change, thanks @​romrell4 for the revert
    • Added the @​ConfirmVerification extension, fixes #215, #334 and related issues
    • Add languageVersion = 1.4 and the kotlin binary compatibility validator plugin
    • Upgrade Objenesis to 3.2

    V1.12.3

    V1.12.2

    V1.12.1

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-05-12 02:22
  • 7. Bump navigation-ui-ktx from 2.3.5 to 2.4.1

    Bumps navigation-ui-ktx from 2.3.5 to 2.4.1.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-04-04 16:20
  • 8. Bump kotlin-gradle-plugin from 1.5.31 to 1.6.20

    Bumps kotlin-gradle-plugin from 1.5.31 to 1.6.20.

    Release notes

    Sourced from kotlin-gradle-plugin's releases.

    Kotlin 1.6.20-RC2

    Changelog

    Compiler

    Fixes

    • KT-51352 "ClassCastException: class ScopeCoroutine cannot be cast to class Iterable" caused by coroutines and context receivers
    • KT-51271 "ArrayIndexOutOfBoundsException: Index 3 out of bounds for length 3" with inlining of context function
    • KT-50520 "NPE: containingDeclaration.ac…lDeclarationType.REGULAR) must not be null" with implicit type on self-referencing lambda in a builder
    • KT-51471 Native: incorrect debug information when inheriting suspend fun invoke implementation
    • KT-51353 IncompatibleClassChangeError: Expected non-static field com.soywiz.korim.color.Colors.BLACK

    Native

    • KT-37368 Native compiler fails to compile big projects

    Native. Runtime

    Tools. JPS

    • KT-51434 Language version 1.7 is absent in Kotlin Compiler settings

    Tools. Gradle

    • KT-51588 Restoring from build cache breaks Kotlin incremental compilation

    Checksums

    File Sha256
    kotlin-compiler-1.6.20-RC2.zip 038da980d17432a44c41299b528b81040ca2578b634b0fd066661b45871711f2
    kotlin-native-linux-x86_64-1.6.20-RC2.tar.gz d8ada91551ad425697966c128725757d6c032eb25f0c58e737783d20914751c4
    kotlin-native-macos-x86_64-1.6.20-RC2.tar.gz a6e85afd0a920ab7d1c5dea6e5153515ecf98aafbbe60e6151e181455e6583d7
    kotlin-native-macos-aarch64-1.6.20-RC2.tar.gz 60d9b37177180997e2c42a26214b36242ccace62fa3af08091c8ed7df80410e0
    kotlin-native-windows-x86_64-1.6.20-RC2.zip 57da7b6e3438ffc44fe0e99846efa7fed1c458d74cf00d504f2583c4d99c41c8

    Kotlin 1.6.20-RC

    Changelog

    Compiler

    • KT-51302 Kotlin/Native 1.6.20-M1 compiler fails because of assertion in NativeAnnotationImplementationTransformer
    • KT-51148 "AssertionError: At this stage there should be no remaining variables with proper constraints" caused by two type parameters
    • KT-50970 Kotlin/Native: use arm instruction set instead of thumb-2 for iosArm32 and watchosArm32 targets
    • KT-50843 Kotlin/Native: LLVM constant merge pass does not work for Kotlin constants
    • KT-51157 JVM / IR: "IndexOutOfBoundsException: Index: 1, Size: 1" caused by interface hierarchy and UInt method parameter

    ... (truncated)

    Changelog

    Sourced from kotlin-gradle-plugin's changelog.

    1.6.10

    Android

    • KT-49798 [MPP] [Android] AGP 7.1.0+ android target publications leak 'AgpVersionAttr' attribute

    Compiler

    Performance Improvements

    • KT-49821 Optimize LazyClassMemberScope#getContributedDescriptors: use nameFilter

    Fixes

    • KT-49833 java.lang.NullPointerException caused by accidental newline in package directive
    • KT-49838 Type inference fails on 1.6.0: Cannot use 'CapturedType(*)' as reified type parameter
    • KT-49752 Regression in method return type inference: "IllegalStateException: Expected some types"
    • KT-49876 Kotlin/Native: cross-compilation of Linux static library is broken in Windows in 1.6.0
    • KT-49792 Atomicfu: "standalone invocation of kotlinx.atomicfu.AtomicInt::compareAndSet that was not traced to previous field load" with suspend function
    • KT-49834 Coroutine method transformer generates invalid locals table.
    • KT-49441 Support friend modules in Kotlin Native
    • KT-49248 K/N: Symbol with IrSimpleFunctionSymbolImpl is unbound after 1.5.30
    • KT-49651 Inconsistent compiler APIs for repeatable annotations
    • KT-49168 JVM IR: IndexOutOfBoundsException with fun interface + suspend function as SAM method
    • KT-49573 No annotated types, compiler emits "Annotated types are not supported in typeOf"
    • KT-47192 Build Fake Overrides for internal members of classes from friend module
    • KT-48673 IR: IllegalStateException for usage of internal member declared in a superclass in another module

    JavaScript

    • KT-47811 KJS / IR: "ClassCastException" when using suspend function in console.log

    Language Design

    • KT-49868 Support language version 1.3 in Kotlin 1.6.10

    Libraries

    • KT-50173 Different behavior of Regex escapeReplacement function in JVM and JS

    Tools. Android Extensions

    • KT-49799 NullPointerException when using kotlin-android-extensions synthetic after update to Kotlin 1.6.0

    Tools. Compiler Plugins

    • KT-50005 jvm-abi-gen plugin: do not change the declaration order in generated jars
    • KT-49726 JVM/IR: "IllegalArgumentException: Null argument in ExpressionCodegen for parameter VALUE_PARAMETER": Serialization with sealed class as type parameter

    Tools. Gradle

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-04-04 02:24
  • 9. Bump mockk-agent-jvm from 1.12.0 to 1.12.3

    Bumps mockk-agent-jvm from 1.12.0 to 1.12.3.

    Release notes

    Sourced from mockk-agent-jvm's releases.

    V1.12.3

    V1.12.2

    V1.12.1

    Commits
    • 27ba708 Prepare for release v1.12.3
    • 5a4ccff Merge pull request #785 from npars/mock-invisible-parent
    • 9741290 Support mocking non-accessible parent methods
    • c9c842b Update README.md
    • 674c767 Merge pull request #783 from glefloch/doc/add-quarkus-support
    • 01915b2 Add quarkus support section
    • 61adb51 Merge pull request #782 from hoisie/javax-lookup
    • 712952c Avoid Lookup strategy when constructing javax classes
    • 6d20a71 Convert to Kotlin
    • 531202c Exclude kotlin 1.4 from newer JDK builds
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-03-01 02:21
  • 10. Bump room-compiler from 2.4.0-alpha03 to 2.5.0-alpha01

    Bumps room-compiler from 2.4.0-alpha03 to 2.5.0-alpha01.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-02-24 02:23
  • 11. Bump room-runtime from 2.4.0-alpha03 to 2.5.0-alpha01

    Bumps room-runtime from 2.4.0-alpha03 to 2.5.0-alpha01.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-02-24 02:22
  • 12. Bump kotlin-gradle-plugin from 1.6.21 to 1.7.0

    Bumps kotlin-gradle-plugin from 1.6.21 to 1.7.0.

    Release notes

    Sourced from kotlin-gradle-plugin's releases.

    Kotlin 1.7.0

    Changelog

    Analysis API. FIR

    • KT-50864 Analysis API: ISE: "KtCallElement should always resolve to a KtCallInfo" is thrown on call resolution inside plusAssign target
    • KT-50252 Analysis API: Implement FirModuleResolveStates for libraries
    • KT-50862 Analsysis API: do not create use site subsitution override symbols

    Analysis API. FIR Low Level API

    • KT-50729 Type bound is not fully resolved
    • KT-50728 Lazy resolve of extension function from 'kotlin' package breaks over unresolved type
    • KT-50271 Analysis API: get rid of using FirRefWithValidityCheck

    Backend. Native. Debug

    • KT-50558 K/N Debugger. Error is not displayed in variables view for catch block

    Compiler

    New Features

    • KT-26245 Add ability to specify generic type parameters as not-null
    • KT-45165 Remove JVM target version 1.6
    • KT-27435 Allow implementation by delegation to inlined value of inline class
    • KT-47939 Support method references to functional interface constructors
    • KT-50775 Support IR partial linkage in Kotlin/Native (disabled by default)
    • KT-51737 Kotlin/Native: Remove unnecessary safepoints on watchosArm32 and iosArm32 targets
    • KT-44249 NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER with type usage in higher order function

    Performance Improvements

    • KT-48233 Switching to JVM IR backend increases compilation time by more than 15%
    • KT-51699 Kotlin/Native: runtime has no LTO in debug binaries
    • KT-34466 Use optimized switch over enum only when all entries are constant enum entry expressions
    • KT-50861 FIR: Combination of array set convention and plusAssign works exponentially
    • KT-47171 For loop doesn't avoid boxing with value class iterators (JVM)
    • KT-29199 'next' calls for iterators of merged primitive progressive values are not specialized
    • KT-50585 JVM IR: Array constructor loop should use IINC
    • KT-22429 Optimize 'for' loop code generation for reversed arrays
    • KT-50074 Performance regression in String-based 'when' with single equality clause
    • KT-22334 Compiler backend could generate smaller code for loops using range such as integer..array.size -1
    • KT-35272 Unnecessary null check on unsafe cast after not-null assertion operator
    • KT-27427 Optimize nullable check introduced with 'as' cast

    Fixes

    • KT-46762 Finalize support for jspecify
    • KT-51499 @file:OptIn doesn't cover override methods

    ... (truncated)

    Changelog

    Sourced from kotlin-gradle-plugin's changelog.

    1.7.0

    Analysis API. FIR

    • KT-50864 Analysis API: ISE: "KtCallElement should always resolve to a KtCallInfo" is thrown on call resolution inside plusAssign target
    • KT-50252 Analysis API: Implement FirModuleResolveStates for libraries
    • KT-50862 Analsysis API: do not create use site subsitution override symbols

    Analysis API. FIR Low Level API

    • KT-50729 Type bound is not fully resolved
    • KT-50728 Lazy resolve of extension function from 'kotlin' package breaks over unresolved type
    • KT-50271 Analysis API: get rid of using FirRefWithValidityCheck

    Backend. Native. Debug

    • KT-50558 K/N Debugger. Error is not displayed in variables view for catch block

    Compiler

    New Features

    • KT-26245 Add ability to specify generic type parameters as not-null
    • KT-45165 Remove JVM target version 1.6
    • KT-27435 Allow implementation by delegation to inlined value of inline class
    • KT-47939 Support method references to functional interface constructors
    • KT-50775 Support IR partial linkage in Kotlin/Native (disabled by default)
    • KT-51737 Kotlin/Native: Remove unnecessary safepoints on watchosArm32 and iosArm32 targets
    • KT-44249 NEW_INFERENCE_NO_INFORMATION_FOR_PARAMETER with type usage in higher order function

    Performance Improvements

    • KT-48233 Switching to JVM IR backend increases compilation time by more than 15%
    • KT-51699 Kotlin/Native: runtime has no LTO in debug binaries
    • KT-34466 Use optimized switch over enum only when all entries are constant enum entry expressions
    • KT-50861 FIR: Combination of array set convention and plusAssign works exponentially
    • KT-47171 For loop doesn't avoid boxing with value class iterators (JVM)
    • KT-29199 'next' calls for iterators of merged primitive progressive values are not specialized
    • KT-50585 JVM IR: Array constructor loop should use IINC
    • KT-22429 Optimize 'for' loop code generation for reversed arrays
    • KT-50074 Performance regression in String-based 'when' with single equality clause
    • KT-22334 Compiler backend could generate smaller code for loops using range such as integer..array.size -1
    • KT-35272 Unnecessary null check on unsafe cast after not-null assertion operator
    • KT-27427 Optimize nullable check introduced with 'as' cast

    Fixes

    • KT-46762 Finalize support for jspecify
    • KT-51499 @​file:OptIn doesn't cover override methods
    • KT-52037 FIR: add error in 1.7.0 branch if run with non-compatible plugins

    ... (truncated)

    Commits
    • e4b2a81 Add changelog for 1.7.0
    • ec73f40 Fix Gradle plugin inputs validation issue
    • 5f3b1e3 Fix IDEA import error in 'jps-plugin' module
    • a6df421 Add changelog for 1.7.0-RC2
    • 79cabc5 Bump klib ABI version
    • b16d44a [Parcelize] Remove sources of FIR parcelize plugin
    • 9aef691 [FE 1.0] Check callable reference return type safety during resolution
    • 1adc50b Revert "[FE 1.0] Take care callable reference candidates with recursive candi...
    • 1df9fea Add test for KT-50498
    • 1a8e994 [FE 1.0] Take care standalone lambdas during updating types in the builder in...
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-06-10 02:26
  • 13. Bump room-runtime from 2.4.0-alpha03 to 2.5.0-alpha02

    Bumps room-runtime from 2.4.0-alpha03 to 2.5.0-alpha02.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-06-02 02:24
  • 14. Bump room-compiler from 2.4.0-alpha03 to 2.5.0-alpha02

    Bumps room-compiler from 2.4.0-alpha03 to 2.5.0-alpha02.

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    Reviewed by dependabot[bot] at 2022-06-02 02:24
ViewModel-Lifecycle - ViewModel Lifecycle allows you to track and observe Jetpack ViewModel's lifecycle changes
ViewModel-Lifecycle - ViewModel Lifecycle allows you to track and observe Jetpack ViewModel's lifecycle changes

ViewModel Lifecycle ?? ViewModel Lifecycle allows you to track and observe Jetpa

Jun 19, 2022
Viewmodel-lifecycle - ViewModel Lifecycle allows you to track and observe Jetpack ViewModel's lifecycle changes
Viewmodel-lifecycle - ViewModel Lifecycle allows you to track and observe Jetpack ViewModel's lifecycle changes

ViewModel Lifecycle ?? ViewModel Lifecycle allows you to track and observe Jetpa

Feb 6, 2022
❤️ A sample Marvel heroes application based on MVVM (ViewModel, Coroutines, LiveData, Room, Repository, Koin) architecture.
❤️ A sample Marvel heroes application based on MVVM (ViewModel, Coroutines, LiveData, Room, Repository, Koin)  architecture.

MarvelHeroes MarvelHeroes is a demo application based on modern Android application tech-stacks and MVVM architecture. Fetching data from the network

Jun 13, 2022
In this single activity app. i was trying to practice on ViewModel and Livedata

CalwithViewModel In this single activity app. i was trying to practice on ViewModel and Livedata Min Api Level : 19 Setup Requirements Android device

Feb 16, 2022
🔥采用 Kotlin 语言编写,专为新手入门准备的项目。单Activity多Fragment,MVVM,ViewModel + LiveData + Retrofit + 协程, ViewBinding等等。拒绝过度设计和封装,项目结构清晰,代码简洁优雅。
🔥采用 Kotlin 语言编写,专为新手入门准备的项目。单Activity多Fragment,MVVM,ViewModel + LiveData + Retrofit + 协程, ViewBinding等等。拒绝过度设计和封装,项目结构清晰,代码简洁优雅。

前言 学习Kotlin有一段时间了,想写一个项目总结收获,就有了这个可能是东半球最简洁的玩安卓客户端,在此感谢玩Android 的开放API。 简介 采用 Kotlin 语言编写,专为新手入门准备的项目。单Activity多Fragment,MVVM,ViewModel + LiveData + R

Jun 20, 2022
Exercício utilizando ViewModel e LiveData

Unscramble App Starter code for Android Basics codelab - Store the data in a ViewModel Unscramble is a single player game app that displays scrambled

Nov 22, 2021
Enemigos5 - Recyclerview-ViewModel-LiveData on Android with Kotlin

Enemigos5 Recyclerview-VievModel-LiveData on Android with Kotlin. Es muy simple:

Feb 6, 2022
A simple ToDo Task Manager App made in Kotlin using Room DataBase.
A simple ToDo Task Manager App made in Kotlin using Room DataBase.

ToDo List App ?? About A simple To-Do List Management App that helps you get things done. Built with Kotlin, it helps the user to add their task. User

Apr 11, 2022
App built using Kotlin, Dagger Hilt, Room Database, Coroutines, Flow, AndroidX Glance, WorkManager, Coil etc.
App built using Kotlin, Dagger Hilt, Room Database, Coroutines, Flow, AndroidX Glance, WorkManager, Coil etc.

An article sharing platform where you can personalize, subscribe to your favorite topics, get daily-read reminders, etc. App built using Kotlin, Dagger Hilt, Room Database, Coroutines, Flow, AndroidX Glance, WorkManager, Coil etc.

Jun 16, 2022
Simple event library to communicate between Activity/Fragment and ViewModel

Setup dependencies { implementation "com.github.skgmn:viewmodelevent:1.1.0" } If you don't know how to access to GitHub Packges, please refer to

Apr 6, 2022
Space x app fetching data from api using apollographql, databinding, navigation components and hilt for DI.
Space x app fetching data from api using apollographql, databinding, navigation components and hilt for DI.

Space-X Space-X is an android application that displays the list of launches from the Space-X API using ApolloGraphql inclusive of their launch site a

Jun 7, 2022
Starter code for Android Basics codelab - Store the data in a ViewModel

Unscramble App =================================== Starter code for Android Basics codelab - Store the data in a ViewModel Unscramble is a single pla

Nov 19, 2021
Starter code for Android Basics codelab - Store the data in a ViewModel

Unscramble App Starter code for Android Basics codelab - Store the data in a Vie

Dec 29, 2021
Codelab ViewModel ViewModelFactory

ViewModel and ViewModelFactory - Starter Code Use as starter code for the ViewModel codelab. Introduction This starter app is a two player game, Guess

Jan 17, 2022
Explore-KiiT-App - An app to simplify the complicated website navigation and keep track of Attendance
Explore-KiiT-App - An app to simplify the complicated website navigation and keep track of Attendance

KiiT Explore App "An app to simplify the complicated website navigation and keep

Apr 6, 2022
Jun 17, 2022
Sample shoe inventory app with navigation.

README Template Below is a template provided for use when building your README file for students. Project Title Project description goes here. Getting

Dec 3, 2021
Modular Android architecture which showcase Kotlin, MVVM, Navigation, Hilt, Coroutines, Jetpack compose, Retrofit, Unit test and Kotlin Gradle DSL.

SampleCompose Modular Android architecture which showcase Kotlin, MVVM, Navigation, Hilt, Coroutines, Jetpack compose, Retrofit, Unit test and Kotlin

Apr 2, 2022