Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: user lists #372

Closed
ayoayco opened this issue Dec 8, 2022 · 30 comments · Fixed by #1532
Closed

feat: user lists #372

ayoayco opened this issue Dec 8, 2022 · 30 comments · Fixed by #1532
Assignees
Labels
c: feature Request for new feature p: 2-high Fix main branch

Comments

@ayoayco
Copy link
Member

ayoayco commented Dec 8, 2022

Implement creating / showing lists on Elk.

The Mastodon web client has this feature:

Screenshot 2022-12-08 at 9 56 59 AM

@ayoayco ayoayco added the c: feature Request for new feature label Dec 8, 2022
@ayoayco
Copy link
Member Author

ayoayco commented Dec 8, 2022

@sarah11918, I wrote this one as our initial issue for the Lists feature :) you can add info or ideas as well! :)

@ayoayco ayoayco added the s: waiting for user interest Waiting for more users interested in this feature label Dec 8, 2022
@sarah11918
Copy link

Hi @ayoayco - is there any info that would be helpful re: how I use lists? What actions I would need to perform? Anything specifically I could answer? 😄

@ayoayco
Copy link
Member Author

ayoayco commented Dec 12, 2022

I guess we could start with anything you find that could be better in the way Mastodon does this feature, otherwise Mastodon web will be the basis for how Elk implements lists. For example if you have used a client that does it in a different way and you prefer it, then the dev can inspect how we can bring the best implementation to Elk :) @sarah11918

This was referenced Dec 23, 2022
@vwchu
Copy link
Contributor

vwchu commented Dec 23, 2022

Perhaps the blank space to the right of the timeline and under the search box could be used to display the user's pinned lists or followed hashtags. Maybe 6-8 of them could be pinned by the user for quick access. On mobile, those links could become tabs under the header alongside a Home tab in a similar way as displayed in Twitter's mobile app. Other ideas:

  • A dedicated Lists view. Perhaps this can be combined with a view listing the followed hashtags in a tabbed view. Currently, there is no way to view which hashtags you are following in the default Mastodon web client.
  • Add Lists to the left sidebar. If there are too many items on the left sidebar, maybe the Favourites and Bookmarks views should be combined in a single tabbed view or the Local and Federated timeline views.
  • Add dropdown items to Add/Remove users from a list within their user profile and from any of their posts.
  • Maybe multiple pinned followed hashtags could be combined to form custom timelines (like in the Advanced view).

@prohr
Copy link

prohr commented Dec 27, 2022

