
Bootstrap 5 alpha - mkurz
https://blog.getbootstrap.com/2020/06/16/bootstrap-5-alpha/
======
buss
It really can't be said enough: bootstrap is phenomenal and the creators,
maintainers, and contributors deserve immense praise. They've collectively
saved our industry millions of hours of frustration and helped us achieve
good-looking, accessible, and responsive websites.

~~~
mdo
Thank you! <3

------
throwaway888abc
Just to express Big Thank You to Bootstrap team and contributors for
everything over years of hard work.

Productivity, stability, consistency and joy to work with!

Thank you

~~~
VWWHFSfQ
Accessibility can't be stressed enough. I have worked with many big companies
that want a small project/initiative for their users.

They always want these things, at minimum:

* Data security/compliance (GDPR, CCPA)

* Accessibility (WCAG 2.1)

As much as my team would love to just make every app in React or whatever. I
always just say:

No. They want a CMS. Just make it with Django and Bootstrap. Then we'll be
done with it in a couple weeks and you can all go back to your own stuff..

Django + Bootstrap gets us an incredible amount of accessibility just right
now of the box. Invaluable for small development shops!

~~~
raihansaputra
Do you use the Django apps for Bootstrap or include it on your own? How do you
do the Django form <-> Bootstrap integration?

~~~
PascLeRasc
I'm not who you asked, but I've done it previously just calling the Bootstrap
CDN within Django, and it was super simple. This was years ago, but I have
this tutorial bookmarked from back then:
[https://tutorial.djangogirls.org/en/css/](https://tutorial.djangogirls.org/en/css/)

~~~
raihansaputra
Yep, manually calling the CDN is the simplest way, but I remembered that
sometimes a lot of adjustments needed to be made to the forms and every form
would need to be manually coded, or use one of the Django app to automate
that.

------
brandoncordell
So happy jQuery is gone! I'm also glad they're moving towards including more
utility classes (this started in v4) but I've spent the last year with
TailwindCSS and man is it nice. I just bought TailwindUI as well for the
component aspect. I think it's going to take some convincing to move back to
Bootstrap.

I'll definitely give it a shot on a small project though.

~~~
haberman
When I first heard that jQuery is gone, it made me hope that Bootstrap could
work directly with Vue without needing to use BootstrapVue.

But then I realized that it's probably still doing direct DOM manipulation,
which is what makes it incompatible with Vue I think?

~~~
Rapzid
Direct DOM manipulations are not necessarily incompatible with Vue or React.

I'm not sure in this specific case, but I'm saying this in general because
there seems to be a common misconception. People jump through the craziest,
smallest, highest, flaming-ist hoops to get everything to render through
Vue/React. Using virtual scrollers that aren't fit for purpose. Trying to get
d3/plotly running on the VDOM. Etc etc.

You can always just pop a DOM ref out and let something else take control of
it; easy peasy.

~~~
polished85
While it’s possible to use direct DOM manipulation via refs, IMO this defeats
the purpose of using a reactive lib like Vue or React. If you are using a lib
like jQuery/D3 with Vue/React, you are basically just using Vue/React to
render the initial state of the DOM.

~~~
Rapzid
If your entire site's React/Vue implementation is solely serving up DOM
elements to other libraries perhaps.

Frequently it's the case though where like 99.99%(hyperbole) of the site is
handled by React/Vue and you just need a few specific components to be
controlled by an external lib. Heck, anything wrapping a canvas based lib is
pretty much doing this.. Tons of component libs do this. It's very "web
component" like to let something control a slice of the DOM anyway.

~~~
polished85
I agree that sometimes its okay to give another lib control of the DOM (D3
probably falls in this category). However in the context of the parent comment
where haberman is wondering if Bootstrap could work directly with Vue (which
it could) I still hold that this is missing the point. In this case Vue would
be nothing but a glorified templating engine. I would rather only use the
boostrap styles while writing my own logic with Vue's reactivity model.

------
cryptozeus
Bootstrap no longer depends on jQuery and we’ve dropped support for Internet
Explorer.

~~~
SkyBelow
I wonder if I can get more web developers where I work back in the bootstrap
camp now. Use of jQuery was their main complaint and reason for abandoning.

On a related note, I feel like I'm officially becoming an old fogy because I
learned web development with jQuery but never did enough to experience the
pains it brings that newer frameworks do away with, and as such I still feel
drawn to using jQuery, especially when I want to throw together a smaller
websites.

~~~
andybak
I did my last small project with vanilla js and the ugliness of the native
APIs reminded my how lovely jQuery is.

Do the maths - if the file size isn't a problem then go for it. Life's too
short to be the victim of fashion.

~~~
systematical
HackerNews is back on this debate I see. Look, I still use jQuery, mostly
because I comfortable with it. If I am doing a small side project or an MVP
that doesn't need heavy JavaScript then why would I configure all that
JavaScript tooling when I can just use something I am comfortable with? I
hear, but jQuery is heavy. I wonder if any tests have been done to see how
much that ACTUALLY matters. Is the difference between react and jquery file
size that much? And does it actually matter? I don't think most people who
drop the "its bigger" argument know the size differences, let a lone the
impact. It's just a nice trope nowadays. But please link to something to
educate me.

With that said, I do use the modern vanilla js api from time to time. It's
gotten better. There are still some things that aren't great, but it's fine. I
use it a lot when working in puppeteer actually.

But back to jQUery. If I need to add some interactivity to a site and I know
some jQuery plugins. I just use that. I did it for an entire MVP just
recently. I know if it takes off all that frontend work I did will be
replaced. Great, jQuery (but mostly just plain old school web dev) got me
there without the need for an over-engineered tooling ecosystem. I've watched
people struggle with slick new shit on MVPs before. I'm already iterating on
my product and testing new hypothesis.

If you are more comfortable with the newer stuff then you should use that. If
you are more comfortable with jQuery you should use that. If the product you
are developing specifically needs or doesn't need one, then go with what the
product needs.

Edit: Also this about BootStrap. I love it, also makes my life easy for MVPs
and backends. Keep going strong bootstrap!

~~~
TheKarateKid
Amen!! It reminds me of the people who used to talk down on devs who use Java,
C#, Python, and basically any language that isn’t C++ “because it’s more
efficient” and all the others are “terrible and bloated.”

------
cabaalis
> we’ve dropped support for Internet Explorer.

This is probably more of a mental thing for me than anything, but it's hard to
separate myself as an old-school developer from the idea of supporting IE
because of it's historical market share. As much of a PITA it was for so long.
I suppose, though, I'm happy to see it go.

~~~
antris
A huge part of the knowledge I had to acquire in the early years of my
development career is now useless or even harmful... Anyone remember _clear:
left;_ ? :D

~~~
rudasn
Haha. Nothing like `zoom:1`.

~~~
democracy
What about fixed size white gifs in the tabel cells??? :)))

