Let’s try again… What I’m proposing here does not move any sources to different repos or change how e.g. the spring-boot tables of components etc are generated. I think it’s completely appropriate for the code generation etc for camel-spring-boot and camel-karat to be in separate repositories, and how tables are generated is an independent issue.
I think that normally in an Antora component you want to present a cohesive set of information. I think that means that the vast majority of the links in the component will be to other pages in the same component. Otherwise, when you click a link, suddenly you’ll be in a completely different component environment, which I regard as extremely surprising. Right now, almost everything in camel-spring-boot and camel-karaf is a link to a different component, the “components” component. In particular, I find this disorienting. I click a link and think, “what happened, where did camel-spring-boot go?? I’m looking at the main activemq page!! How do I get back to spring-boot info??” I’m proposing that we consider presenting the camel-spring-boot and camel-karaf info as part of the “components” component, having sections for each in the components nav, under the existing stuff. I also think it’s a good idea to have items in the nav for components, dataformats, etc, so the presentation is parallel to the main components nav. These could either be simply links to the relevant tables, or expand to lists like the existing nav does (this would add another layer of nesting to the nav). Hopefully this explanation will make my text mockup of the proposed nav more comprehensible. Some subsidiary points: IIUC spring-boot and karaf are “extras” that come with most but not all components/dataformats etc. I haven’t thought about how this might be done, but I think it would be nice to have something like badges at the top of each component page, “spring-boot yes”, “karaf yes”. Possibly this would be appropriate for other subprojects: I’m pretty sure it would be for camel-quarkus. I’m not all that familiar with the other sub-projects, but I think they don’t have a 1-1 relationship with main camel components. For instance my understanding is that camel-quarkus bundles one or more components into a quarkus “thing”, and the camel-quarkus page explains this bundling. If there are any other subprojects that do have a necessary 1-1 relation to main camel components, they could have their documentation folded into the main components docs in the same way. David Jencks > On Oct 5, 2021, at 12:20 AM, Claus Ibsen <claus.ib...@gmail.com> wrote: > > Hi David > > Can you explain in more detail what you mean by moving "information" > to "components". > > If you refer to that there is a .adoc file that is generating a big > table such as > https://raw.githubusercontent.com/apache/camel-spring-boot/main/docs/modules/ROOT/pages/list.adoc > > Then that is generated via a maven plugin, that scans the source code > and builds up that table. > > The list is then used on the website to list all the supported Spring > Boot starters. > https://camel.apache.org/camel-spring-boot/latest/list.html > > That list used the xref links like we do in other places for Camel > components, languages, data formats, etc. > What is it that goes against the meaning of an Antora component? > > IMHO the system we have with the maven plugin that generates that > single file works well. > And the docs are in the src/main/docs folder for each of those spring > boot starters. > So we can maintain it where it belongs. > > > > On Tue, Oct 5, 2021 at 8:26 AM David Jencks <david.a.jen...@gmail.com> wrote: >> >> IIUC the camel-karaf and camel-spring-boot subprojects are always released >> in sync with main camel. >> >> On the websites, for these subprojects, there is a little bit of general >> information, and some tables listing the parts of the “components” that are >> supported in the subproject (components, dataformats, etc). The table rows >> link to the docs in the “components” component, which is against the meaning >> of an Antora component. >> >> I wonder if it would make sense to include this subproject information in >> the “components” component. I’m thinking the nav might look like >> >> Components >> Dataformats >> Languages >> Other >> EIPS >> >> Camel-Spring-Boot >> - components >> - dataformats >> - languages >> - other >> >> Camel-Karaf >> - components >> - dataformats >> - languages >> - other >> >> I think this would be pretty easy to do, and it would definitely leave >> everything in the repo it is currently in. Does this idea seem interesting >> enough that I should prepare a PR/prototype? >> >> David Jencks > > > > -- > Claus Ibsen > ----------------- > http://davsclaus.com @davsclaus > Camel in Action 2: https://www.manning.com/ibsen2