Mastodon's stock functionality for lists requires that you first be following the account, so posts appear on both the list + your main TL. This makes sense from an AP perspective (so that they're delivered) + from a privacy perspective (so followees can be notified who's seeing their content). However, it just adds to the firehose problem of keeping up with your main TL.

Twitter lets you cut down on the firehose by just adding noisy accounts to a topic-specific list + rumor has it that Mastodon has a workaround (or bug) that allows you to achieve a similar effect by unfollowing an account after adding them to a list. Both seem like awkward power-user approaches.

However a friendlier variant would be to split off an entire subset of your main TL to a separate tab using lists. This is similar to what Darius Kazemi is calling "exclusive lists" on his Glitch fork, although I've recommended that "filtered list" might be more user-friendly for folks who've ever used email.

For details on the intended UX, see the subthread here:

https://hachyderm.io/@pevohr/109458396082627442

@sarah11918
Copy link

OOh, that's a really interesting idea, and one I'd love @prohr.

For context, the absolute best implementation I've seen of this (filtering, excluding from a timeline -- not 'muting' but rather separating out) is with a MacOS Twitter client YoruFukurou. When I moved away from MacOS, I really missed the ability to have lists plus a filtered timeline. https://sites.google.com/site/yorufukurou/home-en

I wrote about how I set up elaborate filtering rules on my blog, but the kicker is this:

There are a variety of tabs one can create, but what makes Yoru Fukurou unique as a Twitter client is its ability to create a “Filter Tab.” A filter tab shows only tweets from your timeline that match particular keywords or phrases, hashtags and/or users. It is like a search tab, but it searches only your timeline, not all of Twitter.

Most importantly for me, Yoru Fukurou allows you the option of removing filtered tweets from your regular timeline. This means that any tweet that matches any of your filtering criteria is hidden away from view as you browse your timeline tab, and instead is only visible within your Filter Tab. This is how I can keep up with my Twitter timeline even when people I follow are tweeting about the Jays game currently underway.

With Mastodon now, I add every person I follow to a list of some kind. I read my timeline only when I think I can keep up, OR I switch to reading lists only (never the timeline) exactly for the reason you stated: it's all people I follow, so every post is duplicated.

So for me, first and foremost, I would need the ability to add someone to a list, because everyone I follow is put on a list.

But yes, lists become far more useful if you can filter posts that show up in lists out of your main timeline. Then, I wouldn't need to have everyone on a list, nor so many silly lists! 😅

Stretch goal: don't stop at just "filtering out a post if it's already on a list", but even "filter out a post that matches this filter criteria"... game changer! ;)

@prohr
Copy link

prohr commented Dec 27, 2022

To be clear, there are at least 3 orthogonal possibilities here:

  1. per-account setting (this one's on list, but off main TL) = Twitter behavior
  2. per-list switch (entire list off main TL) = proposal above
  3. global switch (all lists off main TL) = possible interpretation of what @sarah11918 said

3 might be easier to explain + implement, but it's an all-or-nothing, feast-or-famine kind of thing. Set it once + forget it.

Whereas 2 allows the more interactive possibility of mixing + matching which lists of accounts should skip your TL. My hunch is that this might allow some interesting workflows, but I don't have concrete examples to point to. Mostly I like the magical feeling that one set of accounts appears or disappears from my TL at the flick of a switch. Whoosh! They're gone. Voila! They're back!

@jmarkel
Copy link

jmarkel commented Dec 31, 2022

I see this issue is "Waiting for user interest"
Consider this user INTERESTED

@patak-dev patak-dev added p: 2-high Fix main branch and removed s: waiting for user interest Waiting for more users interested in this feature labels Dec 31, 2022
@kissu
Copy link

kissu commented Jan 5, 2023

I really like lists (Tweetdeck syndrome I guess). Being able to follow a very specific group of people depending on my mood (Vue, Performance, 3D, Close-friends etc...) is quite a deal breaker for me.
Pretty much the only way I ever used Twitter efficiently haha.

So that in Elk would be by far my most requested feature. 🤩

@alvarosabu
Copy link
Contributor

I agree, would be a really nice feature!

@ZMYaro
Copy link

ZMYaro commented Jan 5, 2023

@vwchu I agree that having lists available as a drop-down in the home tab (at least on mobile) makes the most sense, especially since, as prohr said, anyone you have on a list is necessarily already on your home feed (at time of writing).

+1 to removing Favorites from the sidebar to make space. In addition to your suggestions, it could also be added as a tab on the user's own profile, which is what Tumblr and Twitter do (among others).

I am not sure it is as necessary to add the add/remove from list option to every post menu since sharing options are already there, but I recognize adding it there would be consistent with Twitter. Has consideration been given to adding it to the mouseover profile card instead?

@maegul
Copy link

maegul commented Jan 13, 2023

In line with @jmarkel 's comment, I too am interested! I like what I've seen of elk a lot so far, but for me the lists is kind of a must have and I'll probably mostly stay with the default webview for now entirely because of the lack of lists in elk .

Generally though, this feels like a nice opportunity to innovate on the filtering the fire-hose front on the client side, to whatever extent that's feasible. Adding hashtags to lists somehow would be awesome (if possible)! So I'll be keeping an eye on elk for sure!

@ayoayco
Copy link
Member Author

ayoayco commented Jan 13, 2023

@maegul these are good ideas! We've had some discussions lately on "pinning" public timelines, I guess hashtags could be pinned too.

Are you able to create separate issues so we keep the scope of this one to user lists?

@kerim
Copy link

kerim commented Jan 14, 2023

I would like to replace "home" with a list of my choice, as well as have a couple of other pinned lists that I check regularly. I would also like to be able to add people to lists when I follow them.

@kissu
Copy link

kissu commented Jan 18, 2023

Even Twitter has that one nowadays (on desktop), more friendly than ever. 😄
CleanShot 2023-01-18 at 18 53 06@2x

@gerwitz
Copy link

gerwitz commented Jan 19, 2023

+1 for @kerim's scenario. I follow promiscuously but then use a "regulars" list for my daily timeline browse.

@LauraLangdon
Copy link
Contributor

It would be super helpful to be able to add a user to a list directly from that user’s profile!

@keelancook
Copy link

I'll chime in here as well. Love the look of Elk. Can't use it until lists are in place. They are 100% how I organize all of my followers. Mastodon is too noisy otherwise.

My ideal use case would be an app that allows me to completely edit the timeline options on the side. Allow me to choose whether or not I show "home" or "bookmarks" or "favorites" and give me the option to replace these with my own lists, or followed hashtags. That would speed up my use of Mastodon tenfold.

On mobile, as much as I hate to say it, Twitter's new implementation is ideal by having your lists at the top of the feed for easy selection. There is one exception. A number of Mastodon apps allow you to swipe left or right in the timeline to switch lists by gesture navigation. If an app had the looks of Elk and that kind of functionality for navigating lists, it would be my immediate choice.

Also, as cluttered as it can get, I do often like using the multi-column advanced interface that allows showing multiple lists as columns on a wide screen.

And finally, the option to mute a user from the home timeline once they are in a list is part of the Fedilabs android app. It's brilliant. You can just choose to do so when you follow someone and add them to a list.

You all are doing great work. Elk is beautiful.

@boehs
Copy link
Member

boehs commented Jan 26, 2023

image

I'm working on this!

ATM I just want this to "work", so probably no management, viewing users, ETC.

would self-assign, but I can't

@isocny
Copy link

isocny commented Jan 26, 2023

Also important is making it easy to 1) add people to lists 2) see who is on a list 3) see what lists someone is on.

@ayoayco
Copy link
Member Author

ayoayco commented Jan 26, 2023

Thanks for picking this up @boehs! 🎉

Just see what you can do to move this forward. We want feature parity with Mastodon web app first, then we can maybe organize the very nice suggestions from comments here into separate issues.

@boehs
Copy link
Member

boehs commented Jan 26, 2023

Also important is making it easy to 1) add people to lists 2) see who is on a list 3) see what lists someone is on.

Agreed. I plan to add support for all of that in due time. I personally like incremental merges, and the first pull request that adds basic viewing is now ready for review (I mentioned one core member, but I don't have a specific preference:))

We want feature parity with Mastodon web app first, then we can maybe organize the very nice suggestions from comments here into separate issues.

All of that sounds good to me!

@boehs boehs mentioned this issue Jan 26, 2023
13 tasks
@afk-mario
Copy link

Also important is making it easy to 1) add people to lists 2) see who is on a list 3) see what lists someone is on.

Maybe will help someone, I made a web app to manage the accounts you follow in lists

https://github.com/afk-mario/federike/

@boehs
Copy link
Member

boehs commented Jan 27, 2023

Also important is making it easy to 1) add people to lists 2) see who is on a list 3) see what lists someone is on.

Maybe will help someone, I made a web app to manage the accounts you follow in lists

afk-mario/federike

this is funky! we'll probably have the listed features by the end of tomorrow, but I absolutely love the design on this and it's such a cool niche that we don't handle.

@boehs
Copy link
Member

boehs commented Jan 30, 2023

Hi everyone, quick update. You should be able to:

  • add users from lists
  • view users in lists
  • remove users from lists
  • view lists

in practice, there is a bug that didn't appear during the PR that is seriously degrading that functionality. I'm looking into it, but likely won't have much time this week.

This is how it's supposed to work: https://deploy-preview-1479--elk-zone.netlify.app/universeodon.com/list/2768

Note that on https://main.elk.zone/lists, it's a little borked. If someone does have a bit of free time and can investigate, that would be great, but I will get back around to it soon ❤️

@ayoayco
Copy link
Member Author

ayoayco commented Jan 30, 2023

Thanks @boehs! I don’t know if this is tracked, but do you see on mobile there still no three dots now on a profile?

953E7BB2-9755-42CB-A718-FF092250DBA5

@boehs
Copy link
Member

boehs commented Jan 30, 2023

Thanks @boehs! I don’t know if this is tracked, but do you see on mobile there still no three dots now on a profile?

953E7BB2-9755-42CB-A718-FF092250DBA5

Oop, that's my fault.

@boehs boehs mentioned this issue Jan 31, 2023
3 tasks
patak-dev pushed a commit that referenced this issue Feb 2, 2023
Co-authored-by: userquin <[email protected]>
closes #372
@boehs
Copy link
Member

boehs commented Feb 2, 2023

Hi All, I am so excited to announce elk now supports lists with parity to mastodon. We will continue to work on enhancing lists even further, but will do so in separate issues. If all goes well, lists will be available on elk tomorrow, and for now you can test them on https://main.elk.zone

Special thanks for @userquin's help in making the last little bit really much better then what I was planning.

Consider backing elk on open collective or github sponsors

Much love, Evan ❤️

@beejunk
Copy link

beejunk commented Feb 2, 2023

Everything I hoped for and more, @boehs ! Thank you so much for your work, Elk will definitely be my client of choice now.

@kerim
Copy link

kerim commented Feb 2, 2023

Fantastic. I've now switched to Elk as my main web client. I do hope to see the ability to pin individual lists at some point, but this is already great!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c: feature Request for new feature p: 2-high Fix main branch
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.