How to configure Topics?
For getting started, please refer to this doc.
Enabling topics in your community brings you one step closer to building a topic based feed experience using the LikeMinds Feed Flutter SDK.
The following configurations for topics are offered in Feed Flutter SDK:
1. Adding Topics to Posts:
a. By default, you can include topics when creating a post.
b. You can optionally make selecting a topic mandatory for creating a post.
2. Filtering Posts by Topics:
a. By default, you can filter the posts you see based on the topics they are associated with.
b. There's an option to control how users select topics for filtering.
Step 1
Create an instance of LMFeedConfig
to configure topics.
config: LMFeedConfig(
composeConfig: const LMFeedComposeScreenConfig(
// this will make the topic compulsory to create a post
topicRequiredToCreatePost: true,
// [true by default] enables or disables topic in feed
enableTopics: true,
),
feedScreenConfig: const LMFeedScreenConfig(
// Enables filtering post using topics
enableTopicFiltering: true,
// Topic Filter can be shown as a bottom sheet or a separate screen
topicSelectionWidgetType: LMFeedTopicSelectionWidgetType.showTopicSelectionBottomSheet,
)
)
Below is the description of keys you have used in the above snippet.
Name | Type | Description | Optional |
---|---|---|---|
enableTopics | bool | Boolean to enable or disable topic in Feed, defaults to true | ✔️ |
topicRequiredToCreatePost | bool | Whether or not topic is compulsory for creating a post, defaults to false | ✔️ |
enableTopicFiltering | bool | Enables filtering post using topics, defaults to true | ✔️ |
topicSelectionWidgetType | LMFeedTopicSelectionWidgetType | Selects the type of Topic filtering widget to be shown, LMFeedTopicSelectionWidgetType.showTopicSelectionBottomSheet will present a bottom sheet whereas LMFeedTopicSelectionWidgetType.showTopicSelectionScreen will present a separate screen, default to LMFeedTopicSelectionWidgetType.showTopicSelectionScreen | ✔️ |
enableTopics:
This is the difference when topic selection is enabled or disabled in the Compose screen.
true | false |
enableTopicFiltering:
This is the difference in Feed's design when topic based filtering is enabled or disabled
true | false |
topicSelectionWidgetType:
This is the difference between the two options we provide to select topics for filtering feed.
showTopicSelectionScreen | showTopicSelectionBottomSheet |
Step 2
While calling initialize
method of LMFeedCore
, pass the instance created in Step 1.
await LMFeedCore.instance.initialize(
// Replace below string with api key of your community
apiKey: "YOUR_API_KEY",
config: config,
);
Below is the description of keys you have used in the above snippet.
Name | Type | Description | Optional |
---|---|---|---|
apiKey | String | API key of the community | |
config | LMFeedConfig | Configures features in Feed, i.e. topics, heading in post, etc., | ✔️ |