chickaree / web

https://chickar.ee
GNU Affero General Public License v3.0
4 stars 2 forks source link

Mark and filter read articles #11

Open wesleylima opened 4 years ago

wesleylima commented 4 years ago

I want my feed to only include articles I haven't read. I want a want for the app to mark items I've read and (optionally) only show me articles that are new to me

davidbarratt commented 4 years ago

How would the user "mark" them? Would they manually do it (an icon or link)? or would a click on the article constitute being read?

davidbarratt commented 4 years ago

I guess more broadly, are you reading "articles" or are you reading the feed? Eventually the feed will include items that do not have links like Notes. But maybe something like @instagram's You're all caught up feature?

wesleylima commented 4 years ago

I'm reading the "feed". I'm assuming they're all presented in chronological order? I'm not 100% sure exactly "feed-based" apps like twitter or Instagram determine if you've read a post, but I'm assuming it marks something as "read" based on how long long an article is present in your view port. Once the article is "read" it shouldn't appear on your feed unless the user indicates that they want to see "read" posts.

davidbarratt commented 4 years ago

I'm reading the "feed". I'm assuming they're all presented in chronological order?

It's in reverse-chronological order (latest content is at the top). Meaning the things you read will always be at the top (or in the middle if there is new content you haven't seen).

I'm not 100% sure exactly "feed-based" apps like twitter or Instagram determine if you've read a post, but I'm assuming it marks something as "read" based on how long long an article is present in your view port.

That makes sense to me. I think recording a new View activity after a certain time from entering the view port (3 seconds?) makes sense to me. Unfortunately, like all things at the moment, this activity isn't going to sync with other devices yet.

Once the article is "read" it shouldn't appear on your feed unless the user indicates that they want to see "read" posts.

I'm not sure how the UI would look for this. Technically this would (almost always) be at the top of the feed. I guess you'd "open" it and it would expose it upward ? I haven't seen another feed based UI do anything like this. The closest thing I know if is @Instagram's you're all caught up, but since their feed isn't in a defined order, they are able to put the unread content at the top and it's somewhat expected. I guess we could do the same (move the read content to the bottom), but I don't think that should be the default. It might be a little jarring if users refresh the page expecting the content to update (if there is updated content) and instead see all of the content that was in their view port disappear). Do you know of any other examples of a UI like this that I could take a look at for ideas? The only thing I can think of is an email interface, but that has a very different model since the read state is exposed and opening it implies that it's been read.

davidbarratt commented 4 years ago

Though maybe it could just be a filter or a button to remove that content if you want? That might the simplest way to do it?

davidbarratt commented 4 years ago

On further thought... maybe what you have "read" is just one of many possible filters? I imagine in the future we could filter by category or type of content or some other ways?

akbarratt commented 4 years ago

How would the user "mark" them? Would they manually do it (an icon or link)? or would a click on the article constitute being read?

Maybe others can weigh in on this as well, but I think marking as read should happen automatically as posts come into view. I believe sites like Instagram do this automatically and invisibly.

The annoyance with Instagram and other sites is that the feed refreshes while you're using it, marking posts that you have looked at but not read as "read" so ideally there would be a way, such as clicking on an icon, to mark messages as unread or perhaps bookmarked for later.

To quote what @davidbarratt said in our in-person discussion. "It should work like an email inbox but look like a social feed."

davidbarratt commented 4 years ago

To quote what @davidbarratt said in our in-person discussion. "It should work like an email inbox but look like a social feed."

For my future self: Gmail's "Unread First" or "Starred First" is probably a good design pattern to follow. Technically the "feed" is no longer in strict chronological order, but the user is asking for it to be grouped by a different metric (read vs unread, etc.)