Skip to content

Strip unused modules and remove all external dependencies#1

Open
babanikrishna wants to merge 1 commit intomainfrom
strip-unused-modules
Open

Strip unused modules and remove all external dependencies#1
babanikrishna wants to merge 1 commit intomainfrom
strip-unused-modules

Conversation

@babanikrishna
Copy link
Collaborator

Summary

  • Remove unused modules: Giphy wrapper, Recording, Attachments (grid/editor/fullscreen), Link Preview, NetworkMonitor, AVPlayer+State
  • Delete example projects: ChatExample/, ChatFirestoreExample/, Tests/
  • Remove all 4 external SPM dependencies: MediaPicker, ActivityIndicatorView, giphy-ios-sdk, Kingfisher
  • Replace Kingfisher with lightweight URLSession + NSCache-based CachedAsyncImage
  • Simplify InputView to text + send only (no recording, giphy, media picker, camera)
  • Package now has zero external dependencies while preserving the full public API used by Giggles

What's kept

  • ChatView + all public modifiers (.chatTheme, .enableLoadMore, .showDateHeaders, .messageUseMarkdown, .keyboardDismissMode, .onMessageReaction)
  • Message, User, Attachment, ReplyMessage, DraftMessage, Recording, Reaction models
  • MessageMenu, ReactionBubble, ReactionSelectionView, ReactionOverview
  • Theming (ChatTheme, ChatThemeColors)
  • UIList scroll engine, messageBuilder closure API

Stats

  • 161 files changed, 315 insertions, 10,495 deletions
  • 22 source files removed, 2 example projects removed, test suite removed

Test plan

  • Standalone package builds for iOS Simulator (xcodebuild -scheme Chat, zero errors)
  • Giggles project builds with stripped package (BUILD SUCCEEDED)
  • Verify messaging UI works end-to-end on device/simulator

🤖 Generated with Claude Code

Remove Giphy, Recording, Attachments, Link Preview, example projects,
and tests. Replace Kingfisher with URLSession+NSCache. Package now has
zero external dependencies while preserving the full public API that
Giggles uses (ChatView, Message, User, Reaction, themes, etc).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant