The Social Home Page is the gateway to various social interactions within the application. This page integrates multiple components such as AmityGlobalFeedNavigationComponent, AmityEmptyNewsfeedComponent, AmityNewsfeedComponent, and AmityMyCommunitiesComponent, providing a comprehensive view of the social features available to the user.
Feature
Description
Global Feed Navigation
Enables users to navigate through different segments of the social platform like newsfeed, explore, my communities, etc.
Newsfeed Viewing
Displays recent posts, updates, and activities from connections and followed communities.
Community Access
Quick access to communities the user is part of, with a view to join more.
Engagement Options
Users can like, comment, and interact with posts directly from this page.
social_home_page/*/*
Page
You can customize page theme
social_home_page/*/newsfeed_button
Element
You can customize text
social_home_page/*/explore_button
Element
You can customize text
social_home_page/*/my_communities_button
Element
You can customize text
For more details on customization, please refer to the Customization page.
The AmitySocialHomePage can be implemented in any application to serve as the entry point to social features. Incorporate the AmitySocialHomePage within your app’s UI composition to ensure it is the first component loaded when accessing the social features.
Custom navigation behavior can be implemented to enhance or modify the interaction flow on the AmitySocialHomePage. This includes overriding default actions to navigate to specific pages like global search or community search based on user interactions.
Feature
Description
Title
Highlights title
Search
Can search communities and users globally or joined communities
Creation
Create Post, Story, Poll or Livestream
social_home_page/top_navigation/*
Component
You can customize component theme
social_home_page/top_navigation/header_label
Element
You can customize text
social_home_page/top_navigation/global_search_button
Element
You can customize icon
social_home_page/top_navigation/post_creation_button
Element
You can customize icon
For more details on customization, please refer to the Customization page.
The component is designed to be easily integrated into your application, providing a rich user interface for social interactions.
The Newsfeed Component integrates both Story Target Tab Component and AmityGlobalFeedComponent
to display a dynamic and interactive social feed. It showcases user stories at the top followed by a list of posts, providing a streamlined experience for users to engage with community content.
Feature
Description
Story Display
Highlights user stories at the top of the component, making them immediately accessible.
Post List
Displays recent posts, updates, and activities from connections and followed communities.
Engagement Options
Users can like, comment, and interact with posts directly from this page.
social_home_page/newsfeed_component/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The component is designed to be easily integrated into your application, providing a rich user interface for social interactions.
The AmityEmptyNewsFeedComponent
is used within the Social Plus platform to indicate the absence of posts in the newsfeed. This component enriches the user experience by displaying an inviting and informative placeholder when the newsfeed is empty. It includes an empty state icon, title, description, and buttons to explore or create communities.
social_home_page/empty_newsfeed/*
Component
You can customize component theme
social_home_page/empty_newsfeed/illustration
Element
You can customize icon
social_home_page/empty_newsfeed/title
Element
You can customize text
social_home_page/empty_newsfeed/description
Element
You can customize text
social_home_page/empty_newsfeed/explore_communities_button
Element
You can customize text
and icon
social_home_page/empty_newsfeed/create_community_button
Element
You can customize icon
For more details on customization, please refer to the Customization page.
This component can be seamlessly integrated into your application to handle empty states in the newsfeed.
The AmityGlobalFeedComponent
is a central component within the Social Plus platform, designed to aggregate and display a diverse array of posts from the user community. It utilizes the AmityPostContentComponent
to render individual posts, creating an engaging newsfeed experience. This component not only enhances user interaction by providing a seamless scroll through various types of posts but also serves as a reflection of the community’s activity, showing everything from user updates to broader community announcements.
Feature
Description
Post List
Displays recent posts, updates, and activities from connections and followed communities.
Engagement Options
Users can like, comment, and interact with posts directly from this page.
social_home_page/global_feed_component/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The AmityGlobalFeedComponent is designed for easy integration across various platforms, enabling a consistent user experience by displaying a global feed of posts.
The behavior of the AmityGlobalFeedComponent can be customized to handle navigation to the post detail page differently. Here’s how you can override the default behavior:
The AmityCreatePostMenuComponent
provides users with options to create posts or stories, enhancing user engagement by facilitating content creation on community feeds or my timeline. It acts as a gateway for users to navigate to specific content creation flows.
Feature
Description
Create Post
Allows users to create a new post directly from the component, navigating to a post target selection page.
Create Story
Enables story creation, directing users to a story target selection page to customize their story’s audience and settings.
social_home_page/create_post_menu/*
Component
You can customize component theme
social_home_page/create_post_menu/create_post_button
Element
You can customize text
and image
social_home_page/create_post_menu/create_story_button
Element
You can customize text
and image
social_home_page/create_post_menu/create_poll_button
Element
You can customize text
and image
social_home_page/create_post_menu/create_livestream_button
Element
You can customize text
and image
For more details on customization, please refer to the Customization page.
The AmityCreatePostMenuComponent is designed for straightforward integration into any part of your application that requires user interaction with content creation options. This component is highly versatile, supporting various development scenarios.
The behavior of the AmityCreatePostMenuComponent can be customized to manage how the application navigates upon user actions related to post and story creation. Here’s how you can override the default behavior to ensure that navigation aligns with your application’s specific user flow and business logic:
The Community Categories component displays five categories in a horizontally scrollable view and allows users to explore more categories. It is featured at the top of the Explore tab on the Social Home page, offering a streamlined experience for users to engage with community categories.
Feature
Description
Categories
Highlights 5 categories making them immediately accessible.
See More Tab
Allows user to view all categories in a separate page
social_home_page/community_categories/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The component is designed to be easily integrated into your application, providing a rich user interface for social interactions
The Recommended Communities component displays the top four recommended communities for users to join. It appears after the Community Categories component in the Explore tab, providing a seamless experience for users to discover and engage with new communities.
Feature
Description
Recommended Communities
Recommends 4 communities for user to join
social_home_page/recommended_communities/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The component is designed to be easily integrated into your application, providing a rich user interface for social interactions.
The Trending Communities component showcases the top five trending communities for users to interact with. Positioned after the Recommended Communities component in the Explore tab, it offers a seamless experience for users to engage with popular communities.
Feature
Description
Trending Communities
Displays top 5 trending communities
social_home_page/trending_communities/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The component is designed to be easily integrated into your application, providing a rich user interface for social interactions.
This page provides an ability to search all communities and users.
The Global Search Page offers a robust and intuitive search functionality. By entering a keyword, you can effortlessly search for and discover communities and users that match your interests and needs. This feature is ideal for users who wish to expand their network, join new communities, or find specific individuals. With the Global Search Page, you can explore a world of opportunities and enhance your engagement within the platform.
Feature
Description
Top Search Bar
Type search keyword and it will search across list of all communities and users.
Community search result
Displays filtered communities, and clicks to open Community Profile Page
User search result
Displays filtered users, and clicks to open User Profile Page
social_global_search_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
For more details, please refer to the Overriding Navigation Behavior page.
The Top Search Bar is the key component of the Global Search Page, providing a seamless and efficient way to search. Located at the top of the page for easy access, this search bar allows you to input keywords and instantly receive relevant results from all available communities and users. Its advanced filtering capabilities ensure that your search is precise and tailored to your needs. Whether you are looking to join new communities or connect with specific users, the Top Search Bar is your go-to tool for an enhanced and streamlined search experience.
Feature
Description
Search
Type keyword to search and cancel searching
social_global_search_page/top_search_bar/*
Component
You can customize component theme
.
social_global_search_page/top_search_bar/search_icon
Element
You can customize icon
.
social_global_search_page/top_search_bar/clear_button
Element
You can customize icon
.
social_global_search_page/top_search_bar/cancel_button
Element
You can customize text
.
For more details on customization, please refer to the Customization page.
This component displays a list of filtered communities.
The Community Search Result Component is an essential element of the Global Search Page, providing a clear and organized display of communities that match your search keywords. Once you enter a keyword into the Top Search Bar, this component dynamically updates to show a list of relevant communities, complete with brief descriptions and key details. Each community in the search results is presented in an easy-to-read format, allowing you to quickly assess and decide which groups you want to explore further. This component is designed to enhance your search experience by making it simple to find and join communities that align with your interests and goals.
Feature
Description
Communities list
A list of communities matching to search keyword
social_global_search_page/community_search_result/*
Component
You can customize component theme
social_global_search_page/community_search_result/community_private_badge
Element
You can customize icon
.
social_global_search_page/community_search_result/community_official_badge
Element
You can customize icon
.
For more details on customization, please refer to the Customization page.
When a user clicks on a community in the search results, they are seamlessly navigated to the community's profile page. This page provides detailed information about the community, including posts, members, and activities. This intuitive navigation ensures that users can quickly and effortlessly explore and engage with the communities they are interested in.
For more details, please refer to the Overriding Navigation Behavior page.
This component displays a list of filtered users.
The User Search Result Component is a key element of the Global Search Page, providing a clear and organized display of users that match your search criteria. After entering a keyword into the Top Search Bar, this component instantly updates to show a list of relevant users. This component is designed to streamline your search process, making it simple to find and engage with users who share your interests and goals, thereby fostering a more connected and interactive platform experience.
Feature
Description
Users list
A list of users matching to search keyword
social_global_search_page/user_search_result/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
When a user clicks on a profile in the user search results, they are seamlessly navigated to that user's profile page. This page offers detailed information about the user, including their posts, activities, and connections. This intuitive navigation ensures that users can quickly and effortlessly explore and connect with individuals who match their interests.
For more details, please refer to the Overriding Navigation Behavior page.
This page provides an ability to search joined communities.
The My Communities Search Page provides a streamlined and efficient way to find and manage your joined communities. Simply enter a keyword into the search bar, and the system will quickly display a list of communities that match your search criteria. This feature is perfect for users who are part of multiple groups and need a quick way to locate and access specific communities. Stay organized and connected with the My Communities Search Page, your gateway to a more personalized and interactive community experience.
Feature
Description
Search Bar
Type search keyword and it will search across list of all communities and users.
Community search result
Displays filtered communities, and clicks to open Community Profile Page
my_communities_search_page/*/*
Page
You can customize page theme
my_communities_search_page/*/community_private_badge
Element
You can customize icon
my_communities_search_page/*/community_official_badge
Element
You can customize icon
For more details on customization, please refer to the Customization page.
When a user clicks on a community in the search results, they are seamlessly navigated to the community's profile page. This page provides detailed information about the community, including posts, members, and activities. This intuitive navigation ensures that users can quickly and effortlessly explore and engage with the communities they are interested in.
For more details, please refer to the Overriding Navigation Behavior page.
The All Categories page provides users with an organized list of community categories, making it easy to explore and discover communities based on different interests and topics.
Feature
Description
Community Categories
Displays list of community categories with support for pagination.
all_categories_page/*/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The component is designed to be easily integrated into your application, providing a rich user interface for social interactions
The Communities by Category page offers a quick and efficient way to view all communities within a selected category, making it ideal for users interested in exploring related communities.
Feature
Description
List of communities
Displays list of communities under a particular categories with pagination support.
communities_by_category_page/*/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The component is designed to be easily integrated into your application, providing a rich user interface for social interactions
The social UI supports rich and interactive post creation and engagement features that enhance user expression and interaction.
Text Posts: Users can share text-based content, with or without attachments.
Rich Media Posts: Users can enhance their posts by attaching images and/or videos.
Poll Posts: Users can create polls to gather opinions, allowing other users to vote and view results in real time.
Supported on: iOS, Android, Web, Flutter
Reactions: Users can express their sentiments by reacting to a post using a predefined set of emojis.
Comments: Users can engage in conversations by adding comments to posts.
Supported on: iOS, Android, Web, Flutter
Users can @mention other users within both posts and comments. Mentions are rendered with a highlighted visual style to make them stand out in the content. This makes interactions more direct, increases visibility, and supports better community engagement by bringing individuals into conversations.
Supported on: iOS, Android, Web, Flutter
When a post includes a URL, the system automatically generates a link preview by extracting metadata from the target webpage. This provides users with a quick glance at the linked content, including the title, description, and thumbnail (if available).
Supported on: iOS, Android, Web, Flutter
To support more authentic and professional community interactions, our platform introduces a specialized Brand User feature. This allows designated users—typically admins—to create posts and comments as the brand, rather than as individuals.
Supported on: iOS, Android, Web, Flutter
These features collectively create a dynamic and engaging social experience for users across the platform.
The Post Details Page displays detailed information about a post, including its content, engagements, and comments, using a combination of the SocialPlusPostContentComponent and the SocialPlusCommentTrayComponent.
Feature
Description
Engagement Options
Users can like, comment, and interact with post directly from this page.
post_detail_page/*/*
Theme
User can customize page theme
post_detail_page/*/back_button
Element
User can update back button icon
post_detail_page/*/menu_button
Element
User can update menu button icon
For more details on customization, please refer to the Customization page.
The Post Details Page can be used in the app if you already have an AmityPost object from Social Plus SDK. The postId from the AmityPost object is needed to initialize it.
Custom navigation behavior can be implemented to enhance or modify the interaction flow on the AmityPostDetailPage.
For more details, please refer to the Overriding Navigation Behavior page.
The Post Content Component displays information about a post, including its content and engagements.
*/post_content/*
Theme
User can customize component theme.
*/post_content/moderator_badge
Element
User can change icon and wording of Moderator Badge.
*/post_content/timestamp
Element
User can hide timestamp.
*/post_content/menu_button
Element
User can change icon of menu button.
*/post_content/reaction_button
Element
User can change reaction button icon and wording.
*/post_content/comment_button
Element
User can change comment button icon and wording.
*/post_content/share_button
Element
User can change share button icon and wording.
For more details on customization, please refer to the Customization page.
The Post Content Component can be used in the app if you already have an AmityPost object from Social Plus SDK.
Custom navigation behavior can be implemented to enhance or modify the interaction flow on the AmityPostContentComponent.
For more details, please refer to the Overriding Navigation Behavior page.
The Reaction List Component displays detailed information about users who have reacted to your post and the specific reactions they have used.
Reaction List
Users can view the list of user who reacted on the post.
*/reaction_list/*
Theme
User can customize component theme.
*/reaction_list/user_avatar_view
Element
User can hide avatar image view.
*/reaction_list/user_display_name
Element
User can hide display name.
*/reaction_list/reaction_image_view
Element
User can hide reaction icon.
For more details on customization, please refer to the Customization page.
The Reaction List Component can be used in the app if you already have an AmityPost object from Social Plus SDK. postId from AmityPost object will be used to initialize the component.
The Post Composer Page enables users to create and edit post by inputting text content and attaching media and files. It uses AmityMediaAttachmentComponent and AmityDetailedMediaAttachmentComponent to attach media and files.
Feature
Description
Post Composition
User can create a post with text content, images, videos and files by attaching them.
Post Editing
User can edit a existing post by using this page in edit mode.
post_composer_page/*/*
Theme
User can customize page theme.
post_composer_page/*/close_button
Element
User can update close button icon.
post_composer_page/*/community_display_name
Element
User can hide community name on navigation bar.
post_composer_page/*/create_new_post_button
Element
User can change wording of post button on navigation bar.
post_composer_page/*/edit_post_button
Element
User can change wording of save button on navigation bar if this page is used as edit mode for editing post.
post_composer_page/*/edit_post_title
Element
User can change navigation title appeared in the edit mode.
For more details on customization, please refer to the Customization page.
The Post Composer page can be used in two modes, creation mode to create a new post and editing mode to edit the existing post.
Custom navigation behavior can be implemented to enhance or modify the interaction flow on the AmityPostComposerPage.
For more details, please refer to the Overriding Navigation Behavior page.
The Media Attachment Component allows users to add media and files to a post when creating or editing it in the AmityPostComposerPage.
Feature
Description
Attach media and files
User can use this component to attach media and files to a post.
This component allows user to fully customize on these items.
post_composer_page/media_attachment/*
Theme
User can change component theme.
post_composer_page/media_attachment/camera_button
Elemet
User can change camera button icon.
post_composer_page/media_attachment/image_button
Element
User can change photo button icon.
post_composer_page/media_attachment/video_button
Element
User can change vide button icon.
post_composer_page/media_attachment/file_button
Element
User can change attachment button icon.
For more details on customization, please refer to the Customization page.
The Media Attachment Component can be used in this way if the user wants to use it separately.
The Detailed Media Attachment Component allows users to add media and files to a post when creating or editing it in the AmityPostComposerPage.
Feature
Description
Attach media and files
User can use this component to attach media and files to a post.
This component allows user to fully customize on these items.
post_composer_page/detailed_media_attachment/*
Theme
User can change component theme.
post_composer_page/detailed_media_attachment/camera_button
Elemet
User can change camera button icon and wording.
post_composer_page/detailed_media_attachment/image_button
Element
User can change photo button icon and wording.
post_composer_page/detailed_media_attachment/video_button
Element
User can change vide button icon and wording.
post_composer_page/detailed_media_attachment/file_button
Element
User can change attachment button icon and wording.
For more details on customization, please refer to the Customization page.
The Detailed Media Attachment Component can be used in this way if the user wants to use it separately.
This page provides a list of joined communities that user can create a post on
The Post Target Selection Page is a crucial component designed to streamline the process of selecting the target audience or community for post sharing within the Social Plus UIKit 4.0. This feature allows users to specify where their post will be visible, whether it's a particular community, or to all followers, enhancing the user experience by providing control and flexibility over their content's visibility.
Feature
Description
Post creation
Select a community or my timeline to create a post with the selected target.
select_post_target_page/*/*
Page
You can customize page theme
select_post_target_page/*/close_button
Element
You can customize image
select_post_target_page/*/title
Element
You can customize text
select_post_target_page/*/my_timeline_text
Element
You can customize text
For more details on customization, please refer to the Customization page.
Post Target Selection Page will navigate to post composer, you can override the behavior to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
The Poll Post Composer Page enables users to perform polling with communities and connected users.
Feature
Description
Post Composition
User can create a poll post with text question, and text options.
poll_post_composer_page/*/*
Theme
User can customize page theme.
poll_post_composer_page/*/poll_question_tile
Element
User can change wording of poll question title.
poll_post_composer_page/*/poll_options_title
Element
User can change wording of poll question title.
poll_post_composer_page/*/poll_options_desc
Element
User can change wording of poll options description.
poll_post_composer_page/*/poll_add_option_button
Element
User can change wording of add option button and its corresponding icon
poll_post_composer_page/*/poll_duration_title
Element
User can change wording of poll duration title.
poll_post_composer_page/*/poll_duration_desc
Element
User can change wording of poll duration description.
poll_post_composer_page/*/poll_multiple_selection_title
Element
User can change wording of poll multiple selection title.
poll_post_composer_page/*/poll_multiple_selection_desc
Element
User can change wording of poll multiple selection description.
For more details customization, please refer to Customization page.
A poll typically includes a question and at least two answer options. The creator can decide whether participants are allowed to select one or multiple options and can set an end date for the poll.
This page provides a list of joined communities that user can create a poll post on
The Poll Target Selection Page is a crucial component designed to streamline the process of selecting the target audience or community for polling within the Amity UIKit 4.0. This feature allows users to specify where their poll post will be visible, whether it's a particular community, or to all followers, enhancing the user experience by providing control and flexibility over their content's visibility.
Feature
Description
Post creation
Select a community or my timeline to create a poll post with the selected target.
select_poll_target_page/*/*
Page
You can customize page theme
select_poll_target_page/*/close_button
Element
You can customize image
select_poll_target_page/*/title
Element
You can customize text
select_poll_target_page/*/my_timeline_text
Element
You can customize text
For more details customization, please refer to Customization page.
Poll Target Selection Page will navigate to poll post composer you can override the behavior to navigate to your own pages.
For more details, please refer to Overriding Navigation Behavior page.
Will be available soon
Livestream posts allows users to broadcast live video content, which other users can view in real time or watch later as a recorded video once the stream ends.
Enable creation of a live stream post on the feed of the selected target either a community or user own timeline.
Supported on: iOS, Android
Enables livestream viewing when it is live or ended.
Supported on: iOS, Android, Web
This page allows you to select target for creating live stream post.
livestream_post_target_selection_page/*/*
Page
You can customize page theme
livestream_post_target_selection_page/*/close_button
Element
You can customize image
livestream_post_target_selection_page/*/my_timeline_text
Element
You can customize text
livestream_post_target_selection_page/*/title
Element
You can customize text
Livestream Post Target Selection Page will navigate to live stream creation page. You can also override the behavior to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
This page allows you to set up a title, description, thumbnail & start your live stream.
create_livestream_page/*
/*
Page
You can customize theme
create_livestream_page/*/start_livestream_button
Element
You can customize image
create_livestream_page/*/add_thumbnail_button
Element
You can customize image
create_livestream_page/*/switch_camera_button
Element
You can customize image
create_livestream_page/*/end_live_stream_button
Element
You can customize theme
create_livestream_page/*/live_timer_status
Element
You can customize theme
The Story Target Tab Component is a dynamic feature of the Social Plus UIKit 4.0 that enhances the application page by allowing members to share and engage with stories. This new version introduces a suite of customization options and interactive capabilities designed to improve user experience and foster community interaction.
Story Target (Community Level)
User can click to see a list of stories from a community or can create a story to a community.
Story Targets (Global Level)
A list of story targets will show in newsfeed. User can click one of the targets to see the stories posted in that community.
Explore the variety of customization options available for the Story Tab Component to align with your app's design and user expectations.
*/story_tab_component/*
Component
You can customize theme
*/story_tab_component/story_ring
Element
You can specify list of colors to progress_color
and background_color
for ring color
*/story_tab_component/create_new_story_button
Element
You can specify create_new_story_icon
and background_color
For more details on customization, please refer to the Customization page.
Integrating the Story Target Tab Component into your iOS or Android app enhances the community profile page by allowing users to engage with stories directly related to a specific community. This section provides a detailed usage description and explanation for both iOS and Android platforms.
To integrate the Story Target Tab Component in an iOS application, you utilize the AmityStoryTabComponent
initializer with a specified storyFeedType
. For a community-specific story feed, you pass the .community(community)
as the parameter, where community
is an instance of your AmityCommunity object.
This snippet creates a storyTabComponent
configured for a specific community. It then wraps this component in a SwiftUIHostingController
to integrate it seamlessly into your SwiftUI application structure. This approach ensures that the story tab is dedicated to displaying stories from the specified community, enhancing content relevance and user engagement within that community space.
For Android, the Story Target Tab Component is available as a Composable function, making it easy to integrate within Jetpack Compose-based UI. Here's how you can use it:
This function demonstrates how to display the Story Target Tab Component for a specific community by utilizing the AmityStoryCommunityTargetTabComponent
composable. You need to provide the communityId
, which is obtained from the AmityCommunity
object or other sources, ensuring that the stories displayed are related to this community.
In this example, we define a functional component called CommunityStoriesTab
that takes a communityId
prop. Inside the component, we render the AmityStoryTabComponent
and pass the communityId
as the value for the communityFeed
property within the type
prop.
For react native, the Story Target Tab Component is exported as an usual React Native component. You can import AmityStoryTabComponent
from amity-react-native-social-ui-kit
, wrap with UIKit Provider for Authentication and use anywhere you want.
AmityStoryTabComponentEnum can be globalFeed or communityFeed. communityFeed require targetId as communityId
Story Target Tab Component will navigate to other pages based on the user's actions, you can override the behavior to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
This page provides media picking and camera for story creation.
The Camera Page component of Social Plus UIKit 4.0 offers an immersive, easy-to-integrate solution for adding camera functionality to your app. It enables users to capture and share moments directly within stories, enhancing the storytelling experience within communities.
Feature
Description
Camera view
User can capture image or record video to create story
Media picker
User can select media image or video to create story
camera_page/*/*
Page
You can customize theme
camera_page/*/close_button
Element
You can customize close_icon
and background_color
For more details on customization, please refer to the Customization page.
For integrating the Story Creation Page into an iOS app, use the AmityCreateStoryPage
component. Here's a simple example of navigating to the story creation page, specifying a community ID and optionally an avatar image URL.
This code snippet demonstrates how to initialize the story creation component with a specific target community ID and user avatar, and then embed it within a SwiftUI hosting controller for presentation.
Integrating the Story Creation Page in an Android application involves starting a new activity. Below is a method example that launches the story creation activity, utilizing the community ID to tailor the experience.
This function shows how to initiate the story creation page activity with the community ID as the target for the story, ensuring the content is relevant to the specified community.
For react native, the Story Create Story Page is exported as an usual React Native component. You can import AmityCreateStoryPage
from amity-react-native-social-ui-kit
, wrap with UIKit Provider for Authentication and use anywhere you want.
For story creation, UIKit support only for community now. It means
targetId is communityId and targetType is 'community'.
onCreateStory: will be called after creation finished.
Story Creation Page will navigate to other pages based on user's actions, you can override the behavior to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
This page provides draft preview for story creation.
The Story Draft Page component of Social Plus UIKit 4.0 is designed to offer users the ability to prepare and preview their story content before publishing. It supports both image and video media types, enhancing the storytelling process with a seamless draft and review experience.
Feature
Description
Draft view
User can view content of the story before sharing, add hyperlink or adjust image.
Hyperlink
User can add link and customize link text to story.
create_story_page/*/*
Page
You can customize theme
create_story_page/*/back_button
Element
You can customize back_icon
and background_color
create_story_page/*/aspect_ratio_button
Element
You can customize aspect_ratio_icon
and background_color
create_story_page/*/story_hyperlink_button
Element
You can customize hyperlink_button_icon
and background_color
create_story_page/*/hyper_link
Element
You can customize hyper_link_icon
and background_color
create_story_page/*/share_story_button
Element
You can customize share_icon
, background_color
and hide_avatar
*/hyper_link_config_component/*
Component
You can customize theme
*/hyper_link_config_component/done_button
Element
You can customize done_icon
,done_button_text
and background_color
*/hyper_link_config_component/cancel_button
Element
You can customize cancel_icon
and cancel_button_text
For more details on customization, please refer to the Customization page.
Integrating the Story Draft Page allows users to preview and potentially edit their story drafts before publication. This integration involves creating instances of the AmityDraftStoryPage
for image or video media types, showcasing the versatility of the component in handling different content forms:
These snippets illustrate how to instantiate the draft page for both image and video stories, integrating them into the SwiftUI view hierarchy. The distinction between media types (image vs. video) allows for tailored preview experiences, ensuring users can effectively review and adjust their stories as needed.
On Android, integrating the Story Draft Page into your application involves launching an activity tailored for either image or video story drafts. Here's an example of how to initiate this activity, which takes into account the media type (image or video) and the associated file URI:
This Kotlin function demonstrates initiating the Story Draft Page activity with essential parameters like the community ID, a boolean indicating if the draft is an image, and the URI of the file. This allows for a dynamic draft creation experience where users can prepare and preview their stories, whether they're sharing an image or a video.
pageId
string
Specifies the unique identifier for the create story page. It helps in distinguishing between different pages or sections within the application.
file
File
or null
Represents the file (image or video) selected by the user for creating the story. If no file is selected, it should be set to null
.
creatorAvatar
string
Specifies the URL or path to the avatar image of the user who is creating the story. It is used to display the user's avatar in the create story page.
onCreateStory
function
A callback function that is invoked when the user submits the story creation form. It should be implemented to handle the story creation logic based on the selected file and other parameters.
onDiscardStory
function
A callback function that is invoked when the user discards or cancels the story creation process. It should be implemented to handle the discard logic and any necessary cleanup.
For react native, the Story Drafting Page is exported as an usual React Native component. You can import AmityDraftStoryPage
from amity-react-native-social-ui-kit
, wrap with UIKit Provider for Authentication and use anywhere you want.
For story draft page, UIKit support only for community now. It means
targetId is communityId and targetType is 'community'.
mediaType: PhotoFile or VideoFile type from react-native-vision-camera + {uri: string, name: string}
onFinish: will be called after story finished.
onPressAvatar: will be called when user pressed avatar icon
onPressCommunityName: will be called when user press community name
The Story Viewing Page is a pivotal component of Social Plus UIKit 4.0, enabling users to immerse themselves in the stories shared within their communities. It provides a streamlined interface for navigating through and engaging with content, contributing significantly to the social experience within the app.
Feature
Description
View story
User can view image or video story
story_page/*/*
Page
You can customize theme
story_page/*/progress_bar
Element
You can customize progress_color
and background_color
story_page/*/overflow_menu
Element
You can customize overflow_menu_icon
story_page/*/close_button
Element
You can customize close_icon
story_page/*/story_impression_button
Element
You can customize impression_icon
story_page/*/story_comment_button
Element
You can customize comment_icon
and background_color
story_page/*/story_reaction_button
Element
You can customize reaction_icon
and background_color
story_page/*/create_new_story_button
Element
You can customize create_new_story_icon
and background_color
story_page/*/speaker_button
Element
You can customize mute_icon
, unmute_icon
and background_color
For more details on customization, please refer to the Customization page.
In the integration process for the Story Viewing Page on iOS, an essential step involves creating a StoryTarget
. This object is crucial for specifying which community's stories are to be viewed, including details like the community's ID, display name, verification status, and avatar URL. This setup ensures the stories presented are relevant and correctly attributed to the specific community context.
This setup ensures that the Story Viewing Page is initialized with community-specific stories, allowing users to engage with content that is most relevant to them.
For Android, the process involves starting a new activity dedicated to story viewing, with the target community's ID as a key parameter:
This code snippet illustrates how to launch the Story Viewing Page for a particular community, ensuring that users are presented with stories from communities they are interested in or affiliated with.
pageId
string
'story_page'
Specifies the unique identifier for the view stories page. It helps in distinguishing between different pages or sections within the application.
targetId
string
-
Represents the ID of the target whose stories are being viewed. It is used to fetch and display the relevant stories for that target.
For react native, the Story Drafting Page is exported as an usual React Native component. You can import AmityViewStoryPage
from amity-react-native-social-ui-kit
, wrap with UIKit Provider for Authentication and use anywhere you want.
For story view page, UIKit support only for community now. It means
targetId is communityId and targetType is 'community'.
Story Viewing Page will navigate to other pages based on user's actions, you can override the behavior to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
This component provide viewing comment, creating and editing, adding reaction.
The Comment Tray Component in Social Plus UIKit 4.0 facilitates a dynamic interaction layer for users to engage with stories or posts through comments and reactions. This customizable component is designed to foster community engagement and conversation directly within the content viewing experience.
View, create or edit comments
User can view, create or edit text comments or reply comments, can also add reaction to comment.
*/edit_comment_component/*
Component
You can customize theme
*/edit_comment_component/cancel_button
Element
You can customize button_text
, icon
and background_color
*/edit_comment_component/save_button
Element
You can customize button_text
, icon
and background_color
*/comment_tray_component/*
Component
You can customize close_icon
For more details on customization, please refer to the Customization page.
For iOS applications, integrating the Comment Tray Component involves initializing it with a reference ID (such as a story or post ID) and specifying the reference type. Here's a simple example:
This snippet sets up the comment tray for a specific story, ready to be incorporated into the app’s UI through a SwiftUI hosting controller.
On Android, the Comment Tray Component is utilized within a Composable function, offering customization options such as enabling or disabling interactions and comments:
This code demonstrates how to integrate the component within a Compose UI, providing flexibility in configuring interaction capabilities.
In this example, we define a functional component called CommunityStoriesTab
that takes a communityId
prop. Inside the component, we render the AmityStoryTabComponent
and pass the communityId
as the value for the communityFeed
property within the type
prop.
This page provides a list of feeds where users can create posts based on their selected story target.
The Target Selection Page is a crucial component designed to streamline the process of selecting the target audience or community for story and post sharing within the Social Plus UIKit 4.0. This feature allows users to specify where their story will be visible, whether it's a particular community, or to all followers, enhancing the user experience by providing control and flexibility over their content's visibility.
Feature
Description
Story creation on community feed
When a user selects a community, UIKit will open Story Creation page with the selected community.
select_story_target_page/*/*
Page
You can customize theme
select_story_target_page/*/close_button
Element
You can customize image
select_story_target_page/*/title
Element
You can customize text
For more details on customization, please refer to the Customization page.
The target Selection Page will navigate to other pages based on the user's actions, you can override the behavior to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
The Community Setup Page can be used to create a brand new community or updating the existing community.
Feature
Description
Creating a community
Fill in the information needed to create the community like avatar, name, description and categories. Being a public or private community can be selected as well.
Updating the existing community
The community avatar, name, description, and categories can be updated. You can change the community from public to private and vice versa using this page.
community_setup_page/*/*
Page
You can customize page theme
community_setup_page/*/close_button
Element
You can customize image
community_setup_page/*/title
Element
You can customize text
community_setup_page/*/community_edit_title
Element
You can customize text
community_setup_page/*/community_name_title
Element
You can customize text
community_setup_page/*/community_about_title
Element
You can customize text
community_setup_page/*/community_category_title
Element
You can customize text
community_setup_page/*/community_privacy_title
Element
You can customize text
community_setup_page/*/community_privacy_private_icon
Element
You can customize image
community_setup_page/*/community_privacy_private_title
Element
You can customize text
community_setup_page/*/community_privacy_private_description
Element
You can customize text
community_setup_page/*/community_privacy_public_icon
Element
You can customize image
community_setup_page/*/community_privacy_public_title
Element
You can customize text
community_setup_page/*/community_privacy_public_description
Element
You can customize text
community_setup_page/*/community_add_member_title
Element
You can customize text
community_setup_page/*/community_add_member_button
Element
You can customize text
and image
community_setup_page/*/community_create_button
Element
You can customize text
and image
community_setup_page/*/community_edit_button
Element
You can customize text
and image
community_setup_page/*/image_button
Element
You can customize text
and image
community_setup_page/*/camera_button
Element
You can customize text
and image
For more details on customization, please refer to the Customization page.
The Community Setup Page will navigate to the user listing page to add users to the community if it is created as private, and to the category listing page to attach categories to the community. You can override the behavior to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
The Add Category Page allows user to search for categories to attach to a community. A community can have up to 10 categories.
Feature
Description
Add category
Up to 10 categories can be selected to attach to a community.
community_add_category_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
The Add Member Page allows users to search for a specific user by display name to add to a community.
Feature
Description
Add User
Users can be searched by display name to add them into a community.
community_add_member_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
The Community Profile Page is the main page of a community where all announcement posts, pinned posts, regular posts, and stories created within the community are stored. This page also allows users with the necessary permissions to create posts and stories in the community.
Feature
Description
Community Post Feed
All posts created within the community can be seen in the feed.
Pinned Posts
Pin tab is the place where all pinned posts can be seen.
Announcement Posts
Announcement posts will be displayed on top of community post feed at the first tab.
Image Feed
Image tab is the one that consolidate all the image posted in the community.
Video Feed
Video tab will have all video posted in the community.
Pending Posts
User with moderator permission can review all pending posts in the community if post are needed to be reviewed.
community_profile_page/*/*
Page
You can customize page theme
community_profile_page/*/back_button
Element
You can customize image
community_profile_page/*/menu_button
Element
You can customize image
community_profile_page/community_pin/community_create_post_button
Element
You can customize image
For more details on customization, please refer to the Customization page.
The Community Profile Page will navigate to the post composer page, story creation page, pending post page, community membership page, community setting page, and post detail page. You can override the behavior to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
The Community Header Component will display the cover photo, display name, description and categories, and other information about the community.
Feature
Description
Community Information
Display cover photo, display name, description and categories, members and posts count, stories, pending posts.
community_profile_page/community_header/*
Component
You can customize component theme
community_profile_page/community_header/community_verify_badge
Element
You can customize image
community_profile_page/community_header/community_join_button
Element
You can customize image
community_profile_page/community_header/community_pending_post
Element
You can customize image
For more details on customization, please refer to the Customization page.
The Community Feed Component will display a list of posts created in this community.
Feature
Description
Post Feed
Display a list of posts.
community_profile_page/community_feed/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The Community Pin Feed Component will display a list of pinned posts created in this community.
Feature
Description
Pin Post Feed
Display a list of pinned posts.
community_profile_page/community_pin/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The Community Image Feed Component will display a list of image posts created in this community.
Feature
Description
Image Feed
Display a list of image posts.
community_profile_page/community_image_feed/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The Community Video Feed Component will display a list of video posts created in this community.
Feature
Description
Video Feed
Display a list of video posts.
community_profile_page/community_video_feed/*
Component
You can customize component theme
For more details on customization, please refer to the Customization page.
The pending post page will have the list of posts needed to be reviewed. Moderator of the community can review the pending posts.
Feature
Description
Pending Posts
Moderator can review the pending posts to accept or decline. If the user is not a moderator, the list will be the user's own posts needed to be reviewed.
pending_posts_page/*/*
Page
You can customize page theme
pending_posts_page/*/back_button
Element
You can customize image
pending_posts_page/*/title
Element
You can customize text
For more details on customization, please refer to the Customization page.
The pending post content component will display a post needed to be reviewed. Moderator of the community can review the pending post and can accept or decline.
Feature
Description
Pending Posts
Moderator can review the pending post to accept or decline. If the user is not a moderator, the list will be the user's own posts needed to be reviewed.
pending_posts_page/pending_post_content/*
Component
You can customize component theme
pending_posts_page/pending_post_content/post_accept_button
Element
You can customize text
pending_posts_page/pending_post_content/post_decline_button
Element
You can customize text
For more details on customization, please refer to the Customization page.
The Community Settings Page is the gateway for changing various settings within the community and updating its profile information. User can leave the community or close the entire community from this page.
Feature
Description
Editing Profile
Community profile can be updated through this setting.
Updating Members
Adding new members or removing existing members can be done from this setting. It also has the functionality to change role of users within the community.
Notification Setting
All notification settings related to a community can be changed here.
Post Permissions
Post related permissions can be changed here.
Story comments
Story comment permissions can be changed here.
Leave community
User can leave the community.
Close community
Moderator user can close the entire community.
community_setting_page/*/*
Page
You can customize page theme
community_setting_page/*/edit_profile
Element
You can customize text
community_setting_page/*/members
Element
You can customize text
community_setting_page/*/notifications
Element
You can customize text
community_setting_page/*/post_permission
Element
You can customize text
community_setting_page/*/story_setting
Element
You can customize text
community_setting_page/*/leave_community
Element
You can customize text
community_setting_page/*/close_community
Element
You can customize text
community_setting_page/*/close_community_description
Element
You can customize text
For more details on customization, please refer to the Customization page.
The Community Profile Page will navigate to each page related to the setting. You can override these behaviors to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
The Community Notification Setting Page is the main page to change the notification settings within the community.
Feature
Description
Allow notification
User can turn the community notification on and off.
community_notification_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
This page will navigate to dedicated notification setting pages of posts, comments, and stories. You can override the behaviors to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
The Community Posts Notification Page is the page to change post-related notification settings in a community.
Feature
Description
React posts
Update notification setting of post reactions.
New posts
Update notification setting of post creation.
community_posts_notification_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
The Community Comments Notification Page is the page to change comment-related notification settings in a community.
Feature
Description
React comments
Update notification setting of comment reactions.
New comments
Update notification setting of comment creations.
Replies
Update notification setting of reply comment creations.
community_comments_notification_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
The Community Stories Notification Page is the page to change story-related notification settings in a community.
Feature
Description
New stories
Update notification setting of story creations.
Story reactions
Update notification setting of story reactions.
Story comments
Update notification setting of story comment creations.
community_stories_notification_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
The Community Post Permissions Page is the page to change post creation permission within a community.
Feature
Description
Post Creation Permission
Update post creation permission setting in the community.
community_post_permission_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
The Community Story Setting Page is the page where users can update the setting whether new comments will be allowed in the story in a community.
Feature
Description
Allow comments
This setting will allow users to create new comments in the community stories.
community_story_setting_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
The Community Membership Page will provide the complete user-related information in a community. Adding a new user into the community, removing a user, or updating the roles of the users can be done on this page.
Feature
Description
Adding new members
New members can be added into the community.
Removing existing members
Existing members can be removed from the community.
Updating user roles
Roles of the users within the community can be updated.
Reporting the user
Report other community members.
community_membership_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
a This page will navigate to add a user page and user profile page. You can override behaviors to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
The user profile page will display user information, follow relationship, following and followers count, managing blocked user, editing user profile, accept or decline follow request, created post feed and post creation action.
Feature
Description
User Information
Display user name, description, following and follower count
Follow Request
User can accept or decline follow request from other users
User Feed
Display post, image and video feed posts created by the user
Post Creation
Allow user to create a post on own timeline
Other User Information
User can view other user profile and can follow/unfollow/block that user
user_profile_page/*/*
Page
You can customize page theme
user_profile_page/*/back_button
Element
You can customize image
user_profile_page/*/menu_button
Element
You can customize image
user_profile_page/*/user_feed_tab_button
Element
You can customize image
user_profile_page/*/user_image_feed_tab_button
Element
You can customize image
user_profile_page/*/user_video_feed_tab_button
Element
You can customize image
For more details on customization, please refer to the Customization page.
This page will navigate to other pages. You can override behaviors to navigate to your own pages.
For more details, please refer to the Overriding Navigation Behavior page.
The User Profile Header component will display user information, follow relationship, following and followers count, and accept or decline follow requests.
Feature
Description
User Information
Display user name, description, following and follower count
Follow Request
User can accept or decline follow request from other users
user_profile_page/user_profile_header/*
Component
You can customize component theme
user_profile_page/user_profile_header/follow_user_button
Element
You can customize text
and image
user_profile_page/user_profile_header/following_user_button
Element
You can customize text
and image
user_profile_page/user_profile_header/following_user_button
Element
You can customize text
and image
user_profile_page/user_profile_header/unblock_user_button
Element
You can customize text
and image
user_profile_page/user_profile_header/user_following
Element
You can customize text
user_profile_page/user_profile_header/user_follower
Element
You can customize text
For more details on customization, please refer to the Customization page.
This component will navigate to other pages. You can override behaviors to navigate to your pages.
For more details, please refer to the Overriding Navigation Behavior page.
The User Feed Component displays list of posts created by that user.
Feature
Description
User Feed
Display a list of posts created by user
Interaction
User can perform creating comment and adding reaction to post
user_profile_page/user_feed/*
Component
You can customize component theme
user_profile_page/user_feed/empty_user_feed
Element
You can customize text
and image
user_profile_page/user_feed/private_user_feed
Element
You can customize text
and image
user_profile_page/user_feed/private_user_feed_info
Element
You can customize text
user_profile_page/user_feed/blocked_user_feed
Element
You can customize text
and image
user_profile_page/user_feed/blocked_user_feed_info
Element
You can customize text
For more details on customization, please refer to the Customization page.
The User Image Feed Component displays a list of images from posts created by that user.
Feature
Description
Image Feed
Display a list of images from posts created by user
user_profile_page/user_image_feed/*
Component
You can customize component theme
user_profile_page/user_image_feed/empty_user_image_feed
Element
You can customize text
and image
user_profile_page/user_image_feed/private_user_image_feed
Element
You can customize text
and image
user_profile_page/user_image_feed/private_user_image_feed_info
Element
You can customize text
user_profile_page/user_image_feed/blocked_user_image_feed
Element
You can customize text
and image
user_profile_page/user_image_feed/blocked_user_image_feed_info
Element
You can customize text
For more details on customization, please refer to the Customization page.
The User Video Feed Component displays list of videos from posts created by that user.
Feature
Description
Video Feed
Display a list of videos from posts created by user
user_profile_page/user_video_feed/*
Component
You can customize component theme
user_profile_page/user_video_feed/empty_user_video_feed
Element
You can customize text
and image
user_profile_page/user_video_feed/private_user_video_feed
Element
You can customize text
and image
user_profile_page/user_video_feed/private_user_video_feed_info
Element
You can customize text
user_profile_page/user_video_feed/blocked_user_video_feed
Element
You can customize text
and image
user_profile_page/user_video_feed/blocked_user_video_feed_info
Element
You can customize text
For more details on customization, please refer to the Customization page.
The Edit User Profile Page allows user to update their avatar image, display name or about information.
Feature
Description
Edit User Profile
Update avatar image, display name or about information.
edit_user_profile_page/*/*
Page
You can customize page theme
edit_user_profile_page/*/back_button
Element
You can customize image
edit_user_profile_page/*/title
Element
You can customize text
edit_user_profile_page/*/user_display_name_title
Element
You can customize text
edit_user_profile_page/*/user_about_title
Element
You can customize text
edit_user_profile_page/*/update_user_profile_button
Element
You can customize text
For more details on customization, please refer to the Customization page.
The Blocked User Page displays a list of users blocked by the current user, the user can unblock other users from here.
Feature
Description
Blocked Users
Display a list of blocked users
Unblock User
User can unblock other user
blocked_users_page/*/*
Page
You can customize page theme
blocked_users_page/*/back_button
Element
You can customize image
blocked_users_page/*/title
Element
You can customize text
blocked_users_page/*/unblock_user_button
Element
You can customize text
For more details on customization, please refer to the Customization page.
This page will navigate to other pages. You can override behaviors to navigate to your pages.
For more details, please refer to the Overriding Navigation Behavior page.
The User Relationship Page display a list of users following by current user and a list of followers, user can report or block the selected user.
Feature
Description
Following list
Display a list of users that the current user is following.
Follower list
Display a list of users that are following to current user.
User Action
User can report or block the selected user.
user_relationship_page/*/*
Page
You can customize page theme.
For more details on customization, please refer to the Customization page.
This page will navigate to other pages. You can override behaviors to navigate to your pages.
For more details, please refer to the Overriding Navigation Behavior page.
The User Pending Follow Request Page displays a list of users that are requested to follow the current user, user can accept or decline their follow request.
Feature
Description
Follow Request List
Display a list of users that are requested to follow current user
User Action
User can accept or decline their follow request
user_pending_follow_request_page/*/*
Page
You can customize page theme
For more details on customization, please refer to the Customization page.
This page will navigate to other pages. You can override behaviors to navigate to your pages.
For more details, please refer to the Overriding Navigation Behavior page.