A customizable iOS text field component for displaying and managing tags, hashtags, and tokens.
WSTagsField is an iOS library that provides a customizable text field component for displaying and managing tags, hashtags, and tokens. It solves the problem of implementing tag input interfaces in iOS apps by offering a ready-to-use, flexible component with extensive customization options and event handling.
iOS developers building applications that require tag input features, such as social media apps, productivity tools, or any app needing hashtag or token-based input.
Developers choose WSTagsField for its ease of integration, high customizability, and comprehensive event handling, which saves time compared to building a tag input component from scratch while ensuring a polished user experience.
An iOS text field that represents tags, hashtags, tokens in general.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Allows fine-grained control over layout margins, spacing, colors, fonts, and delimiter visibility, as demonstrated by properties like layoutMargins and tintColor in the code example.
Provides callback closures for tag addition, removal, text changes, and height adjustments, enabling responsive user interactions without extra boilerplate code.
Supports custom validation logic via the onValidateTag closure to prevent duplicates or invalid tags, offering control over what gets added to the list.
Configures delimiters (e.g., space), return key behavior, and tokenization settings, as shown with acceptTagOption and shouldTokenizeAfterResigningFirstResponder properties.
The library is built exclusively with UIKit and lacks native SwiftUI components, making it unsuitable for modern SwiftUI-based projects without wrapper workarounds.
Setting up the component requires configuring numerous properties individually, which can be tedious and error-prone compared to more declarative or convention-based approaches.
Missing capabilities like drag-and-drop reordering, batch operations, or enhanced accessibility features, which might necessitate additional custom development.