Getting started
Fedo is an in-app feedback SDK for Android and iOS. It gives you a complete feedback board — browse, post, vote, comment — as a single drop-in UI component. No backend to build, no UI to assemble from scratch.
Add an in-app feature request board to your Android/iOS app in three steps.
Quickstart​
- Kotlin
- Swift
1. Add the Gradle dependency
Add the Fedo artifact to your module-level build.gradle.kts:
dependencies {
implementation("com.getfedo:sdk-android:0.4.2")
}
Requires minSdk 24, compileSdk 35+, and Kotlin 2.3+.
2. Initialize the SDK
Call Fedo.initialize once at app startup — typically in Application.onCreate():
Fedo.initialize(applicationContext, apiKey = "YOUR_API_KEY")
The API key identifies your board. Ship a different key to point the same build at a different board.
3. Show the feedback board
Drop FedoFeedbackScreen anywhere in your Compose hierarchy:
@Composable
fun MyScreen() {
FedoFeedbackScreen(
onDismiss = { /* navigate back */ }
)
}
The composable owns its own navigation between list, detail, and editor screens. onDismiss fires when the user presses back on the root list.
1. Add the Swift package
In Xcode: File → Add Package Dependencies, then paste:
https://github.com/getfedo/fedo-ios
Requires iOS 16+ and Swift 6.
2. Initialize the SDK
Call Fedo.initialize once at app launch:
import FedoKit
@main
struct MyApp: App {
init() {
Fedo.initialize(apiKey: "YOUR_API_KEY")
}
var body: some Scene {
WindowGroup { ContentView() }
}
}
3. Show the feedback board
Embed FedoFeedbackView() in a NavigationStack:
NavigationLink("Feedbacks List") {
FedoFeedbackView()
}
Call Fedo.initialize before any other SDK method.
Next steps​
- Core concepts — boards, feedback, votes, comments, and user identity
- SDK setup — full installation walkthrough for both platforms
- Feedback UI — every signature, option, and configuration
- User Management — identify users and migrate anonymous data
FAQ​
Does the user need to sign in?​
No. Fedo creates an anonymous user on first open and caches it on the device. Call Fedo.setUserID later to identify them — their existing feedback, comments, and votes are migrated to the authenticated user.
Can I collect feedback without showing the full board?​
Yes. On Android, use FedoCreateFeedbackSheet() — a lightweight bottom sheet with a title and description form. On iOS, use .presentFedoCreateFeedback(isPresented:). No navigation setup required.
What platforms are supported?​
Android (Compose) and iOS (SwiftUI). Both are available now.
Where is user data stored?​
Fedo manages auth and data storage on its backend. You pass an API key; the SDK handles tokens, caching, and refreshes automatically.