# Topic list tabs for user-customizeable saved filters

**URL:** <https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953>\
**Category:** Feature\
**Tags:** rfc\
**Created:** [2016年三月13日 03:45 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953 "2016-03-13T03:45:55Z")\
**Posts on this page:** 17\
**Page:** 2

<div class="post-metadata">

**Author:** ![erlend\_sh](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/erlend_sh/32/119475_2.png) [@erlend\_sh](https://meta.discourse.org/u/erlend_sh)\
**Post date:** [2017年九月28日 16:32 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/22 "2017-09-28T16:32:15Z")

</div>

> [@mcwumbly](#):
>
> Would really like a way to have a simple top menu tab for the favorites topic list rather than bringing back the whole drop-down.

Maybe achievable with a theme module? I’ve seen similar tricks: [Add Unsolved button to top menu using custom HTML](https://meta.discourse.org/t/adding-unsolved-button-to-top-menu-using-custom-html/59758)

If not then you should probably roll your own extension or fork of this plugin, because hiding the category drop down is highly non-standard.

> [@mcwumbly](#):
>
> Perhaps, rather than a separate categories page for my/categories, the “starred/favorites” categories could be shown together as a separate group at the top of the existing categories page?

So basically the same as the “move favorited categories to top of categories list” stretch goal right?

> [@mcwumbly](#):
>
> Seems like it’d make sense and be consistent to be able to star/unstar a category from the category topic list page (next to the drop-down where I can watch/mute it, etc).

That’s some prime real estate… I can support it as a stretch goal. I think it should be behind a setting, because this is more in your face than any of the other UI we’re adding. It adds a choice + unknown to what is currently a single option.

---

<div class="post-metadata">

**Author:** ![mcwumbly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcwumbly/32/103861_2.png) [@mcwumbly](https://meta.discourse.org/u/mcwumbly)\
**Post date:** [2017年九月29日 04:38 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/23 "2017-09-29T04:38:51Z")

</div>

The intersections for my/new and my/unread are not important to me, and I kind of doubt they are important to most. Stuff in /unread is likely of interest regardless of the category…

So, my preference would be to keep it simpler for starters and _only_ have a tab for “my categories” that is equivalent to my/latest.

If we need to do this with further customization, that’s OK, but maybe this is an opportunity to _reduce_ scope for this plugin.

---

<div class="post-metadata">

**Author:** ![LeoMcA](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/leomca/32/87233_2.png) [@LeoMcA](https://meta.discourse.org/u/LeoMcA)\
**Post date:** [2017年九月29日 12:39 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/24 "2017-09-29T12:39:41Z")

</div>

I’d agree my/unread is of minimal importance, because as you say:

> [@mcwumbly](#):
>
> Stuff in /unread is likely of interest regardless of the category…

(but I included it in my mockups for consistency and completeness sake)

I wouldn’t agree that my/new was as unimportant - in fact, I think it’s the _most_ important feature here, since nothing remotely like it exists already: _“Show me stuff I haven’t seen, but you know I probably want to”_.

> [@mcwumbly](#):
>
> So, my preference would be to keep it simpler for starters and only have a tab for “my categories” that is equivalent to my/latest.

This breaks the user expectation of what those tabs do (at least by default): the dropdown on the left filters what appears in the tabs on the right.

> [@mcwumbly](#):
>
> If we need to do this with further customization, that’s OK, but maybe this is an opportunity to reduce scope for this plugin.

Implementing a link to my/latest as a tab through a plugin should be trivial.

---

<div class="post-metadata">

**Author:** ![mcwumbly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcwumbly/32/103861_2.png) [@mcwumbly](https://meta.discourse.org/u/mcwumbly)\
**Post date:** [2017年九月29日 12:48 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/25 "2017-09-29T12:48:49Z")

</div>

Cool. We can revisit how to tweak things to our particular needs at a later time through a plugin or other customization.

I certainly do not want to get in the way of more important progress here.

---

<div class="post-metadata">

**Author:** ![erlend\_sh](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/erlend_sh/32/119475_2.png) [@erlend\_sh](https://meta.discourse.org/u/erlend_sh)\
**Post date:** [2017年十二月19日 10:44 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/26 "2017-12-19T10:44:55Z")

</div>

@mcwumbly and @LeoMcA this is now available for testing.

To test it, please checkout [the ‘favorites’ branch of Bianca’s fork of Discourse](https://github.com/nbianca/discourse/tree/favorites) and the [discourse-favorites plugin](https://github.com/nbianca/discourse-favorites).

---

<div class="post-metadata">

**Author:** ![mcwumbly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcwumbly/32/103861_2.png) [@mcwumbly](https://meta.discourse.org/u/mcwumbly)\
**Post date:** [2017年十二月19日 11:19 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/27 "2017-12-19T11:19:29Z")

</div>

I haven’t been keeping up with a development environment recently. Is there any publicly accessible sandbox with this running? Or will this be enabled on meta at some point? (I can also reach out privately about trying this out on our hosted staging environment).

---

<div class="post-metadata">

**Author:** ![erlend\_sh](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/erlend_sh/32/119475_2.png) [@erlend\_sh](https://meta.discourse.org/u/erlend_sh)\
**Post date:** [2017年十二月19日 11:26 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/28 "2017-12-19T11:26:15Z")

</div>

> [@mcwumbly](#):
>
> Is there any publicly accessible sandbox with this running?

I’ll try make that happen, but no promises! Everyone’s schedules are a bit more irregular than usual seeing as it’s Christmas.

---

<div class="post-metadata">

**Author:** ![mcwumbly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcwumbly/32/103861_2.png) [@mcwumbly](https://meta.discourse.org/u/mcwumbly)\
**Post date:** [2017年十二月19日 11:27 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/29 "2017-12-19T11:27:44Z")

</div>

No rush on my end. I could just wait to try it out here on meta if that is going to happen at some point.

---

<div class="post-metadata">

**Author:** ![Stranik](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stranik/32/85638_2.png) [@Stranik](https://meta.discourse.org/u/Stranik)\
**Post date:** [2017年十二月19日 12:18 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/30 "2017-12-19T12:18:00Z")

</div>

I tried to put the plug-in on the locale, the error is the white screen.  
Only by removing the plugin was it possible to look at the logs.

 ![1](https://global.discourse-cdn.com/meta/original/3X/9/6/9664774c68d1366976d680050674e25dd60dd358.gif)

---

<div class="post-metadata">

**Author:** ![nbianca](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nbianca/32/157984_2.png) [@nbianca](https://meta.discourse.org/u/nbianca)\
**Post date:** [2017年十二月19日 13:15 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/31 "2017-12-19T13:15:27Z")

</div>

Hello Evgeny,

It looks like some functions that I implemented in my fork of Discourse cannot be found. Are you certain that you are using the ‘favorite’ branch of my fork of Discourse?

I am sorry I cannot be more helpful.😞 I am on a train right now. When I get home, I will look into it.

---

<div class="post-metadata">

**Author:** ![Stranik](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stranik/32/85638_2.png) [@Stranik](https://meta.discourse.org/u/Stranik)\
**Post date:** [2017年十二月19日 15:33 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/32 "2017-12-19T15:33:37Z")

</div>

Thank you. I did not notice that there are a lot of changes in the branch itself. I think this is an ordinary plugin.

[https://github.com/nbianca/discourse/commit/c156167bf4c8fbc69c27542bcba9777f3265e10d](https://github.com/nbianca/discourse/commit/c156167bf4c8fbc69c27542bcba9777f3265e10d)

---

<div class="post-metadata">

**Author:** ![mcwumbly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcwumbly/32/103861_2.png) [@mcwumbly](https://meta.discourse.org/u/mcwumbly)\
**Post date:** [2018年一月3日 14:11 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/33 "2018-01-03T14:11:11Z")

</div>

> [@mcwumbly](#):
>
> No rush on my end. I could just wait to try it out here on meta if that is going to happen at some point.

Hey @erlend_sh - is this likely to be deployed on meta at any point to play around with?

Also, I’m curious about this scenario, @nbianca:

- category is configured not to show up on latest
- user adds category to “favorites”

Will topics from that category show up in their favorites list in that scenario?

The reason I ask is because one use case for this is where many “niche” categories exist that we might not want to “spam” everyone with on latest, but which different folks may want to be able to “opt-in” to see some subset of them in one place.

---

<div class="post-metadata">

**Author:** ![erlend\_sh](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/erlend_sh/32/119475_2.png) [@erlend\_sh](https://meta.discourse.org/u/erlend_sh)\
**Post date:** [2018年一月3日 17:54 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/34 "2018-01-03T17:54:15Z")

</div>

> [@mcwumbly](#):
>
> Hey @erlend_sh - is this likely to be deployed on meta at any point to play around with?

For now there is a playground instance here:

[http://104.236.54.251/](http://104.236.54.251/)

I can grant you admin access if you want to create more categories to play around with.

---

<div class="post-metadata">

**Author:** ![nbianca](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nbianca/32/157984_2.png) [@nbianca](https://meta.discourse.org/u/nbianca)\
**Post date:** [2018年一月3日 21:36 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/35 "2018-01-03T21:36:18Z")

</div>

> [@mcwumbly](#):
>
> Will topics from that category show up in their favorites list in that scenario?

Yes they will. In the [demo instance](http://104.236.54.251/) I created the “Not on homepage” category that is not on the homepage (latest), but is visible in Favourites (if selected).

---

<div class="post-metadata">

**Author:** ![mcwumbly](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mcwumbly/32/103861_2.png) [@mcwumbly](https://meta.discourse.org/u/mcwumbly)\
**Post date:** [2018年一月4日 04:17 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/36 "2018-01-04T04:17:16Z")

</div>

Yay! Got a chance to play around a little bit in the sandbox.

@nbianca small bug if you weren’t already aware:

1. go to [http://104.236.54.251/my/preferences](http://104.236.54.251/my/preferences)
2. click ‘Interface’ on the left

Expected behavior:

I can see which categories I’ve favorited

Obseverved:

No categories are listed.

Workarounds:

The favorited categories show up if you refresh the page or navigate directly to [http://104.236.54.251/my/preferences/interface](http://104.236.54.251/my/preferences/interface)

* * *

Wishlist:

1. A link to “Favorites” in the hamburger menu

2. I’d love to see a star on the page for the category topic list itself that I can toggle (eg, this page: [http://104.236.54.251/c/not-on-homepage](http://104.236.54.251/c/not-on-homepage))

---

<div class="post-metadata">

**Author:** ![erlend\_sh](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/erlend_sh/32/119475_2.png) [@erlend\_sh](https://meta.discourse.org/u/erlend_sh)\
**Post date:** [2018年三月7日 05:47 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/37 "2018-03-07T05:47:54Z")

</div>

Continued here:

> [@Favorites - select your favorite categories](https://meta.discourse.org/t/favorites-build-a-topic-list-of-your-favorite-topics/81959):
>
> Hello everyone, This plugin lets users select their favorite categories and view only topics from their favorite categories. This plugin is the implementation of the idea mentioned [here](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953) and drafted as a specification [here](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/20). How to use The user decides which categories he likes the most and marks them as favorite. This can be done from the Categories view. The user can also modify his favorites list from the User Preferences view. warning Due to a limitation of Discours…

---

<div class="post-metadata">

**Author:** ![erlend\_sh](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/erlend_sh/32/119475_2.png) [@erlend\_sh](https://meta.discourse.org/u/erlend_sh)\
**Post date:** [2018年三月7日 05:47 UTC](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953/38 "2018-03-07T05:47:58Z")

</div>



[上一頁](https://meta.discourse.org/t/topic-list-tabs-for-user-customizeable-saved-filters/40953.md?page=1)
