Ok, taking a total fresh approach based on all the months I’ve been reading people’s suggestions and !lemmywishlist@lemmy.ml kind of things…

All / All Remote / Local / Remote Specific-Isntance

I think server operators should at minimum want the ability to view Remote-only, and even per-instance. Further, I think proxy of API to a community should be something to head towards… where a Lemmy API call can be forwarded as an API call on another Lemmy server for a specific community.

Small, Medium, Large, Trending, Featured Community

Some stock multi-community lists, some of which are dynamically generated like Small / Medium / Large based on number of active posts, users, or other tunable parameters. Encourage people to engage in topics that they normally would not see…

Multi-community sharing

I think foundation is that it should use words and not numbers. Right now, the entire Lemmy system is built upon using localized index numbers for community. Even if it just becomes a JSON blob to throw into PostgreSQL and recall by name…

Maybe have them like communities. And people can subscribe/unsubscribe to a specific list. And the list can have moderators who regulate it (editors). And an option to clone a list to new name.

/mc/ multi-community, name. And no ID numbers. A Trigger or something would have to build the ID numbers in the background.

And a browser of these, much like communities are browsed… and maybe even voting on them. Lemmy doesn’t have voting on communities - subscribe alone - but sometimes you don’t want to subscribe because they have too much content - but you would still vote for it or recommend it.

  • RoundSparrow @ BT@bulletintree.comOPM
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    1 year ago

    Some random thoughts on how to build this in a hurry…

    Clone the Community tables

    community
    community_aggregates
    community_block
    community_follower
    community_language
    community_moderator
    community_person_ban

    Try to figure out how the main SELECT queries for listing posts will use this. We don’t want another JOIN … so ultimately maybe make it a virtual Person (hat ends up being a security role, borrowing from PostgreSQL that USER/ROLE are same?) and these get dumped into the community_follower table with a different parameter passed for the PERSON when the query runs?

    Browsing should basically be a new button next to Join to “Add to multi-community”

    Maybe name this all multipass in reference to 5th Element ;)