A customizable InputAccessoryView for iOS to create powerful input bars with autocomplete, attachments, and flexible layouts.
InputBarAccessoryView is a Swift library for iOS that provides a customizable InputAccessoryView to create advanced input bars with features like autocomplete, attachments, and flexible toolbar layouts. It solves the problem of building complex input interfaces for chat apps, comment systems, or messaging features without reinventing the wheel.
iOS developers building chat applications, messaging features, comment sections, or any app requiring a rich text input interface with toolbar buttons and autocomplete functionality.
Developers choose InputBarAccessoryView for its out-of-the-box features like autocomplete, attachment handling, and reactive hooks, which significantly reduce development time compared to building custom input bars from scratch. Its modular design and plugin system offer extensive customization while maintaining ease of use.
A simple and easily customizable InputAccessoryView for making powerful input bars with autocomplete and attachments
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses Top/Bottom/Left/Right InputStackViews to easily place buttons around a self-sizing UITextView, allowing custom arrangements similar to iMessage or Slack.
Supports @mentions, #hashtags, and custom prefixes with attributed text highlighting, reducing the need for manual implementation in chat or social apps.
Allows creation of custom InputPlugins to add new functionality, as highlighted in the feature list, enabling developers to tailor input bars to unique use cases.
Provides hooks for buttons to respond to text changes, keyboard actions, and touch events, enabling dynamic UI updates without complex delegation.
Version 7.0.0 dropped iOS 13 support and moved to Swift 6, which can disrupt existing projects during upgrades, as noted in the release notes.
CocoaPods support was removed in 6.0.0, forcing teams to use Swift Package Manager, which might not fit all workflows, especially for legacy projects.
The library is feature-rich, but configuring it for basic text input might require unnecessary complexity compared to using a standard UITextField or UITextView.