What are best practices for balancing managing content from an application vs. in Strapi admin?

Hey folks,
I really dig Strapi as a CMS, especially that it’s open-source and community-powered. Thanks!

I’m building an application that is content-heavy, with the “special” requirement that I need editors to manage the ordering of content nodes in a tree hierarchy:

Tree Example

No problem to manage the content that’s within each node with existing Strapi admin tools, but the “how to allow the building/editing of trees” (e.g. inserting nodes mid-way through the tree) is the thing that’s harder to wrap my head around. Three options come to mind:

a) use dynamic zones & relationships where a user can edit one node relationship at a time (e.g. this node connects to that node which connects to that node…)
b) build a visual Strapi admin plugin for managing the tree (e.g. allow moving/linking of nodes and then re-set node relationships in batch)
c) have the tree creation/editing exist in my own app, and link to strapi admin for editing the node content itself

A is doable but painful with non-trivial tree sizes. B could work, but not sure if it is possible / makes sense. C would work (Storyblok CMS kind of allows for this) but may not be desirable if the goal is to manage the CMS from within Strapi admin.

My specific question is: “Is something like this doable via custom Strapi admin plugins?”

My general question is “What are community thoughts on where advanced content management needs should live - in-app or in Strapi admin?”

Thanks for any thoughts/resources you’d like to share!

1 Like

I came here looking for an answer to this exact question!