This commit introduces improvements to the channel navigation and message handling within the chat application. - Updated `ActionChannel` to include an optional `messageId` parameter in the `SwitchChannel` action for better context during channel switches. - Modified `ChatRouterScreen` to parse and handle the new `messageId` parameter when navigating to channels. - Enhanced `ChannelScreen` to load messages around a specified `messageId`, allowing users to jump directly to important messages. - Implemented highlighting for the targeted message in the `ChannelScreen` to improve user experience. - Updated `ChannelScreenViewModel` to support the new message loading logic based on the `messageId` parameter. - Refactored related components to ensure clean architecture principles are maintained and improve overall code organization. |
||
|---|---|---|
| .github/workflows | ||
| .idea | ||
| app | ||
| compliance | ||
| docs | ||
| gradle/wrapper | ||
| scripts | ||
| .editorconfig | ||
| .gitignore | ||
| .gitmodules | ||
| LICENCE | ||
| OFL.txt | ||
| README.md | ||
| build.gradle.kts | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| revoltbuild.properties.example | ||
| sentry.properties.example | ||
| settings.gradle.kts | ||
README.md
Revolt on Android
Description
This is the official Android app for the Revolt chat platform.
The codebase includes the app itself, as well as an internal library for interacting with the Revolt
API.
| Module | Package | Description |
|---|---|---|
:app |
chat.peptide |
The main app module. |
The API library is part of the app module, and is not intended to be used as a standalone library,
as it makes liberal use of Android-specific APIs for reactivity.
The app is written in Kotlin, and uses the Jetpack Compose UI toolkit, the current state of the art for Android UI development.
Stack
- Kotlin
- Jetpack Compose
- For some Material components, the View-based Material Components Android (MDC-Android) library is used.
- Ktor
- Dagger with Hilt
Resources
Revolt on Android
- Revolt on Android Technical Documentation
- Android-specific Contribution Guide —read carefully before contributing!
Revolt
- Revolt Project Board (Submit feature requests here)
- Revolt Testers Server
- General Revolt Contribution Guide
Quick Start
Open the project in Android Studio. You can then run the app on an emulator or a physical device by
running the app module.
In-depth setup instructions can be found at Setting up your Development Environment