Skip to main content
By the end of this page your app will have a Support button that opens Feddy, and a message sent from it will be sitting in your inbox. It takes about five minutes.

Before you start

  • A Feddy project and its project ID. You’ll find the ID under Settings → Install in the dashboard. No project yet? Create one first.
  • Xcode 15 or later. The SDK supports iOS 15 and up and doesn’t pull in any other packages.
1

Add the package

In Xcode, choose File → Add Package Dependencies… and paste this URL:
If you manage dependencies in a Package.swift file instead, add:
2

Tell Feddy which project this is

Do this once, when the app launches, before anything else can open Feddy. Calling it again later does nothing.
AppDelegate.swift
The project ID isn’t a secret. It’s built into your app, so anyone who downloads the app can find it, and that’s fine: it only tells Feddy which inbox a message belongs to. Commit it to your repository like any other setting. There’s nothing to protect, so keep it out of your secrets file.
3

Give users a way in

Call present() from wherever users go looking for help. For most apps that’s a row in Settings or a bar button. Feddy slides up over the current screen, showing the user’s past conversations and a button to start a new one.
SettingsViewController.swift
To show a count on that button when a reply is waiting, give Feddy a function to call whenever the number changes. It runs on the main thread, so you can update the UI directly:
4

Send yourself a message

Run the app, tap the button, and send a message. Then open your inbox at dash.feddy.app: it’s there, with the device model and app version alongside.Reply from the inbox. Back in the app, the reply appears in the conversation, and the button shows a 1 until the user opens it.
That’s the whole loop: a user writes in, you answer, and the answer reaches them inside the app.

Next steps

Identify users

Tell Feddy who’s logged in, so you see their name in the inbox and replies can reach them by email.

Unread badge

Keep the count fresh when the app comes back to the foreground, and other placements.

Conversations

What you’re looking at in the inbox, and what happens on its own.

iOS SDK reference

Every call in the package, with its signature and what it does.