Skip to main content
Key Benefit: Provide powerful search and discovery capabilities that help users find relevant communities, content, and connections through intuitive interfaces and smart categorization.

Feature Overview

The Content Discovery & Search UIKit provides comprehensive components for building robust search and exploration experiences. From global search functionality to category-based browsing and notification management, these components enable users to discover and connect with the content and communities that matter to them.

Global Search

Universal Discovery
  • Cross-platform search functionality
  • Real-time search suggestions
  • Multi-content type results
  • Search history and suggestions

Community Discovery

Organized Exploration
  • Category-based browsing
  • Community recommendations
  • Search result filtering
  • My communities management

Advanced Search

Targeted Results
  • Community and user search
  • Search result customization
  • Filter and sort options
  • Result relevance ranking

Notifications

Stay Connected
  • Notification tray management
  • Real-time updates
  • Notification categorization
  • User engagement tracking

Implementation Guide

  • Global Search Page
  • Search Results
  • Categories & Discovery
  • Notification Tray
Comprehensive search across communities and usersThe Global Search Page offers robust and intuitive search functionality, allowing users to search for and discover communities and users that match their interests and needs.

Features

FeatureDescription
Top Search BarType search keyword and it will search across list of all communities and users
Community search resultDisplays filtered communities, and clicks to open Community Profile Page
User search resultDisplays filtered users, and clicks to open User Profile Page

Customization Options

Config IDTypeDescription
social_global_search_page/*/*PageYou can customize page theme

Code Examples

let socialGlobalSearchPage = AmitySocialGlobalSearchPage()
let viewController = AmitySwiftUIHostingController(rootView: socialGlobalSearchPage)
class CustomAmitySocialGlobalSearchPageBehavior: AmitySocialGlobalSearchPageBehavior {
    override init() {
        super.init()
    }
}

// Call this function to setup custom behaviour class in UIKit
func setSocialGlobalSearchPageBehaviour() {
    let customBehavior = CustomAmitySocialGlobalSearchPageBehavior()
    AmityUIKit4Manager.behaviour.socialGlobalSearchPageBehavior = customBehavior
}

Component Management Strategies

Designing comprehensive search experiencesPlan your search implementation by combining global search with specialized components like top search bars and category browsing. Consider user search patterns and how users move from general exploration to specific discovery.
Optimizing discovery pathwaysDesign clear pathways between different discovery methods (search, categories, recommendations). Ensure users can easily navigate between global search, category browsing, and their personal communities.
Managing user engagementImplement thoughtful notification policies that keep users engaged without overwhelming them. Use notification grouping and smart categorization to provide relevant information at the right time.

Implementation Strategy

Building comprehensive search featuresStart with basic global search functionality, then add specialized search components for communities and users. Implement category-based discovery and notification management as your platform grows and user needs become more sophisticated.
Designing intuitive discovery pathsPlan search and discovery flows that guide users from general exploration to specific content discovery. Design clear navigation patterns between different search contexts and ensure smooth transitions between discovery and engagement.
Optimizing search experiencesImplement efficient search result caching, progressive loading for large result sets, and appropriate debouncing for real-time search suggestions. Consider indexing strategies and result relevance algorithms for optimal user experience.

Best Practices

Creating effective search interfacesDesign clear search flows with intuitive filtering and sorting options. Provide helpful empty states, search suggestions, and clear result categorization. Ensure search interfaces are accessible and provide feedback for user actions.
Facilitating content explorationBalance algorithmic recommendations with user-controlled discovery. Provide multiple pathways for content discovery (search, categories, recommendations) and help users understand why certain content is being suggested.
Respecting user attentionImplement thoughtful notification policies that respect user preferences and attention. Provide granular notification controls, smart batching for related notifications, and clear visual hierarchy for different notification types.
Implementation Strategy: Begin with AmityGlobalSearchPage for comprehensive search functionality, then add specialized components like AmityTopSearchBar and category browsing based on your users’ discovery patterns and engagement metrics.