├── .gitignore ├── LICENSE ├── README.md ├── gradle.properties ├── gradle.properties.example ├── gradle ├── libs.versions.toml └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── image └── Scratchify.jpg ├── sample ├── .gitignore ├── build.gradle.kts ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── gsrathoreniks │ │ └── sample │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── gsrathoreniks │ │ │ └── sample │ │ │ ├── MainActivity.kt │ │ │ └── ui │ │ │ └── theme │ │ │ ├── Color.kt │ │ │ ├── Theme.kt │ │ │ └── Type.kt │ └── res │ │ ├── drawable │ │ ├── ic_launcher_background.xml │ │ └── ic_launcher_foreground.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ └── values │ │ ├── colors.xml │ │ ├── strings.xml │ │ └── themes.xml │ └── test │ └── java │ └── com │ └── gsrathoreniks │ └── sample │ └── ExampleUnitTest.kt ├── scratchify ├── build.gradle.kts └── src │ ├── androidMain │ ├── AndroidManifest.xml │ └── kotlin │ │ └── com │ │ └── gsrathoreniks │ │ └── scratchify │ │ └── api │ │ └── haptic │ │ └── HapticFeedbackManager.android.kt │ ├── commonMain │ └── kotlin │ │ └── com │ │ └── gsrathoreniks │ │ └── scratchify │ │ ├── api │ │ ├── ScratchGridTracker.kt │ │ ├── Scratchify.kt │ │ ├── ScratchifyController.kt │ │ ├── config │ │ │ ├── BrushShape.kt │ │ │ ├── ScratchifyAnimationConfig.kt │ │ │ ├── ScratchifyBrushConfig.kt │ │ │ ├── ScratchifyConfig.kt │ │ │ └── ScratchifyHapticConfig.kt │ │ └── haptic │ │ │ └── HapticFeedbackManager.kt │ │ └── internal │ │ └── extension │ │ ├── ModifierExt.kt │ │ └── OffsetExt.kt │ └── iosMain │ └── kotlin │ └── com │ └── gsrathoreniks │ └── scratchify │ └── api │ └── haptic │ └── HapticFeedbackManager.ios.kt └── settings.gradle.kts /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/README.md -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle.properties.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/gradle.properties.example -------------------------------------------------------------------------------- /gradle/libs.versions.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/gradle/libs.versions.toml -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/gradlew.bat -------------------------------------------------------------------------------- /image/Scratchify.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/image/Scratchify.jpg -------------------------------------------------------------------------------- /sample/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /sample/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/build.gradle.kts -------------------------------------------------------------------------------- /sample/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/proguard-rules.pro -------------------------------------------------------------------------------- /sample/src/androidTest/java/com/gsrathoreniks/sample/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/androidTest/java/com/gsrathoreniks/sample/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /sample/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /sample/src/main/java/com/gsrathoreniks/sample/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/java/com/gsrathoreniks/sample/MainActivity.kt -------------------------------------------------------------------------------- /sample/src/main/java/com/gsrathoreniks/sample/ui/theme/Color.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/java/com/gsrathoreniks/sample/ui/theme/Color.kt -------------------------------------------------------------------------------- /sample/src/main/java/com/gsrathoreniks/sample/ui/theme/Theme.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/java/com/gsrathoreniks/sample/ui/theme/Theme.kt -------------------------------------------------------------------------------- /sample/src/main/java/com/gsrathoreniks/sample/ui/theme/Type.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/java/com/gsrathoreniks/sample/ui/theme/Type.kt -------------------------------------------------------------------------------- /sample/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/drawable/ic_launcher_background.xml -------------------------------------------------------------------------------- /sample/src/main/res/drawable/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/drawable/ic_launcher_foreground.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/main/res/values/themes.xml -------------------------------------------------------------------------------- /sample/src/test/java/com/gsrathoreniks/sample/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/sample/src/test/java/com/gsrathoreniks/sample/ExampleUnitTest.kt -------------------------------------------------------------------------------- /scratchify/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/build.gradle.kts -------------------------------------------------------------------------------- /scratchify/src/androidMain/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/androidMain/AndroidManifest.xml -------------------------------------------------------------------------------- /scratchify/src/androidMain/kotlin/com/gsrathoreniks/scratchify/api/haptic/HapticFeedbackManager.android.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/androidMain/kotlin/com/gsrathoreniks/scratchify/api/haptic/HapticFeedbackManager.android.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/ScratchGridTracker.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/ScratchGridTracker.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/Scratchify.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/Scratchify.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/ScratchifyController.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/ScratchifyController.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/BrushShape.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/BrushShape.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/ScratchifyAnimationConfig.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/ScratchifyAnimationConfig.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/ScratchifyBrushConfig.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/ScratchifyBrushConfig.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/ScratchifyConfig.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/ScratchifyConfig.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/ScratchifyHapticConfig.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/config/ScratchifyHapticConfig.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/haptic/HapticFeedbackManager.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/api/haptic/HapticFeedbackManager.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/internal/extension/ModifierExt.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/internal/extension/ModifierExt.kt -------------------------------------------------------------------------------- /scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/internal/extension/OffsetExt.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/commonMain/kotlin/com/gsrathoreniks/scratchify/internal/extension/OffsetExt.kt -------------------------------------------------------------------------------- /scratchify/src/iosMain/kotlin/com/gsrathoreniks/scratchify/api/haptic/HapticFeedbackManager.ios.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/scratchify/src/iosMain/kotlin/com/gsrathoreniks/scratchify/api/haptic/HapticFeedbackManager.ios.kt -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gsrathoreniks/Scratchify/HEAD/settings.gradle.kts --------------------------------------------------------------------------------