Skip to content
Mobile Joe Docs Dashboard
View Markdown

Android · Jetpack Compose · SDK 1.0.2

Feature Plans

Share your roadmap, collect votes, and accept suggestions by email.

Prepare your content

Complete the Android quickstart, then save a feature plan in the dashboard with a status other than Draft. The status controls the list filters.

Compose integration

import androidx.compose.runtime.Composable
import dev.mobilejoe.ui.compose.feature.FeaturePlanHost
import dev.mobilejoe.ui.compose.feature.FeaturePlanUiConfiguration

@Composable
fun RoadmapScreen(onNavigateUp: () -> Unit) {
    FeaturePlanHost(
        configuration = FeaturePlanUiConfiguration(
            recipient = "[email protected]",
        ),
        onNavigateUp = onNavigateUp,
    )
}

Place this in RoadmapScreen.kt under your app package and use it as a destination in your existing Compose navigation inside your Material theme. The host handles list and detail navigation. Supply selectedFeatureId to open an existing plan directly. The current component name is FeaturePlanHost.

Suggestions and filtering

The suggestion action opens email to recipient, with optional subject and body. It does not create an in-app submission form. The list provides search, sorting, and status filters; detail screens offer voting.

Core API and refresh

For a custom UI, dev.mobilejoe.api.feature.FeaturePlans exposes suspending load(), load(id), reload(), vote(featurePlan), setStatusFilter, setSorting, and setSearchQuery. Run calls in a lifecycle-owned coroutine with error handling. Collection loads paginate; use reload() to restart the collection. The Compose screen manages its own loads and filter changes and supports pull to refresh, without automatic polling.

Verify

Find your plan, open its detail, cast a vote and check its state. Try search and status filters, and test the suggestion email on a device with an email app. If a plan is missing, check the selected filter and follow Troubleshooting.