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 = "support@example.com",
),
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.