ShopSavvy for Jetpack Compose

Kotlin

A Kotlin package with Material 3 composables for product cards, price comparison lists, and deal feeds. StateFlow-based view models with the ShopSavvy Kotlin SDK.

Set up ShopSavvy for Jetpack Compose

  1. 1

    Get a ShopSavvy Data API key

    Create a key at shopsavvy.com/data. Keys look like ss_live_ followed by 32 characters. Keep it out of source control.

  2. 2

    Install

    Get the integration from its repository and follow the README's install section: https://github.com/shopsavvy/jetpack-compose-shopsavvy

    git clone https://github.com/shopsavvy/jetpack-compose-shopsavvy.git
  3. 3

    Add your API key

    Enter your key where Jetpack Compose asks for ShopSavvy credentials, as the README describes. Store it as a secret, not in code.

  4. 4

    Make your first call

    From the shopsavvy/jetpack-compose-shopsavvy README (Installation):

    dependencies {
        implementation("com.shopsavvy:jetpack-compose-shopsavvy:1.0.0")
    }

    Copied from the repository README.

  5. 5

    Quick Start

    From the shopsavvy/jetpack-compose-shopsavvy README (Quick Start):

    import com.shopsavvy.compose.*
    import com.shopsavvy.compose.ui.*
    import com.shopsavvy.compose.viewmodel.*
    
    val client = ShopSavvyComposeClient("ss_live_your_api_key_here")
    val viewModel = ProductSearchViewModel(client)
    
    @Composable
    fun ProductScreen() {
        val state by viewModel.state.collectAsState()
    
        LaunchedEffect(Unit) {
            viewModel.search("airpods pro")
        }
    
        LazyColumn {
            items(state.products) { product ->
                ProductCard(
                    product = product,
                    onClick = { /* navigate */ }
                )
            }
        }
    }

    Copied from the repository README.

Keys come with a Data API plan. See plans.

Features

ProductCard, PriceComparisonList, DealFeed composables
Material 3 design
StateFlow-based view models
Coil for async image loading

Use Cases

1.Build Android price comparison apps
2.Add competitor pricing to existing Android apps
3.Create deal discovery interfaces

What data, how often, which direction

Data
Product records, current offers from tens of thousands of retailers and price history back to 2011, dense from 2019, from the ShopSavvy Data API. Prices are in US dollars.
How often
Every offer carries the time it was last checked. With the Data API you can schedule refreshes hourly, daily or weekly for retailers we can re-check through an official retailer API; other retailers update as ShopSavvy sees them.
Direction
ShopSavvy data flows into Jetpack Compose. Requests carry only what you ask about (identifiers, search terms or schedules) and your API key.

FAQ

Do I need an API key?

Yes. The Jetpack Compose integration calls the ShopSavvy Data API, which needs a Data API key. Create one at shopsavvy.com/data, then add it as the setup steps above show.

What data does it return?

ShopSavvy product records (title, brand, model, barcode, ASIN), current offers from tens of thousands of retailers with price, availability and condition, and price history back to 2011, dense from 2019. Products can be looked up by barcode, ASIN, URL or model number. Prices are in US dollars.

How fresh are the prices?

Every offer carries the time ShopSavvy last checked it, so you can see how current each price is. Through the Data API you can schedule refreshes hourly, daily or weekly for retailers we can re-check through an official retailer API; other retailers update as ShopSavvy sees them.

Is my API key stored securely?

Store it as a secret in your own configuration, not in source code. The key is sent to the ShopSavvy API (api.shopsavvy.com) over HTTPS in the Authorization header. You can revoke a key and create a new one at shopsavvy.com/data/api-keys.

Is it open source?

Yes. The source is on GitHub at https://github.com/shopsavvy/jetpack-compose-shopsavvy under the MIT license.

Powered by the ShopSavvy Data API

This integration connects to the ShopSavvy Data API: product data and current prices from tens of thousands of retailers, across 30M+ products, with price history back to 2011, dense from 2019. Look up products by barcode, ASIN, URL or keyword, compare prices, read history and schedule refreshes.