Dexo - A Native iOS Client for Discourse

AI-generated summary

Eilgnaw introduces Dexo, a native iOS client for Discourse forums built with Swift and UIKit. The app supports multi-forum management, topic browsing with infinite scrolling, category/tag filtering, and full HTML rendering with features like syntax highlighting and image viewing. Authentication follows the Discourse User API Key specification, using RSA encryption and storing keys securely in the iOS Keychain without saving passwords. The project is open source, available via TestFlight, and includes build instructions for developers.

Subsequent posts by Eilgnaw and Eilgnaw highlight updates, including support for nested replies and Apple push notifications. Finally, Eilgnaw announces that Dexo is now officially available on the App Store. awyme provides positive feedback, noting that Dexo is user-friendly and preferable to Discourse Hub.

Hi everyone!

I’d like to share Dexo, a native iOS client for Discourse forums that I’ve been building with UIKit and Swift.

Screenshots

Features

  • Multi-Forum Management — Add, switch between, and remove multiple Discourse instances in one app
  • Topic Browsing — Latest and Top topic lists with infinite scrolling
  • Categories & Tags — Browse topics by category or tag
  • Topic Detail — Full HTML content rendering with image viewer, syntax-highlighted code blocks, and collapsible sections
  • Reply — Reply to topics or to a specific post
  • Secure Auth — Uses the Discourse User API Key flow with RSA encryption; credentials are stored in the iOS Keychain
  • Appearance — System / Light / Dark mode

Planned

  • Notifications & private messages
  • Topic creation

Tech Stack

Component Detail
Language Swift 5
UI Framework UIKit
Minimum Target iOS 17.0
Architecture MVVM + @Observable
Database SQLite (GRDB)
Networking Alamofire
Image Loading SDWebImage

How Authentication Works

Dexo follows the Discourse User API Key specification.
It generates an RSA key pair on the device, sends the public key to your Discourse instance for authorization, and stores the resulting API key securely in the iOS Keychain.
No passwords are stored on the device.

TestFlight

Source Code

The project is fully open source:
https://github.com/Eilgnaw/dexo

Build from Source

Requires Xcode 16+ and mise:

make setup    # Install tools, fetch deps, generate Xcode project

Then open dexo.xcodeproj, select your dev team, and run.

Feedback

This is still a work in progress.
I’d love to hear your feedback, feature requests, or bug reports.
feel free to reply here or open an issue on GitHub.

17 Likes

Dexo has now added support for nested replies.

5 Likes

Apple push notifications are now available

4 Likes

Dexo is now officially available on the App Store!

Thanks to everyone who has followed the project and provided feedback along the way.

Dexo remains fully open source, and I’ll continue improving it and adding new features.

You can download it here:

App Store: Dexo

As always, feedback and suggestions are very welcome!

3 Likes

dexo is great to use, even more intuitive than Discourse Hub. Thanks!

2 Likes