Available for work

Hi, I'm Ravi Sorathiya

Android Developer

I build and ship Android apps people use every day — dialers, SMS messengers, galleries, calendars and a full PDF editor.

Explore my apps
12
Apps live on Google Play
14
Android projects built
36
Technologies used

// how I build

Modern Android, in code

Choose a technique to see how I use it. Tap a highlighted line to see why it's written that way.

Stateless, previewable UI: state flows down, events flow up. Tap the chips in the preview to fire onSelect.

GalleryScreen.kt
@Composable
fun MediaFilterBar(
    selected: MediaType,
    onSelect: (MediaType) -> Unit,
    modifier: Modifier = Modifier,
) {
    Row(
        modifier.horizontalScroll(rememberScrollState()),
        horizontalArrangement = Arrangement.spacedBy(8.dp),
    ) {
        MediaType.entries.forEach { type ->
            FilterChip(
                selected = type == selected,
                onClick = { onSelect(type) },
                label = { Text(type.label) },
            )
        }
    }
}

@Composable
fun GalleryScreen(vm: GalleryViewModel = hiltViewModel()) {
    val state by vm.state.collectAsStateWithLifecycle()
    MediaFilterBar(state.filter, onSelect = vm::setFilter)
    MediaGrid(state.visibleItems)
}

Preview: tap a chip

9:41100%

Gallery

0:19
0:40
0:14
0:35

12 items · state.filter = All

L2

Stateless composable: it receives state and reports events (state hoisting), so it is easy to preview, reuse and test.

1/5

Tap a highlighted line to see why it's there. These are simplified samples of patterns from my apps, not their actual source code.

PDF Reader & Editor

// currently building

PDF Reader & Editor

A full PDF reader and editor — annotate, sign, edit text, fill forms, lock, convert and scan.

  • Annotate: text & area highlight, underline, strike-through and freehand ink
  • Sign documents with a drawn signature you can move, scale and rotate
  • Edit existing text in place and insert new text blocks
  • Fill forms and add watermarks
  • Lock / unlock PDFs with a password
  • Merge, split, compress and manage pages
See how it's built

// about

A little about me

Android developer working in Kotlin and Jetpack Compose. I have shipped 12 apps to Google Play — from default dialers and SMS clients that take over core phone roles, to media galleries and productivity tools.

More about me

Let's build your next Android app

Have a project in mind or want to work together? My inbox is always open.

Contact me

© 2026 Ravi Sorathiya. Built with Vue & Tailwind.