User Card Directory

:discourse2: Summary User Card Directory changes the /u user directory to display a grid of user cards instead of the stats table.
:eyeglasses: Preview Preview on Discourse Theme Creator
:hammer_and_wrench: Repository Link https://github.com/discourse/discourse-user-card-directory
:open_book: New to Discourse Themes? Beginner’s guide to using Discourse Themes

Install this theme component

Features

Settings

Name Description
hide current user Always hide the current user from the grid
show stats Show statistics under each user card
default view
Translation Default
show_cards Show as cards
show_table Show as table

Credits

Big thanks to @joebuhlig for discourse-biobook, which inspired this work. And also @angus @fzngagan and @alxpck for prompting the various core improvements we needed to make this achievable.


:discourse2: Hosted by us? Theme components are available to use on our Standard, Business, and Enterprise plans.

Last edited by @JammyDodger 2024-06-13T05:15:39Z

Check documentPerform check on document:
87 Likes

Great. Very delighted to see this one launched.

7 Likes

I love it. Thank you.

1 Like

Nice! The only weirdness I’m seeing is the website is showing twice on my site Nature Photographers Network

4 Likes

Excellent component!

Perhaps similar to the duplication that David mentioned, the location is shown twice when the Discourse Locations plugin is used.

Screen Shot 2020-03-16 at 2.17.07 PM

The first line in the screenshot above is from the Discourse profile location. The second is from the Locations plugin.

3 Likes

Thanks @omarfilip and @davidkingham. Looks to be a slight incompatibility with the locations plugin. Should be resolved now

BTW @davidkingham your /u page is blank for anonymous visitors… not sure exactly why - but I guess it is one of your plugins and/or themes.

9 Likes

This component doesn’t seem to work properly on the latest stable release … I don’t see any of the details on the user cards:

(That’s the Vincent theme shown, but I also tested it on plain vanilla Discourse with the same results.)

1 Like

Yes, unfortunately it’s only compatible with the latest tests-passed version of discourse

8 Likes

Ah, ok! Thanks for the clarification! (I missed the note about it in the OP :man_facepalming: )

4 Likes

Thanks this is beautiful and something I’ve been thinking about for a while. I know this is a theme component so not sure it changes any functionality, but asking anyways. Does this happen to enable users to search each other by their attributes?

For instance if a custom attribute for users is University Attended and a user wanted to find everyone who went to a particular school could they search for Stanford and have all the users pull up here? I saw this link that seemed to maybe imply that but having trouble interpreting it.

might be out of the scope, but i found this post linked on another one that seemed to be headed down that route.

Thanks & awesome work!

7 Likes

Hi @weallwegot,

Unfortunately not, this doesn’t add the ability to filter users by their metadata. It does add a group dropdown, so maybe that could work for you? You could have groups for each university, people could join those groups, and then they would appear in the dropdown

5 Likes

Awesome Theme Component - Though will need to wait for Discourse 2.5 roll out.

3 Likes

Hi, David
i have a confusion, when i use search or select a group, my personal user card always shows, whether i am in the group or not in.
can you help me,
how to remove my card if i’m not in the select group or i’m not the search name.

2 Likes

Ah okay. I see. I meant this link and @fzngagan’s PR, but i see it was declined.

The only thing with the groups approach you mentioned is I think it would put a lot of manual onus on the moderators/admin of the forum to put people in groups as they join or worse, as they update their profile.
I’m trying to think of a workaround. Perhaps if there was a way to automate the segmentation of users into groups by a custom attribute, dropdown though so its exact matches? Curious if you know of anything like that.
I’ll look around.

4 Likes

nice presentation, it’d be great if one could switch between different displays: grid and table.

also the “filter by group” string can not be translated. may you fix it?

2 Likes

@david

I setup your component on my local setup and results are amazing. Appreciate the efforts.

I noticed there’s a hidden site setting enable_new_user_card_route but it doesn’t seem to change the results here. Is the setting required for anything here?

2 Likes

Nope, that setting is not required for this. It changes the route used for “normal” user cards, so that they’re much more efficient. We’ll be changing the default to true in the next few weeks.

I’ll update in this topic when it’s done: Changes to the user card data source

7 Likes

We are running the master, which says it is even with tests-passed, but I am still having the problem with missing details on the cards, just as on the screenshot @cjk77 posted. Do we need to switch to tests-passed to get this working?

1 Like

You shouldn’t run master in production - it sometimes contains commits which have not yet passed continuous integration tests. tests-passed is much safer, and only a few minutes behind.

But yes, this theme should work on master. Can you share a link to your site so I can take a look?

5 Likes

Thanks David. Our site is at connect.arival,travel.

2 Likes