------
pansa2
So this will replace Bootstrap 4, which was released in early 2018 and will
reach end-of-life before the end of this year. [0]

Could someone explain the target audience for a framework with this rate of
churn?

Are people really creating websites that are expected to live for less than
three years? Or are people working on longer-term products and expecting to do
a major rewrite every few years?

[0] [https://github.com/twbs/release](https://github.com/twbs/release)

~~~
luxurytent
> Are people really creating websites that are expected to live for less than
> three years? Or are people working on longer-term products and expecting to
> do a major rewrite every few years?

"Yes". I imagine it's a bit of both. Would shops doing client work worry about
the long term maintenance about the work they are doing? Using Bootstrap,
knowing it will be end of life in 1-2 years is probably in their favour. They
get to use a shiny new framework to impress the client and can sign a
rewrite/tech debt contract in 4-6 years!

My personal experience with Bootstrap is that the upgrade story is fairly
reasonable and we also have software on Bootstrap 2 still running just fine.
It was the style of the time and the app shows it, but there's been no need to
rewrite that portion.

~~~
hw
> My personal experience with Bootstrap is that the upgrade story is fairly
> reasonable and we also have software on Bootstrap 2 still running just fine.
> It was the style of the time and the app shows it, but there's been no need
> to rewrite that portion.

Same here. Our app has been on 2.3.2 for the longest time. Just not a high
priority to update it at the moment, and not to mention it's just a giant
effort.

~~~
freehunter
Other than not getting newer features, are there any reasons you'd _need_ to
upgrade? Are there security concerns? I guess maybe some XSS with some of the
JQuery stuff but that should be easily mitigated.

Seems like a CSS framework is the least likely to need constant patching.

------
Meekro
I'd love to see a built-in dark mode! I develop a SaaS-type control panel and
many of my users spend hours a day interacting with it. Requests for a dark
mode have been increasing over the last year, but restyling every built-in
Bootstrap component feels clumsy.

~~~
sebazzz
Do you use CSS or a preprocessor like SCSS? In the later it is mostly a matter
of changing a few variables.

~~~
Meekro
You can create a dark mode by changing a few variables, and all of the
Bootstrap components will still look right? Can you show me how?

~~~
ceejayoz
Yes.

[https://bootswatch.com/darkly/](https://bootswatch.com/darkly/)

It's just a matter of setting some Sass variables.

[https://getbootstrap.com/docs/4.1/getting-
started/theming/](https://getbootstrap.com/docs/4.1/getting-started/theming/)

------
sbuccini
I've recently been working on a greenfield project with Bootstrap and I've
been really pleased with the development velocity by the core team. They're
beginning to implement a icon library too, which will complement nicely with
the built-in components they already have. They're quite responsive to issues
as well, giving me confidence I need to build on top of this framework for the
long haul.

------
minimaxir
The argument against Bootstrap was the jQuery dependency, but that's now gone.

So what _is_ the difference between all these front-end frameworks if they are
all dropping down to base HTML + CSS?

~~~
rlayton2
Bootstrap is more than the layout. Its good having good looking buttons by
default and cards and toasts and so on with less mucking around.

I find if I dont use a framework like this then I invariably end up creating
my own with all these features and wishing I had used bootstrap from the
start.

Its not for everyone but for myself (very small teams or just myself and
sometimes one other person), its invaluable for getting things done.

~~~
minimaxir
That's what most of these frameworks also do. (e.g. Bulma, which specifically
bills itself as a no-JS framework: [https://bulma.io/](https://bulma.io/) )

~~~
KerryJones
Bulma is great but hasn't had significant updates in years it seems -- I would
love to get some updates (I use it in multiple side projects)

~~~
paulnechifor
Isn't that a good thing? _runs away_

------
alpb
... CTRL+F, 'compat', no results. Oh crap.

I run my blog on Bootstrap 4, and I don't have much skills for frotend/scss
stuff. So I use bootstrap 4 out of the box with few customizations. I never
understand the backwards compatibility model of Bootstrap. It broke
significantly when I moved from some late-stage BS4 alpha to the stable
version. I can probably assume it'll significantly break again? Maybe that's
the beauty of BS, you just choose a version and stay there until it's
impossible anymore?

~~~
mdo
With how the web has evolved over the years, we've been caught on the side of
being too far behind and being too far ahead. We want to move faster and find
the right balance. v4 was a bit of a nightmare scenario, and upgrading from v3
was nuts. v4 to v5 _should_ be much simpler by comparison. Still some breaking
changes, but nothing like before.

And yes! Definitely something that you can theoretically run forever without
issue. Browsers basically have to keep supporting the historical properties,
quirks, etc, so once you've built it, you're largely good to go :).

~~~
alpb
Thanks! Having an answer from the project owner is super valuable.

------
dt3ft
You can donate to Bootstrap via
[https://opencollective.com/bootstrap](https://opencollective.com/bootstrap)

~~~
benatkin
In case anyone from bootstrap is reading this: The opencollective icon in the
top bar on [https://icons.getbootstrap.com/](https://icons.getbootstrap.com/)
doesn't link to opencollective (it links to /). The same header icon on
[https://icons.getbootstrap.com/](https://icons.getbootstrap.com/) works fine.

~~~
esnard
Their website is also open-source, so I just submitted a pull request [0].
Thanks :)

[0]:
[https://github.com/twbs/icons/pull/302](https://github.com/twbs/icons/pull/302)

~~~
csaserdam
used this for my website too [https://serabut.com](https://serabut.com)

------
diegoperini
Here is a question for people who are more knowledgeable than me.

I remember reading somewhere that a library is a bunch of functions you call
in your software whereas a framework is a software that calls your functions.
I'm obviously paraphrasing but you get the idea.

Bootstrap is called a CSS "framework" but as far as I can tell, the user calls
the predefined classes if putting them in an html element's attribute can be
considered a "call". Or maybe CSS with its selectors is the one calling the
HTML by, dunno, crawling it.

Can you help me? I'm confused. :)

~~~
jmull
I would say:

    
    
        - a framework provides a structure you fit your stuff into or build off of
        - a library provides functionality you can fit into the structure of your code however you see fit
    

In the case of bootstrap, I think they use the term framework because it
supplies layout and styling patterns you fit your page/app into. E.g., the
grid, containers, forms with form-groups, the predefined "primary",
"secondary", ..., styles, etc.

------
samspenc
First off, congrats and thanks to the Bootstrap team for a wonderful and well-
made CSS and design / UI framework. I love it and I have to say it makes it so
easy for a developer without design experience to build a website or web
application that actually looks good :)

One question about release dates though: I remember watching the Bootstrap v4
progression from alpha -> beta -> release and I remember it took much longer
than I thought it would. Just curious when we can expect the stable release
version of v5 to drop?

~~~
overcast
As a result we now have the most homogeneous, boring looking web.

~~~
dgb23
The alternative would be an uglier web and likely worse UX. People use
bootstrap defaults when bespoke designs are not an option or too expensive.

------
fasicle
"we’re now able to drop jQuery as a dependency", interesting

~~~
hnarayanan
... by replacing large parts with a native jquery-like implementation.

~~~
dgb23
Which results in much less js code shipped and better perf. Browsers have
caught up to (almost) everything jquery does. Thanks jquery, you served us
very well!

~~~
andybak
> Browsers have caught up to (almost) everything jquery does.

For me jQuery is mainly about an elegant, chainable API and all the DOM tools
I'm likely to need on hand.

I understand there's a bit of bloat but there's also lighter jQuery-alikes.

I tried vanilla js recently and the native DOM APIs are fairly ugly in
comparison with none of the quality of life stuff I got used to.

What am I missing?

~~~
inopinatus
The point is that one framework should not depend on another. If you like
jquery, no-one is stopping you using it.

~~~
andybak
I wasn't specifically talking about Bootstrap. Parent post seemed to be making
a general point about jQuery.

> The point is that one framework should not depend on another.

It's not hard to think of counterexamples unless you have very particular
definitions of "depend" and "framework.

~~~
inopinatus
The counter argument would be that one framework should depend on another.
Good luck with that.

~~~
andybak
It's debateable whether jQuery is a library or a framework. It's definitely at
the frameworkey end of libraries of the libraryish end of frameworks.

But if you'll admit the terms get murky in the middle then I think it's not
controversial to assert that a framework can depend on a library without it
offending the gods.

So we're very quickly in the territory of "things reasonable people could
disagree about" and quite far away from "glibly asserting that something isn't
even up for debate".

~~~
inopinatus
I’m not sure whether you’re debating the point or the terminology.

~~~
andybak
I'm disagreeing with your fundamental point. It sounds truthy but I don't
think it withstands scrutiny in this case.

~~~
inopinatus
In this specific case, Bootstrap does not need to depend on jQuery. The proof
is that version 5 doesn’t.

As arguments go, it doesn’t get any clearer cut.

More fundamentally, interdependency is a disease infecting the entire JS
ecosystem. The antithesis is the antidote.

------
felixfbecker
I hope with the support for custom properties (aka CSS variables) for
everything we can implement dynamic light/dark themes without custom CSS
overrides. v4 required this because some colors were manipulated at compile
time in Sass and therefor you couldn't set them to a CSS var

------
liminal
I'm surprised/disappointed they didn't embrace CSS grids. I've found them to
be so much better to work with than Bootstrap grids

~~~
jfkebwjsbx
I guess browser support is not good enough. They just dropped IE11, after all.

Probably that will be the change for Bootstrap 6.

------
dmix
It's too bad they didn't rewrite the JS in Typescript. That would have been
neat. But congrats on improving performance and code quality nonetheless.

Looks to be ES6 class driven:
[https://github.com/twbs/bootstrap/blob/main/js/src/dropdown....](https://github.com/twbs/bootstrap/blob/main/js/src/dropdown.js)

Going for simple JS might make more sense for simple websites with broad
deployment, so I can see the arguments against TS here. Like choosing CSS over
SCSS for simple portability. Still, it would be a fun/simple type driven
project to browse through, had they chosen it.

~~~
douchescript
Why? Less accessible that way. I would have liked it to be in clojurescript
myself but thats even worse!

~~~
hnarn
Can you elaborate on why TS would be "less accessible"? It was my impression
(not a js dev) that TS is pretty close to JS in syntax, just with some
additional sugar to ensure types and what not -- meaning that someone that
knows JS shouldn't have a problem understanding what's written, and should
need only a small amount of effort to contribute.

~~~
douchescript
It’s javascript in the end so why complicate it more? Less people know
typescript, making source less accessible, i.e you first need to understand
typescript to understand the code. Also you’ll have several more layers of
indirection: compiling, transpiling, bigger toolchain. In the end - why should
not the latest javascript be enough?

In the old times javascript was apparently not good enough without jquery -
but why add another dependency of similar ilk now that jquery is removed?

I am averse to complicated javascript franken toolchains because they don’t
age well. Better to stay vanilla.

~~~
hnarn
I don't mean to question your abilities here, especially since I don't write
JS myself, but I don't recognize your view of TypeScript.

> why should not the latest javascript be enough?

The fact that TypeScript exists in the first place and is extremely widely
used by large organizations would seem to indicate that the latest javascript
is not "enough".

> In the old times javascript was apparently not good enough without jquery -
> but why add another dependency of similar ilk now that jquery is removed?

Again, I'm not a JS dev, but it seems very dubious to equalize jQuery with
TypeScript. They have completely different objectives and achieve completely
different things.

> I am averse to complicated javascript franken toolchains because they don’t
> age well. Better to stay vanilla.

I can understand and appreciate the sentiment, but since most people seem to
agree that the lack of static typing in JavaScript is something that can
introduce bugs and unexpected behavior, and the user base of TS is quite large
(made by MS, used by many large organizations[1]), I would agree with what
most users of it probably would say, that the trade-off is by far worth it.

[1]: [https://stackshare.io/typescript](https://stackshare.io/typescript)

~~~
douchescript
I have used typescript for production but i am not convinced it adds to the
experience. If you are not a js dev, why do you worry about typescript? It
seems like you are in the static type camp and want to make a case for that.
In the end the runtime is not typechecked anyway so it’s a false security.

Jquery was written to overcome limitations in js browsers as typescript was
written to overcome the typing limitation.

It seems again you like the typed lanuage political agenda. I am on the other
side - i like dynamic languages. I appreciate that there is another side - i
just don’t agree.

There are lots of programming languages and tools that are in wide use by
large organizations. That doesn’t make them better or worse.

It just comes down to politics, and I want to make a case for the dynamic
camp.

Remember coffeescript? Just a waste of time and effort.

------
laurentdc
Just out of curiosity, do you write HTML5/CSS inside a text editor with live
reload or have you switched to builders like Bootstrap Studio, Webflow,
Pingendo etc.?

Asking since I'm converting a design into a template for a Symfony app and
when coding with Bootstrap from scratch I'm a bit lost. Even doing basic
things like sticky left sidebar and overlapping top navbar (basic admin panel
layout) requires lots of StackOverflow digging. Should I give up and just buy
templates?

~~~
purerandomness
I simply have the documentation open, which is really excellent and doesn't
require any other sources.

I begin with copying one basic example and building from there.

Then I'll tweak the HTML+CSS live in the browser's DevTools until I feel I
understand what's happening in the CSS, I switch back to IntelliJ and bake my
tweaks into my own custom SCSS extending bootstrap's classes and building on
them.

Never bought templates as I have the feeling that template authors don't
really have the time to really grasp the concepts of bootstrap, nor do they
care, and simply tend to pile tons of rules until they have some effect they
desire. I felt it's always easier to simply read the docs, and occasionally
jump into IRC in ##bootstrap or #css or their Slack when I'm stuck.

------
AnonC
I guess this is a pertinent question in the context of such announcement
posts.

What are the current alternatives for Bootstrap that provide:

* a good set of defaults with a sensible/easy grid system

* a modern look with readable typography and color choices

* a good enough set of controls

* support accessibility out of the box

* are leaner in size

* reduce/avoid the use of JavaScript (preferring CSS where possible)

* and lastly, very easy to get started with (and have great documentation)?

~~~
mikeburrelljr
Bulma is a great alternative: [https://bulma.io/](https://bulma.io/)

------
dgb23
The shift towards atomic/utility classes is what keeps this framework alive in
my eyes. The productivity boost is quite massive.

------
mrath
This is good work by the team. For CSS beginners like me it helped to start
with a nice looking website. Thanks.

I would have loved if they kept the CSS classes same between different
versions. I feel there are always some unnecessary renaming of classes with
major version changes. I have close to zero knowledge on CSS, I might be
missing the point. Two years feels a bit too quick for the release, I wish
they slowdown and not release another major before 5 years.

~~~
hnarn
> I would have loved if they kept the CSS classes same between different
> versions.

I'm not great with CSS either but I recently had to implement some very basic
Bootstrap functionality in an environment that required Bootstrap 2 (sorry
everyone), and FWIW I thought it actually helped that class names were
different because it made it very obvious that I was working with a completely
different release than most guides were written for, so I expected breaking
changes, and any searches I did do for the "old" names gave me correct
results. So in that sense, different class names as a type of "version
locking" does make sense I guess -- and it perhaps also stops people from
lazily just installing a breaking version of Bootstrap and expect it to work.

------
coding_lobster
> CSS’s grid layout is increasingly ready for prime time, and while we haven’t
> made use of it here yet, we’re continuing to experiment and learn from it.
> Look to future releases of v5 to embrace it in more ways.

I was actually expecting that the next major Bootstrap version would come out
way later and fully embrace the CSS grid. But I suppose they are choosing a
more gradual adoption and testing of waters to stay compatible with B4
websites.

~~~
toastal
There's some grid bugs out there, but dropping Internet Explorer is probably
more 'drastic' than CSS grids.

------
garysahota93
What are some of the coolest bootstrap projects you all have seen? I haven't
used Bootstrap in years, but would love to see some of the creativity.

~~~
bredren
I have only used bootstrap recently through implementations of commercial web
template packages.

These are pretty amazing, see Color Admin and Inspinia.

------
kaushikt
I have been using Bootstrap for 8 years now and I am very thankful for your
work.

Removing jQuery dependency is a big move, one that is welcome too.

------
_0d6j
I think we need to get to the point where regardless of the build script,
Bootstrap will make the perfect foundation for a design system. I defecated to
ZURB long before this was a deal-breaker, but now I almost prefer to reinvent
the wheel. Getting on board is quite a commitment, compared to just wrapping
react-select, or something alike.

~~~
tesin
I really hope you meant defected!

~~~
utku_karatas2
Well frontend devs love marking their territory you know.

------
mark_l_watson
I use a very old version of Bootstrap on almost all of my web sites. As part
of my COVID-19 lockdown decision to clean up things, I am going to do a small
test with the new alpha, and update. I have also been taking my old eBooks,
one at a time, and updating those. It feels good, sort of like spring
cleaning, organizing my garage, etc.

------
julianu
When is the right time to upgrade to a new bootstrap version? Anyone had bad
experiences upgrading to version 4 too soon?

------
axegon_
I'm currently working on a personal project and I was planning on using
angulardart + tailwind (the css part only) but I will definitely check if the
css side of bootstrap 5 might not be a more productive option. Good work
regardless and thanks for all the effort.

------
ux-app
Can anyone explain the code in the Utilities API section?

What language is it?

I don't recognise it and this line

    
    
       $utilities: () !default;
    

And the rest of it are unfamiliar to me.

~~~
tylershuster
It's SCSS, a language that compiles to CSS. That whole section has almost
nothing to do with CSS, though. That's array syntax for holding a set of
utilities to be used later in the code.

------
jkaptur
In case folks from the team are reading, I think you mean "our logo _evokes_
the feeling of a rule set" (rather than "eschews").

------
traceroute66
Bootstrap. The people who removed sub-menus from Bootstrap 4 because it was
deemed "too difficult". Not cool.

~~~
purerandomness
Sub menus are really hard to do right on a mobile device.

Mobile is important at least since Bootstrap 3, when Bootstrap became "mobile
first" (e.g. you define breakpoints with the smallest screen in mind by
default, adding exceptions for wider screens)

After all, Bootstrap is, like the name suggests, a "bootstrap" for your own
project, and if you think the accesibility problems that come with nested
dropdowns are worth it, you're totally free to implement that, and even create
a GitHub project with your CSS clases.

There's no reason your solution wouldn't be merged if you provide a truly
novel approach to all the other failed approaches.

~~~
Eduard
> Sub menus are really hard to do right on a mobile device

No, they are not. Bootstrap is too opinionated here by not supporting nested
menus. There are plenty of use cases for them, a navigable sitemap or your
common application toolbar for example.

And accessibility is also a non-issue, see W3C's / WCAG's recommendations:
[https://www.w3.org/TR/wai-aria-practices/#menu](https://www.w3.org/TR/wai-
aria-practices/#menu)

Speaking of accessibility: I'm surprised that Bootstrap only cares little
about this important topic, especially considering implementing it on websites
is required by law in many countries.

~~~
hombre_fatal
I mean, submenus are difficult. Even single-element tooltips are complicated
enough to warrant a dedicated library that Bootstrap uses:
[https://popper.js.org/](https://popper.js.org/)

Nested menus are no easier to make generic. Or they can easily be too
opinionated for the Bootstrap team's tastes.

Also I don't think dropping something from your API makes you _more_
opinionated. Their solution would be opinionated by definition if they had
one. Nothing stops you from building your own or anybody from building a
library that solves the problem. If you think it's easy, then you sound like
the right person to take on the challenge.

~~~
Eduard
Citing mdo,
[https://github.com/twbs/bootstrap/pull/6342#issuecomment-115...](https://github.com/twbs/bootstrap/pull/6342#issuecomment-11594010)
: "We haven't seen anyone using submenus in meaningful ways and the code
necessary to make them work well is just too much overhead. Submenus just
don't have much of a place on the web right now, especially the mobile web."

This is very opinionated.

------
andrei_says_
Makes me wonder about the jquery based interactive components like
select2/chosen etc.

------
adamzapasnik
Funny thing that footer is broken.

I like bootstrap, but after playing with tailwindcss I prefer it.

------
blockchainman
You guys are the best! Thank you ! You have helped me so much in my career!

------
oknoorap
I've been using tailwindcss, it's pretty impressive.

------
irrational
Now that we have CSS Grid and Flexbox, what is the rationale for using
Bootstrap? Or, what is the benefit of using Bootstrap that I don't get using
CSS Grid and Flexbox?

~~~
sevilo
why is this downvoted, I have the same genuine question

~~~
irrational
I am surprised I was downvoted too. I’ve never used bootstrap so I thought my
question was a simple request for information. Apparently all the bootstrap
users took it as a personal attack.

------
node-bayarea
I LOVE BOOTSTRAP!! Keep it up you'all!

------
gjvc
I miss the 3D look and feel from 2.x

------
jangid
Some work for theme creators now.

------
tobyhinloopen
The end of jquery is here

------
AbuAssar
for me the best thing about v5.0 is the official RTL support!

------
sudoaza
145Kb ouch!

------
dang
Please don't edit HN titles to break the site guidelines:
[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html).
This has been first on the list of the submission rules for over a decade:

 _Please don 't do things to make titles stand out, like using uppercase or
exclamation points, or saying how great an article is. It's implicit in
submitting something that you think it's important._

(Submitted title was "Bootstrap 5 alpha!", which HN's software correctly
changed to "Bootstrap 5 Alpha", which was then edited back to "Bootstrap 5
alpha!", which we then edited back to "Bootstrap 5 alpha".)

Also, please don't post the same story within minutes
([https://news.ycombinator.com/item?id=23543329](https://news.ycombinator.com/item?id=23543329)).

~~~
montenegrohugo
To be fair dang, the linked article does have an exclamation mark in the
title. I imagine @mkurz just wanted to transcribe it.

~~~
dang
It seems clear to me that the site guideline I quoted covers that case?

Even the title guideline (" _Please use the original title, unless it is
misleading or linkbait_ ") implies that exclamation points should be taken
out, since they're baity.

------
kindly_fo
Add dark mode

------
Crazyontap
As much as I hate AMP pages I have been forced to use it due to SEO reasons
and bootstrap 4 sites aren't AMP comptabible as yet. They exceed the 50kb css
limit by AMP.

There have been various attemps(1) to do it but nothing more be more amazing
than to have in-built support for it.

Even if the AMP project is misguided mess the 50kb limit on css is still a
good goal for mobile sites.

(1)
[https://www.google.com/search?q=bootstrap+amp+github](https://www.google.com/search?q=bootstrap+amp+github)

~~~
butz
You could use only some parts of Bootstrap, by including its SCSS files and
commenting out ones you don't need.

Also, you could try css-purge to remove unused classes.

