# sinasamaki

Compose delightful Android apps

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Made in Compose: Airbnb Month Picker Dial

DevFeed: [Made in Compose: Airbnb Month Picker Dial](<https://devfeed.tech/articles/made-in-compose-airbnb-month-picker-dial-25790.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/made-in-compose-airbnb-month-picker-dial/>)

Author: sinasamaki

Published: 2026-04-17T12:55:42Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [Library](<https://devfeed.tech/topics/library.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [canvas](<https://devfeed.tech/tags/canvas.md>), [compose](<https://devfeed.tech/tags/compose.md>), [customization](<https://devfeed.tech/tags/customization.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [render](<https://devfeed.tech/tags/render.md>), [rotation](<https://devfeed.tech/tags/rotation.md>)

### AI overview

A tutorial on recreating Airbnb's month-duration dial picker in Jetpack Compose using the ChromaDial library. It covers configuring a 12-month range, mapping values around a 330-degree sweep, styling the thumb, rendering the inactive track with Canvas, and creating a rounded active arc track.

### Source excerpt

How to create a gorgeous Dial in Jetpack Compose

## How to create custom Dials

DevFeed: [How to create custom Dials](<https://devfeed.tech/articles/how-to-create-custom-dials-25785.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/how-to-create-custom-dials/>)

Author: sinasamaki

Published: 2026-03-14T20:43:05Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Library](<https://devfeed.tech/topics/library.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [render](<https://devfeed.tech/topics/render.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [canvas](<https://devfeed.tech/tags/canvas.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [library](<https://devfeed.tech/tags/library.md>), [render](<https://devfeed.tech/tags/render.md>)

### AI overview

A tutorial on customizing ChromaDial, including visual and invisible thumbs, drag and hover interactions, animated feedback, full-size touch areas, and custom track drawing with Canvas.

### Source excerpt

ChromaDial is super customizable and delightful

## How to create Dials in Jetpack Compose

DevFeed: [How to create Dials in Jetpack Compose](<https://devfeed.tech/articles/how-to-create-dials-in-jetpack-compose-25786.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/how-to-create-dials-in-jetpack-compose/>)

Author: sinasamaki

Published: 2026-01-31T08:00:26Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Library](<https://devfeed.tech/topics/library.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>), [Code](<https://devfeed.tech/topics/code.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [code](<https://devfeed.tech/tags/code.md>), [compose](<https://devfeed.tech/tags/compose.md>), [github](<https://devfeed.tech/tags/github.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [library](<https://devfeed.tech/tags/library.md>), [open-source](<https://devfeed.tech/tags/open-source.md>)

### AI overview

A tutorial introduces ChromaDial, an alpha library for creating customizable dials in Jetpack Compose. It explains adding the dependency, configuring the dial range, handling degree state, and enabling interval snapping for discrete values such as time settings.

### Source excerpt

Introducing ChromaDial, a library for building delightful dials

## Create animated stripes in Jetpack Compose

DevFeed: [Create animated stripes in Jetpack Compose](<https://devfeed.tech/articles/create-animated-stripes-in-jetpack-compose-25770.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/create-animated-stripes-in-jetpack-compose/>)

Author: sinasamaki

Published: 2025-12-05T18:11:39Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [app](<https://devfeed.tech/tags/app.md>), [article](<https://devfeed.tech/tags/article.md>), [building](<https://devfeed.tech/tags/building.md>), [code](<https://devfeed.tech/tags/code.md>), [compose](<https://devfeed.tech/tags/compose.md>), [design](<https://devfeed.tech/tags/design.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [learn](<https://devfeed.tech/tags/learn.md>), [list](<https://devfeed.tech/tags/list.md>), [parameter](<https://devfeed.tech/tags/parameter.md>), [patterns](<https://devfeed.tech/tags/patterns.md>), [repeat](<https://devfeed.tech/tags/repeat.md>), [rotation](<https://devfeed.tech/tags/rotation.md>)

### AI overview

A tutorial on creating and animating repeating stripe patterns in Jetpack Compose using gradients, color stops, tiling, offsets, and a helper function based on weighted colors, repetition width, and angle.

### Source excerpt

Use default gradients to create mesmerizing patterns in your app

## Creating a CRT Screen Effect in Jetpack Compose

DevFeed: [Creating a CRT Screen Effect in Jetpack Compose](<https://devfeed.tech/articles/creating-a-crt-screen-effect-in-jetpack-compose-25771.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/creating-a-crt-screen-effect-in-jetpack-compose/>)

Author: sinasamaki

Published: 2025-11-07T10:50:23Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Graphics](<https://devfeed.tech/topics/graphics.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [effect](<https://devfeed.tech/tags/effect.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>)

### AI overview

A tutorial on recreating a CRT monitor effect in Jetpack Compose using an offscreen graphics layer, repeated gradients for scanlines, layered blur for glow, and randomized screen jitter.

### Source excerpt

Using graphics layer, gradients and blur to create this nostalgic effect

## Glitch Effect in Jetpack Compose

DevFeed: [Glitch Effect in Jetpack Compose](<https://devfeed.tech/articles/glitch-effect-in-jetpack-compose-25782.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/glitch-effect-in-jetpack-compose/>)

Author: sinasamaki

Published: 2025-10-11T08:00:46Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [Graphics](<https://devfeed.tech/topics/graphics.md>), [GUI](<https://devfeed.tech/topics/gui.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [canvas](<https://devfeed.tech/tags/canvas.md>), [compose](<https://devfeed.tech/tags/compose.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [mutation](<https://devfeed.tech/tags/mutation.md>), [random](<https://devfeed.tech/tags/random.md>), [scale](<https://devfeed.tech/tags/scale.md>), [slices](<https://devfeed.tech/tags/slices.md>), [translation](<https://devfeed.tech/tags/translation.md>)

### AI overview

A tutorial on implementing a glitch effect in Jetpack Compose by drawing composable content to an offscreen buffer, slicing it horizontally, and applying randomized translations, scaling, color overlays, and timed animation.

### Source excerpt

Easily apply sci-fi, cyberpunk effects on to your app

## New Shadow API for Jetpack Compose

DevFeed: [New Shadow API for Jetpack Compose](<https://devfeed.tech/articles/new-shadow-api-for-jetpack-compose-25794.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/new-shadow-api-for-jetpack-compose/>)

Author: sinasamaki

Published: 2025-08-27T18:15:18Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [ui](<https://devfeed.tech/topics/ui.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [article](<https://devfeed.tech/tags/article.md>), [compose](<https://devfeed.tech/tags/compose.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [modifiers](<https://devfeed.tech/tags/modifiers.md>), [properties](<https://devfeed.tech/tags/properties.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

This tutorial explains the new shadow API introduced in Jetpack Compose 1.9.0. It covers the available modifiers, modifier ordering, shadow properties such as radius, spread, offset, alpha, color, brush, and blendMode, and includes an interactive demo.

### Source excerpt

How to build realistic UI with the latest shadow API

## Animating Text along a Path in Jetpack Compose

DevFeed: [Animating Text along a Path in Jetpack Compose](<https://devfeed.tech/articles/animating-text-along-a-path-in-jetpack-compose-25765.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/animating-text-along-a-path-in-jetpack-compose/>)

Author: sinasamaki

Published: 2025-06-19T17:45:02Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [Code](<https://devfeed.tech/topics/code.md>), [Graphics](<https://devfeed.tech/topics/graphics.md>), [Font](<https://devfeed.tech/topics/font.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [canvas](<https://devfeed.tech/tags/canvas.md>), [code](<https://devfeed.tech/tags/code.md>), [compose](<https://devfeed.tech/tags/compose.md>), [function](<https://devfeed.tech/tags/function.md>), [graphics](<https://devfeed.tech/tags/graphics.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>)

### AI overview

A tutorial on drawing text character by character along a path in Jetpack Compose. It explains measuring text and paths, positioning each character, animating its offset, and rotating characters according to the path tangent.

### Source excerpt

How to position and rotate blocks of text on any path

## Wrapping a Fancy Ribbon around any Composable

DevFeed: [Wrapping a Fancy Ribbon around any Composable](<https://devfeed.tech/articles/wrapping-a-fancy-ribbon-around-any-composable-25803.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/wrapping-a-fancy-ribbon-around-any-jetpack-composable/>)

Author: sinasamaki

Published: 2025-05-31T16:47:35Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [build](<https://devfeed.tech/tags/build.md>), [compose](<https://devfeed.tech/tags/compose.md>), [effect](<https://devfeed.tech/tags/effect.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

This tutorial explains how to build a Jetpack Compose ribbon modifier that wraps around UI elements. It covers drawing a winding path with polar coordinates, matching the ribbon to an element's dimensions, and creating depth by splitting the path into segments drawn above and below the content.

### Source excerpt

How to animate a ribbon that wraps around UI elements in Jetpack Compose

## Path animations in Jetpack Compose

DevFeed: [Path animations in Jetpack Compose](<https://devfeed.tech/articles/path-animations-in-jetpack-compose-25798.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/path-animations-in-jetpack-compose-video/>)

Author: sinasamaki

Published: 2025-05-19T17:59:39Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Compose](<https://devfeed.tech/topics/compose.md>), [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [compose-multiplatform](<https://devfeed.tech/topics/compose-multiplatform.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [api](<https://devfeed.tech/tags/api.md>), [article](<https://devfeed.tech/tags/article.md>), [code](<https://devfeed.tech/tags/code.md>), [compose](<https://devfeed.tech/tags/compose.md>), [compose-multiplatform](<https://devfeed.tech/tags/compose-multiplatform.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>)

### AI overview

A video tutorial covering path animations in Jetpack Compose. It explains basic path creation, polar coordinates, path effects, and measuring paths to derive positions and rotation along a path.

### Source excerpt

How to define path objects and use them in animations.

## How I prototype with colors in Jetpack Compose

DevFeed: [How I prototype with colors in Jetpack Compose](<https://devfeed.tech/articles/how-i-prototype-with-colors-in-jetpack-compose-25784.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/how-i-prototype-with-colors-in-jetpack-compose/>)

Author: sinasamaki

Published: 2025-02-21T07:25:13Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [Dark Mode](<https://devfeed.tech/topics/dark-mode.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [ui](<https://devfeed.tech/topics/ui.md>), [TailwindCSS](<https://devfeed.tech/topics/tailwindcss.md>), [Android Studio](<https://devfeed.tech/topics/android-studio.md>)

Tags: [android-studio](<https://devfeed.tech/tags/android-studio.md>), [article](<https://devfeed.tech/tags/article.md>), [compose](<https://devfeed.tech/tags/compose.md>), [dark-mode](<https://devfeed.tech/tags/dark-mode.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [tailwindcss](<https://devfeed.tech/tags/tailwindcss.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

A tutorial on prototyping Jetpack Compose UI colors by adapting TailwindCSS's predefined palette into Kotlin color objects and using an infix extension function to select light or dark variants.

### Source excerpt

Don't waste time choosing colors in Jetpack Compose

## Brushed Metal UI in Jetpack Compose

DevFeed: [Brushed Metal UI in Jetpack Compose](<https://devfeed.tech/articles/brushed-metal-ui-in-jetpack-compose-25768.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/brushed-metal-ui-in-jetpack-compose/>)

Author: sinasamaki

Published: 2025-02-14T11:52:40Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Canvas](<https://devfeed.tech/topics/canvas.md>), [render](<https://devfeed.tech/topics/render.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [canvas](<https://devfeed.tech/tags/canvas.md>), [compose](<https://devfeed.tech/tags/compose.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [render](<https://devfeed.tech/tags/render.md>), [rotation](<https://devfeed.tech/tags/rotation.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

A tutorial on recreating and animating a brushed-metal skeuomorphic UI effect in Jetpack Compose. It explains how to layer radial gradients for circular ridges and sweep gradients for rotating highlights, with colors derived from a base color.

### Source excerpt

How to create this skeuomorphic metallic effect using gradients

## Mesh Gradients in Jetpack Compose

DevFeed: [Mesh Gradients in Jetpack Compose](<https://devfeed.tech/articles/mesh-gradients-in-jetpack-compose-25792.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/mesh-gradients-in-jetpack-compose/>)

Author: sinasamaki

Published: 2025-02-07T19:02:29Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [Android](<https://devfeed.tech/topics/android.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [article](<https://devfeed.tech/tags/article.md>), [code](<https://devfeed.tech/tags/code.md>), [color](<https://devfeed.tech/tags/color.md>), [compose](<https://devfeed.tech/tags/compose.md>), [design](<https://devfeed.tech/tags/design.md>), [experiment](<https://devfeed.tech/tags/experiment.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [implement](<https://devfeed.tech/tags/implement.md>), [jetpack](<https://devfeed.tech/tags/jetpack.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [mesh](<https://devfeed.tech/tags/mesh.md>), [performance](<https://devfeed.tech/tags/performance.md>), [points](<https://devfeed.tech/tags/points.md>), [range](<https://devfeed.tech/tags/range.md>)

### AI overview

A tutorial on using a modifier in Jetpack Compose to create and animate mesh gradients from colored points. It explains point placement, smoothing, axis-specific resolution, and the performance trade-offs of higher resolution.

### Source excerpt

Learn how to implement beautiful Mesh Gradients on Android

## Animated Text Field Hint in Jetpack Compose

DevFeed: [Animated Text Field Hint in Jetpack Compose](<https://devfeed.tech/articles/animated-text-field-hint-in-jetpack-compose-25763.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/animated-text-field-hint-in-jetpack-compose/>)

Author: sinasamaki

Published: 2024-12-05T19:38:36Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [ui](<https://devfeed.tech/topics/ui.md>), [User experience (UX)](<https://devfeed.tech/topics/ux.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [compose](<https://devfeed.tech/tags/compose.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [ui](<https://devfeed.tech/tags/ui.md>), [ux](<https://devfeed.tech/tags/ux.md>)

### AI overview

A tutorial showing how to create an animated text field hint in Jetpack Compose. It explains how a hint moves above the field when the field is focused or contains text, using shared element transitions and individually animated letters for a staggered effect.

### Source excerpt

Build a playful text field hint animation

## Centered Slider in Jetpack Compose

DevFeed: [Centered Slider in Jetpack Compose](<https://devfeed.tech/articles/centered-slider-in-jetpack-compose-25769.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/centered-slider-in-jetpack-compose/>)

Author: sinasamaki

Published: 2024-11-08T18:06:10Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [ui](<https://devfeed.tech/topics/ui.md>), [implementation](<https://devfeed.tech/topics/implementation.md>), [User experience (UX)](<https://devfeed.tech/topics/ux.md>), [Specifications](<https://devfeed.tech/topics/specifications.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [design](<https://devfeed.tech/tags/design.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [snap](<https://devfeed.tech/tags/snap.md>), [specifications](<https://devfeed.tech/tags/specifications.md>), [ui](<https://devfeed.tech/tags/ui.md>), [ux](<https://devfeed.tech/tags/ux.md>)

### AI overview

This tutorial explains how to build a customizable centered slider in Jetpack Compose based on Material 3 slider behavior. It covers a configurable center value, snapping near the center, center indicators, and distinct active and inactive visual sections.

### Source excerpt

Creating a glowy centered slider based on the material 3 slider

## Implementing Overslide interaction in Jetpack Compose

DevFeed: [Implementing Overslide interaction in Jetpack Compose](<https://devfeed.tech/articles/implementing-overslide-interaction-in-jetpack-compose-25787.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/implementing-overslide-slider-interaction-in-jetpack-compose/>)

Author: sinasamaki

Published: 2024-10-17T02:50:00Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [compose](<https://devfeed.tech/tags/compose.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>)

### AI overview

A tutorial on implementing an overslide interaction for sliders in Jetpack Compose. It explains how to intercept touch and horizontal drag events, track the slider's overslide amount, and animate that amount smoothly.

### Source excerpt

How to add a stretchy animation on a slider

## Custom Sliders in Jetpack Compose

DevFeed: [Custom Sliders in Jetpack Compose](<https://devfeed.tech/articles/custom-sliders-in-jetpack-compose-25773.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/custom-material-3-sliders-in-jetpack-compose/>)

Author: sinasamaki

Published: 2024-09-26T21:56:18Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Material Design](<https://devfeed.tech/topics/material-design.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [code](<https://devfeed.tech/tags/code.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [material-design](<https://devfeed.tech/tags/material-design.md>), [modifiers](<https://devfeed.tech/tags/modifiers.md>), [render](<https://devfeed.tech/tags/render.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

A tutorial on customizing Material 3 sliders in Jetpack Compose. It explains how to create custom thumbs and tracks, calculate the active fraction across arbitrary ranges, and build a reusable slider with snapping points and formatted thumb text.

### Source excerpt

Create unique and delightful sliders for your app

## Overscroll animations in Jetpack Compose

DevFeed: [Overscroll animations in Jetpack Compose](<https://devfeed.tech/articles/overscroll-animations-in-jetpack-compose-25795.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/overscroll-animations-in-jetpack-compose/>)

Author: sinasamaki

Published: 2024-07-12T07:11:09Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [build](<https://devfeed.tech/tags/build.md>), [code](<https://devfeed.tech/tags/code.md>), [compose](<https://devfeed.tech/tags/compose.md>), [events](<https://devfeed.tech/tags/events.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [optional](<https://devfeed.tech/tags/optional.md>), [parameter](<https://devfeed.tech/tags/parameter.md>)

### AI overview

This tutorial explains how to create custom overscroll animations in Jetpack Compose using a Modifier and nested scrolling. It develops a bounce effect designed to work with LazyLists and Pagers.

### Source excerpt

Add bouncy overscroll animations to all your scrolling elements

## Page Flip animation in Jetpack Compose

DevFeed: [Page Flip animation in Jetpack Compose](<https://devfeed.tech/articles/page-flip-animation-in-jetpack-compose-25796.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/page-flip-3d-animation-in-jetpack-compose/>)

Author: sinasamaki

Published: 2024-05-30T13:37:24Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [code](<https://devfeed.tech/tags/code.md>), [compose](<https://devfeed.tech/tags/compose.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>)

### AI overview

A tutorial that recreates Flipboard's page-turn animation in Jetpack Compose. It explains orientation handling, disabling the pager's default translation, capturing bitmap snapshots, and rotating clipped page sections based on user dragging.

### Source excerpt

Made in Compose: Flipboard page fold animation

## 5 Haptic Feedback Implementations To Enhance Your App

DevFeed: [5 Haptic Feedback Implementations To Enhance Your App](<https://devfeed.tech/articles/5-haptic-feedback-implementations-to-enhance-your-app-25783.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/haptic-feedback-in-jetpack-compose/>)

Author: sinasamaki

Published: 2024-04-25T21:48:56Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [User experience (UX)](<https://devfeed.tech/topics/ux.md>), [Android](<https://devfeed.tech/topics/android.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [article](<https://devfeed.tech/tags/article.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [ux](<https://devfeed.tech/tags/ux.md>)

### AI overview

This tutorial explains how to add haptic feedback in Jetpack Compose and presents examples for text-cursor movement, a radio-style dial, and a keyboard. It also links to a demo Android app and source code.

### Source excerpt

Adding vibrations in Jetpack Compose is super easy

## Loading Animation on Android (in XML)

DevFeed: [Loading Animation on Android (in XML)](<https://devfeed.tech/articles/loading-animation-on-android-in-xml-25788.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/loading-animation-view/>)

Author: sinasamaki

Published: 2024-04-01T13:01:54Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [XML](<https://devfeed.tech/topics/xml.md>), [App](<https://devfeed.tech/topics/app.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [code](<https://devfeed.tech/tags/code.md>), [layout](<https://devfeed.tech/tags/layout.md>), [xml](<https://devfeed.tech/tags/xml.md>)

### AI overview

A tutorial on creating a customizable loading animation for an Android app using a custom view, XML attributes, three gradient circles, and animation effects.

### Source excerpt

Build this fancy loading animation for your android app

## Neumorphism in Jetpack Compose

DevFeed: [Neumorphism in Jetpack Compose](<https://devfeed.tech/articles/neumorphism-in-jetpack-compose-25793.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/neumorphism-in-jetpack-compose/>)

Author: sinasamaki

Published: 2024-02-15T18:36:56Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [dark-mode](<https://devfeed.tech/tags/dark-mode.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [learn](<https://devfeed.tech/tags/learn.md>), [led](<https://devfeed.tech/tags/led.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

A tutorial on creating a neumorphic user interface in Jetpack Compose using gradients, borders, blurred shadows, and manually controlled offsets and blur values. It also explains how these properties can support pressed-state animations.

### Source excerpt

Learn how to create a neumorphic UI style in Jetpack Compose

## Glassmorphic Bottom Navigation in Jetpack Compose

DevFeed: [Glassmorphic Bottom Navigation in Jetpack Compose](<https://devfeed.tech/articles/glassmorphic-bottom-navigation-in-jetpack-compose-25781.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/glassmorphic-bottom-navigation-in-jetpack-compose/>)

Author: sinasamaki

Published: 2023-12-15T05:11:33Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [navigation](<https://devfeed.tech/topics/navigation.md>), [Library](<https://devfeed.tech/topics/library.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [bottom-navigation](<https://devfeed.tech/tags/bottom-navigation.md>), [compose](<https://devfeed.tech/tags/compose.md>), [implement](<https://devfeed.tech/tags/implement.md>), [jetpack](<https://devfeed.tech/tags/jetpack.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [layout](<https://devfeed.tech/tags/layout.md>), [library](<https://devfeed.tech/tags/library.md>), [navigation](<https://devfeed.tech/tags/navigation.md>), [scale](<https://devfeed.tech/tags/scale.md>), [state](<https://devfeed.tech/tags/state.md>), [switching](<https://devfeed.tech/tags/switching.md>)

### AI overview

A tutorial on building a glassmorphic bottom navigation bar in Jetpack Compose using the Haze library. It covers layout setup, tab state, animated selection, and backdrop blurring with rounded boundaries.

### Source excerpt

Implement a frosty bottom bar using Haze library

## Custom Pull to Refresh in Jetpack Compose

DevFeed: [Custom Pull to Refresh in Jetpack Compose](<https://devfeed.tech/articles/custom-pull-to-refresh-in-jetpack-compose-25774.md>)

Original publisher: [Read original article](<https://www.sinasamaki.com/custom-pull-to-refresh-in-jetpack-compose-2/>)

Author: sinasamaki

Published: 2023-12-01T15:53:07Z

Content type: tutorial

Language: en

Sources: [sinasamaki](<https://devfeed.tech/sources/sinasamaki.md>)

Topics: [Jetpack Compose](<https://devfeed.tech/topics/jetpack-compose.md>), [Compose](<https://devfeed.tech/topics/compose.md>), [ui](<https://devfeed.tech/topics/ui.md>), [implementation](<https://devfeed.tech/topics/implementation.md>)

Tags: [animation](<https://devfeed.tech/tags/animation.md>), [article](<https://devfeed.tech/tags/article.md>), [compose](<https://devfeed.tech/tags/compose.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [jetpack-compose](<https://devfeed.tech/tags/jetpack-compose.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

A tutorial on implementing and customizing pull-to-refresh in Jetpack Compose using the official implementation introduced in Compose 1.3.0. It covers refresh state, indicators, haptic feedback, and an animated layout that creates space for a custom indicator.

### Source excerpt

Create a colorful and animated pull to refresh indicator in Jetpack Compose

[Next page](<https://devfeed.tech/sources/sinasamaki.md?cursor=WyIyMDIzLTEyLTAxVDE1OjUzOjA3KzAwOjAwIiwgImExYjBhMWRiLWU0OWUtNDJmYy05Y2U5LTc0NmVjNWY2MWJiMCJd>)