No description
Find a file
2025-12-27 23:42:30 -05:00
.vscode Leave room support, persist last room, fixes 2025-12-03 16:16:30 -05:00
android Add SecureStorageController 2025-11-17 21:43:52 -05:00
assets add screenshot images 2025-11-30 21:23:59 -05:00
ios first commit 2025-11-10 14:50:58 -05:00
lib fix newlines, wip edits 2025-12-27 23:42:30 -05:00
linux Add SecureStorageController 2025-11-17 21:43:52 -05:00
nix add vodozemac 2025-11-14 19:26:27 -05:00
windows add windows dir 2025-11-29 12:04:39 -05:00
.envrc first commit 2025-11-10 14:50:58 -05:00
.gitignore gitignore freezed 2025-11-23 13:06:05 -05:00
.metadata add windows dir 2025-11-29 12:04:39 -05:00
analysis_options.yaml fix avatar loading 2025-11-18 16:18:32 -05:00
devtools_options.yaml loading spaces 2025-11-10 22:13:15 -05:00
flake.lock first commit 2025-11-10 14:50:58 -05:00
flake.nix gitignore freezed 2025-11-23 13:06:05 -05:00
pubspec.lock Support matrix: uris 2025-12-27 13:42:10 -05:00
pubspec.yaml Fix regex bug 2025-12-24 16:53:13 -05:00
README.md why did i mark edits as done (they arent) 2025-12-27 13:48:23 -05:00

Nexus Client

Warning

Nexus Client is still heavily in development, and is not ready for use!

Description

A simple and user-friendly Matrix client made with Flutter and the Matrix Dart SDK.

Screenshots

Dark Mode Light Mode
Screenshot of Nexus Client in dark mode, showing users talking, with a sidebar showing rooms and spaces, and another sidebar showing members The same screenshot as above, but in light mode

Progress

  • Platform Support
    • Linux
    • Windows (untested, if you are interested in helping to test, open an issue)
    • MacOS
    • Android
    • iOS
    • Web (may not be possible)
  • Login
    • Username / password auth
    • OAuth / OIDC
  • Rooms / Spaces
    • Displaying and choosing
    • Reading, showing unread
      • Mark as read button on rooms and spaces
    • Searching
    • Creating (Rooms, Spaces, and DMs)
    • Joining
      • Using alias
      • From space
      • Exploring
    • Leaving
    • Subspaces
  • Messages
    • Sending
      • Plain text
      • HTML/Markdown
      • Replies
      • Attachments
      • Mentions
        • Users
        • Rooms
      • Custom emojis/stickers
      • GIFs, maybe through Tenor or something
      • Encrypted messages
    • Recieving
      • Plain text
      • HTML
      • Replies
        • Viewing
        • Jump to original message
      • Edits
      • Attachments
        • Downloading attachments
        • Opening attachments in their own view
      • Mentions
        • Users
        • Rooms
          • Plain text
          • Matrix URIs
          • Matrix.to links
      • Custom emojis/stickers
      • Encrypted messages
      • History loading
        • Backwards
        • Forwards
    • Editing
    • Deleting
  • Reactions: Waiting on https://github.com/flyerhq/flutter_chat_ui/pull/838
  • Pins
    • Displaying
    • Creating
  • Threads
  • Profile popouts
  • Copy link to [room, space]
  • Reporting
  • Notifications using UnifiedPush
  • Group calls using MSC4195
  • Invites
    • Viewing / accepting
    • Spam filtering
  • Settings
    • Light/Dark mode
    • Dynamic Theming
    • Devices
      • Viewing devices
      • Verifying devices
    • URL preview: Server / Client / None
    • Account changes
      • Display name
      • Profile picture
      • Timezone
      • Pronouns
      • Password
    • About
    • Log Out

Development

Fork and clone the project, then:

  • With Nix: Either use direnv, or nix flake develop
  • Without Nix: Install Flutter, Rust, the libsecret dev package for your distro (must be in PKG_CONFIG_PATH), and sqlite (must be in LD_LIBRARY_PATH).

Build generated files, and watch for new changes:

flutter pub run build_runner watch --delete-conflicting-outputs

Run flutter run to run the app.

Community

Come chat in the Federated Nexus Community for questions or help with developing or using Nexus Client.