Skip to content

Mesh-LLM/MeshChat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MeshChat

SwiftUI chat app for iPhone, iPad, and Mac Catalyst built on the MeshLLM SDK.

What it does

  • Shared iOS app target with Mac Catalyst
  • Auto-joins a public mesh by default
  • Lets you override the default mesh with a specific invite token in Settings
  • Streams chat responses through the MeshLLM Swift SDK
  • Updates available models from SDK mesh events
  • Uses stream-chat-swift-ai for the composer, suggestions, typing indicator, and streaming markdown UI
  • Persists multiple conversations locally
  • Includes a model picker in the composer

How mesh selection works

  • If the invite token field in Settings is empty, MeshChat tries to join a public mesh automatically
  • If you enter an invite token, MeshChat uses that mesh instead
  • The connection badge in the sidebar reflects the current mesh state

Dependencies

Both packages are vendored locally because this project currently depends on local fixes:

  • MeshLLM includes the current Swift SDK + XCFramework used by the app
  • stream-chat-swift-ai includes local packaging/UI adjustments for this app

Project structure

Build

Generate the project and open it in Xcode:

xcodegen generate
open MeshChat.xcodeproj

Build from the command line for Mac Catalyst:

xcodebuild -project MeshChat.xcodeproj -scheme MeshChat -destination 'platform=macOS,variant=Mac Catalyst' build

Notes

  • The app target is iOS with Mac Catalyst, not a native macOS target
  • stream-chat-swift-ai is iOS-oriented, which is why the Mac app runs through Catalyst
  • The vendored MeshLLMFFI.xcframework currently builds and links for Catalyst, but Xcode may still print non-fatal linker warnings depending on the local SDK/toolchain version

About

Swift MacOS and iOS app for AI Chat using MeshLLM

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages