You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@fineract.apache.org by "Adam Monsen (Jira)" <ji...@apache.org> on 2026/01/26 19:48:00 UTC
[jira] [Comment Edited] (FINERACT-2171) make Slack messages discoverable by search engines
[ https://issues.apache.org/jira/browse/FINERACT-2171?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18054427#comment-18054427 ]
Adam Monsen edited comment on FINERACT-2171 at 1/26/26 7:47 PM:
----------------------------------------------------------------
I do still want this implemented and I'm happy to see work being done on it. I would like to offer some suggestions on the implementation. For example, I'd like it kept separate from the main Fineract source code (so I closed PR #5388 and suggested [~airajena] create one against the new repo instead).
My first thought is that if ASF or someone can do this for us, that would be ideal. [I asked for help in #asfinfra|https://the-asf.slack.com/archives/CBX4TSBQ8/p1769453086902669]:
{quote}we'd like to capture and archive messages from Fineract's main (public) chat room. Is there somewhere on an ASF server we could host this content? There's a lot of good conversation in our chat room that would be nice to get indexed by search engines. Currently we just manually copy/paste important conversations to [our main mailing list|https://lists.apache.org/list.html?dev@fineract.apache.org], but I think we can automate message capture with a bot by, e.g., slurping messages and generating static HTML. It could also save media (e.g. images) if that's acceptable, but maybe we just save text at first. I'm thinking we'd have like 10KiB/day of static HTML created. If we did also save media, we could limit the total saved to, say, 1MB/day or so.
{quote}
They don't do that, but they had a couple suggestions:
# (fluxo) _seems like you could commit them to a git repo, or host them on your project website. we don't offer another solution for web hosting_
# (Humbedooh) _or maybe automate sending it to a list every day?_
Here are my ideas. Feedback welcome!
# The goal is to make our public chat messages to {{#fineract}} easily index-able by search engines. I think the tool should archive messages into source for a Jekyll static site, commit it to a git repo, and let [GitHub Pages|https://docs.github.com/en/pages] render and serve the content. (I'm also open to Humbedooh's suggestion to send a message to a mailing list with all chat messages/media sent/edited in the last 24hrs)
# Is there an extant Slack chat archiver bot/tool out there we can just use as-is?
# Let's use a new git repo for this. I created [https://github.com/apache/fineract-chat-archive] .
# Stick with the Gradle build tool since our community is already familiar with that (but I'm open to another framework/stack here, it doesn't have to be a Java-ish project).
# Use Groovy or Java for the main implementation language, but maybe pull the code out of the Gradle build file? (again, I'm fine with another framework/stack, maybe choose that based on which one has everything we need out of the box and will be easiest to maintain)
# Support running this locally, e.g. {{{}gradle updateChatArchive{}}}.
# Create a very simple GitHub Action that just runs the same thing we'd run locally.
# Main build target is idempotent: It can be re-run safely. If there aren't any new messages/media to archive/update, nothing happens.
# Link message timestamp to original/upstream chat messages.
Additional ideas, maybe post-MVP:
# What should happen if a message in Slack is edited?
# Generate an index for easy browsing by
# Handle media (e.g. images).
# Handle threads.
# Include avatar images.
# Include reactions.
# Include a search tool ([Simple-Jekyll-Search|https://github.com/christian-fei/Simple-Jekyll-Search] is archived but maybe it still works, maybe there's a decent alternative, or maybe we just DIY/NIH).
was (Author: meonkeys):
I do still want this implemented and I'm happy to see work being done on it. I would like to offer some suggestions on the implementation. For example, I'd like it kept separate from the main Fineract source code (so I closed PR #5388 and suggested [~airajena] create one against the new repo instead).
My first thought is that if ASF or someone can do this for us, that would be ideal. [I asked for help in #asfinfra|https://the-asf.slack.com/archives/CBX4TSBQ8/p1769453086902669]:
{quote}we'd like to capture and archive messages from Fineract's main (public) chat room. Is there somewhere on an ASF server we could host this content? There's a lot of good conversation in our chat room that would be nice to get indexed by search engines. Currently we just manually copy/paste important conversations to [our main mailing list|https://lists.apache.org/list.html?dev@fineract.apache.org], but I think we can automate message capture with a bot by, e.g., slurping messages and generating static HTML. It could also save media (e.g. images) if that's acceptable, but maybe we just save text at first. I'm thinking we'd have like 10KiB/day of static HTML created. If we did also save media, we could limit the total saved to, say, 1MB/day or so.
{quote}
They don't do that, but they had a couple suggestions:
# (fluxo) _seems like you could commit them to a git repo, or host them on your project website. we don't offer another solution for web hosting_
# (Humbedooh) _or maybe automate sending it to a list every day?_
Here are my ideas. Feedback welcome!
# The goal is to make our public chat messages to {{#fineract}} easily index-able by search engines. I think the tool should archive messages into source for a Jekyll static site, commit it to a git repo, and let [GitHub Pages|https://docs.github.com/en/pages] render and serve the content.
# Is there an extant Slack chat archiver bot/tool out there we can just use as-is?
# Let's use a new git repo for this. I created [https://github.com/apache/fineract-chat-archive] .
# Stick with the Gradle build tool since our community is already familiar with that (but I'm open to another framework/stack here, it doesn't have to be a Java-ish project).
# Use Groovy or Java for the main implementation language, but maybe pull the code out of the Gradle build file? (again, I'm fine with another framework/stack, maybe choose that based on which one has everything we need out of the box and will be easiest to maintain)
# Support running this locally, e.g. {{{}gradle updateChatArchive{}}}.
# Create a very simple GitHub Action that just runs the same thing we'd run locally.
# Main build target is idempotent: It can be re-run safely. If there aren't any new messages/media to archive/update, nothing happens.
# Link message timestamp to original/upstream chat messages.
Additional ideas, maybe post-MVP:
# What should happen if a message in Slack is edited?
# Generate an index for easy browsing by
# Handle media (e.g. images).
# Handle threads.
# Include avatar images.
# Include reactions.
# Include a search tool ([Simple-Jekyll-Search|https://github.com/christian-fei/Simple-Jekyll-Search] is archived but maybe it still works, maybe there's a decent alternative, or maybe we just DIY/NIH).
> make Slack messages discoverable by search engines
> --------------------------------------------------
>
> Key: FINERACT-2171
> URL: https://issues.apache.org/jira/browse/FINERACT-2171
> Project: Apache Fineract
> Issue Type: Wish
> Components: Docs
> Reporter: Adam Monsen
> Priority: Minor
>
> To improve discoverability of Fineract knowledge, lessons learned, and actions taken, let's automatically capture Slack messages and post them somewhere online/public/index-able.
> See also: [https://lists.apache.org/thread/rlqx239p10xt8w9odmh27ojto25r147w|https://lists.apache.org/thread/zf3zmblj96mqo9gl69tpgz5xorzxgw3z]
> Acceptance criteria suggestion: {*}a web search for, e.g. "mifos fineract mockito" returns relevant Slack messages{*}. A similar criteria should be useful for improving index-ability of issues, patches, mailing list messages, etc.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)