I think that Community of Practice is a typical use case for Discourse. Even if they don’t explicitly start out that way, tech forums, hobby forums, customer support forums, etc, tend to organically develop many of the characteristics of CoPs.
An exception to this is that forums also attract casual users. Answering those user’s questions allows the core of the community put their knowledge to use, so I don’t think the presence of casual users asking Q&A types of questions means that a community isn’t a Community of Practice.
I’m bringing this up to suggest that a lot of the functionality you need might be baked into Discourse. And also to suggest that Discourse is lacking documentation about configuration for common use cases.
Using this as an example, Discourse has a site setting that allows you to create a shared drafts category. It’s common to use the Staff category for shared drafts, but any category that a subset of your users have access to would make sense. Users with access to the category can collaboratively create and edit topic. These topics can be scheduled to be published to another category (generally a public category) at a specific date and time. This would be a good strategy for publishing daily and weekly topics that were designed for other community members to reply to.
It’s worth noting that Discourse also has a configurable notification system. You could make use of it by publishing check-in topics to a category that either all users, or a subset of users are “watching first post” by default. (Users can opt out of this if they choose.)
For just the above scenario, there are a fair number of details that I don’t think are immediately obvious to new admins of Discourse sites. For example: what are custom groups, how is group membership used to control category access and other permissions, how do you add users to a group, how does the notification system work, etc. The point I’m trying to make is that if something like Community of Practice was recognized as a typical use case for Discourse, it would be possible to document most of the relevant configuration options.
I’m partly replying here because my own use of forums has changed over the past year. When learning about a new subject, instead of going directly to a forum, I start by exploring the subject with the assistance of an LLM. This is efficient, but it has resulted in the creation of a private knowledge base instead of contributing to a shared knowledge base on a public forum. Essentially, I’ve replaced posting on forums with writing notes on a private note taking app.
Something that might fall under the label of Community of Practice would be to provide a space for knowledge synthesis. I think the default structure of forums has been to initiate discussions with a question. Possibly there could be a cultural shift where forums come to be seen as shared knowledge bases. It could be as typical to initiate a discussion by posting “what I learned about x” as it is to post “I’ve got a question about x”. This is speculative, but it might provide a strategy for how to get a new community off the ground - just give people a place to publish what they’ve learned.