The fall back can and should be as normal. Meaning, the template they are using should adhere to the implemented and or expected bootstrap that is assumed to be there.
The extra bits are for the people that don't want to have bootstrap apart of the "main css / js"
So for example. Let's say person A is not a coder. They are using a template that implements BS. Fine. Everything works as normal... The html in the extension calls classes that are there. Person A is happy.
Person B... Is in control of their own design process. They don't mind at all that you are using a standardized framework. Just give us the bits that you are using. A dev might use 5% of the entire bootstrap class. Just give us in a seperate organized folder the css and if you're nice the already min css.
We can code a comment line in our main min or just css style sheet // Dev's extension here begin // Dev's extension here end
What is wrong is with this approach?
------------------- Let me extend this idea out a little.
----------------------------Idea 1 less advanced but would ultra streamlined. Can Implement Practices Now.
Let's organize even more. Let's take version of BS and organize vertically. Let's call it chunk's and break up the bootstrap into at least 25-50 chunks. Make this the standard for Joomla. So for example let's say the chunk for the readmore button .btn is in chunk 5 (an extension could use as many chunks as the dev dictates.) Now me as the designer can go directly to my main css stylesheet and implement the style I want to give to chunk 5.
I can put that in order of what extensions I am using into my main css style sheet.
Let's now say I am installing extension that uses the readmore button chunk 5. Well now I know that I do not need the code the style for chunk 5 because it's already there. You can do this per version of bootstrap so if there are class changes there won't be a conflict.
For all my extensions i am using per project there may be these chunks 1, 3, 5, 10 20, 35, 40 of BS chunks.
Now, my code is organized, none redundant and free of bloat! Moreover, I can style my entire site just by changing aspects of the css chunks. When I am done I can minify it and point my template to that sheet. I can use whatever other framework or css style coding I want.
ONE SHEET... SUPER ORGANIZED... MUCH BETTER... KEEPS EVERYONE HAPPY....
----------------------------Idea 2 More advanced but would ultra streamlined. Perhaps Joomla 4.
this is an idea and if I were, like learning physics, in a coding vacuum I would handle the situation like this. Perhaps it is a little far fetched. I would ask the dev's to put easter eggs / class identifiers when creating their extension's html. So they could include the bootstrap style but include an identifier.
via the backend. We could take that identifier and make point to whatever class we want changing the html code. Now for mixin's or other things this might get a little complicated but I think it could be done.
So for example. let's say dev rights a BS html framework for readmore btn's .btn-blue (this is the BS class) In the backend all the BS added would be laid out. readmore, nav-bar, carasel, scrolling menu, grid, etc... Say there is 20. I could then as the front designer take those indentifiers and change them to what I want... so for readmore it would be .read-more instead of .btn-blue. I would just go through and make the changes as necessary. so now instead of the things pointing to bootstrap they are pointing to my one clean css stylesheet. The output would be unified across all extensions.
!!! This is GENIUS....
What this does in light of idea 1 is now I don't need to put in chunks of BS and recompile my css and min it. I would literally call out to what the dev was using in CSS and making it point to what I actually want to use.
Again, I can customize my style sheet anyway I want. I can use .Less SASS or whatever ever I want.
Alas, if the user doesn't know code or is not doing that the present fall back will be the BS attached to their template or extension.
Feedback!!!