I learnt a little trick from @helloitse of using you own user’s entity as the home page / dashboard. This is what I’ve been recommending to and building for people. This keeps things within the Fibery Model, without adding more unrelated artefacts.
This works really well, as you can show or hide all the things related to that user. Its already a prebuilt “My Entities” widgets, which the admin can go in and set which entities to show, in what way, etc.
The down side of this is that only admins can edit the layout and configure the views of the user entity. What we did was make a blank user entity with just a rich text field, and then explained to them how to make embedded views in rich text. This kind of works, and the admin can go in and make it per user, but its a bit clunky.
The Idea (not just for home): User-Configurable Entity Views
Maybe the ability to make some entity views configurable by all users, such that each user has their own. This is a switch that admins/creators can turn on. This would feel to me like the most elegant solution of a Home page within the current ecosystem.
Bonus points if admins/creators could still see how each user has theirs set up and copy from one user to another.
What Could Users Configure?
When it comes to hiding and reording fields, this wouldn’t be too tricky i think, but if we want to allow users to CONFIGURE the to-many relations, maybe things get too much there. Maybe then they just make an embedded view.
But to be fair, in the current proposed home, its also just hide/show and reorder for members, so it might work!
How Would This Work in Practice?
So per entity view you could have a toggle. “Allow users to configure for themselves”
Then admins/creators can see the “template view” which is what everyone starts with, as well as their own user configuration. Any changes they make in their own config is only visible to them, and then in the template view, they have the option to “push changes to all users” or on specific fields “Hide field for all” or “Show field for all”. Some kind of difference between updating template for new users vs updating the view for existing users.
What About Announcements?
Then the way to make an “Announcements” would be to make a relation to a manager. And then the manager could have a field for “Announcement for those below” or smt like that. And then everyone gets a message pulled from their manager with lookup, so its read only.
If you wanted to do company level announcements with this, it could just be as simple as adding a formula field with a certain text, then everyone gets that text in their entity. But then you also need mechanism to ensure / push fields to show on all user-configured views.
The Potential
In combination with this, it could make for a very powerful home page, where you could structurally show things that are not directly related to the current user, within the current Fibery Model.
Long story short: More stuff to entity view → use “current user” entity view as the home page.
EDIT:
Just thought of one more solution, which is kinda similar but not really. Where instead of “allow user to to configure their own”, its “allow each entity to have a different layout”. Then in the context of users, each user can make their own layout for their own user entity, but when they go to someone elses entity they will see that user’s configuration. Down side is that if we take this to things that are not the user database, i don’t know how useful it is… feels less useful.