11 ms·
Bootstrap 4 Beta 2
- deleted 9y ago[deleted]
- mmcnl 9y agoHappy to see Bootstrap 4 moving to a final release. Beta 1 is already very mature though. I love it.
- myf01d 9y agoI know I am going to be downvoted so hard, but really it's very easy to build you own css these days, css frameworks look an easy solution for beginning your project but they become a burden gradually as your project grows
- fredley 9y agoIt depends if it's a project that is going to grow. For so many things Bootstrap does so much for so little effort. I use it any time I need to spin something up quickly, prototype an idea, put an internal page together. Bootstrap is a tool for making a page where you don't care how it looks look good.
- WorldMaker 9y agoIt also depends on how the project is going to grow. If I'm the only lead dev on a team that's only going to see a revolving door of junior devs and interns, it's much easier for me to point to Bootstrap's documentation page and say "just copy the example from here" than it would be to get junior devs quickly up to speed on any custom CSS framework. There's even a chance a junior dev is already going to be familiar with Bootstrap from a previous project.
- anorborg 9y agoYou aren't wrong. I will say I do still find myself surprised that many sites don't test cross browser and I find that these frameworks can alleviate that.
- jonknee 9y agoExcept for all the edge cases which is a big reason why CSS frameworks are a thing. If you need to support lots of browsers it is certainly not easy to build your own.
- fbonetti 9y agoHonest question: why? Why would you roll your own buttons, headers, footers, modals, panels, grid system, and alerts, which all respond responsively, when you could just take a framework off the shelf and start being productive immediately?
- headcanon 9y agoIt depends on what you're doing. Kitchen-sink frameworks like Bootstrap are great for building tools that don't require a lot of customization of the UI, generally things like internal tools. But for user-facing stuff, designers and PMs want to tweak everything about the interface, and by the time you're done, you've rewritten most of the CSS and you actually spent more effort doing so than had you just written the CSS yourself the first time. Also, the way you wrote it ends up being a frankenstein-esque collection of style overrides. Zurb foundation is notorious for requiring hyper-specific CSS rules to override their default styles. Bootstrap has made some progress towards making it more tweakable, but if you're maintaining/customizing an app long-term, you're better off writing your own css for the most part. Edit: to add to that, the biggest problem that bootstrap solves IMO is a standard grid system, of which there are now many, more composable grid systems to choose from. Grid systems are so basic that its probably fine to pull one from the shelf, but with flexbox its really not that hard to write your own anyway.
- gshulegaard 9y agoJust wanted to point out that when Bootstrap first hit the scene this wasn't true: > to add to that, the biggest problem that bootstrap solves IMO is a standard grid system, of which there are now many, more composable grid systems to choose from. Grid systems are so basic that its probably fine to pull one from the shelf, but with flexbox its really not that hard to write your own anyway. Bootstrap was sort of a pioneer in the generalized responsive framework space. I recall Zurb Foundation close behind and Skeleton a short time after that...although my time line might be a bit screwed up. Now with flex box it is certainly easier to roll your own...and that reduces the value (somewhat) of using a framework like Bootstrap or Foundation or (insert other responsive framework here), but it doesn't make it 0 (IMO).
- pcwalton 9y agoFor the projects Bootstrap was designed for, the choice isn't between Bootstrap and a professionally designed custom theme; the choice is between Bootstrap and a white background with all text in Times New Roman 16 pt.
- PunchTornado 9y agoI wonder why people don't get this. It's not like you're doing a Fortune 500 company's website with Bootstrap.
- brianwawok 9y agoI bet we can find 50 uses of bootstrap in the f500.
- Mtinie 9y agoAt least. I’ve seen lots and lots of internal tools, product admin dashboards, and the occasional single-page product marketing sites, like the one the overworked intern, Todd, threw together in the 24 hours between the time the virtually-without-requirements demand was dropped on his tiny, cramped, mid-bullpen loaner desk and when he launched it into production to zero thanks.
- matt4077 9y agoWhat changed are browsers. The original advantage of bootstrap et al where grids and standardisation. These initial use cases have been subsumed by browsers, and bootstrap offers little more than a useless level of redirection. Then, bootstrap added what I want to call widgets: small functional units that can easily be reused. Here, as well, browsers have changed dramatically. At the time bootstrap came out, these widgets required browser-specific, inscrutable hacks like negative margins, spacer pixels, and other crimes against htmlanity. Relative to 10 years ago, all of today's browser engines are identical, and CSS has added all these typical use cases. What remains is more or less a skin changing html's defaults to something that may be prettier, or just not weighed down by the stigma of being the default.
- 9y ago
- greenhouse_gas 9y agoI'm not a graphics designer, and have no eye. If I'm making a content-website (where the "killer app" is the content and not presentation) I use bootstrap - its definitely cheaper than a web designer.
- baybal2 9y agoI support you, what you say is true.
- kbenson 9y agoReally it's very easy to build your own web application framework these days, existing web application frameworks look an easy solution for beginning your project but they become a burden gradually as your project grows. Really it's very easy to build your own database software these days, database servers look an easy solution for beginning your project but they become a burden gradually as your project grows. Really it's very easy to build your own car these days, pre-made cars look an easy solution for beginning your project but they become a burden gradually as your project grows. ... All of these cases may be true if you are the 0.01% that wants to do it to learn or have some very special business need that calls for it. For the other 99.99% of the time, it just keeps you from focusing on the stuff you actually need or want to accomplish.
- tengbretson 9y agoThese comparisons are incredibly dishonest.
- kbenson 9y agoI don't think so, and depending on your familiarity with the topic, your opinion might be different too. Creating a web application framework that handles your needs can be incredibly easy. I can, and have multiple time, done so in Perl for a quick project in the distant past. It takes about 20-30 lines or so on top of loading the modules you would probably already want available for a system like that. Pull in HTTP::Daemon, pull in the HTTP modules, tie them together with a little regex foo for route parsing, done. In the very simple case, it's easier to do this than pull in a framework. In the very complex case where you need intricate control over odd parts of the process that frameworks don't usually give you, it's easier if you had written your own from scratch. In all the other cases, which I feel I was being generous in saying was only 99.99% of the time, you're better off having offloaded the concern to someone else. Creating a database is also very easy. In the simplest case, you choose a record structure and write to disk opportunistically or on every change. Again, for the very simplest case, that's actually easier than even pulling in SQLite. In the very complex case, you can do interesting preprocessing and specialized storage techniques to store your data in ways that aren't amenable to anything except for a custom format.[1] Again, the vast majority of the time, you just use SQLite, Redis, or a RDBMS and it does a passable job at dealing with all your data integrity and warehousing needs. If you're a company trying to manipulate a dataset in a heretofore unseen way (either much faster or much more detailed that before), you might actually need to do it from scratch. Creating a car is also fairly easy, if you have the prior experience (about as much or less as expected above). Like above, you're largely throwing existing parts together and the hard work is knowing what goes where and shaving off the pointy bits that prevent it from fitting really well. If you need to race something (because why else do you create a car?), in the simplest case you might just grab some cheap broken down beater and put a little work into it where needed and you have something that goes in a circle and you won't care too much if it barely finishes. If you have the money, you can buy a pre-built race-ready car and compete as am amateur. If you're an F1 team, you build the whole thing from the ground up to exact specifications. This is, of course, all presupposing that the people involved actually have the knowledge and ability to do the really simple or advanced things. Often, they don't, or at least don't have enough to make it even feasible. For example, I know how to read and write CSS, but I'm not very good at it. Similarly, I know how to write HTML and apply CSS fairly in an amateur manner. I'm not a UI or UX designer. Does it really behoove me to learn the intricacies of design layout instead of using Bootstrap? I either don't care about how it looks at all, in which case I'll make it text/plain or at the most a couple of header tags, or I care enough that to make it somewhat passable visually I'll use Bootstrap. In what situation am I better off using CSS? In what way does that apply to more than 0.01% of the people out there? 1: https://news.ycombinator.com/item?id=15350115 https://news.ycombinator.com/item?id=15350115
- Chyzwar 9y agoIt is difficult. Look how much effort was put into Bootstrap3. Good UI framework brings consistency and good practices. Browsers are not so consistent as people think. CSS is difficult to get right. UI/UX is hard if you are not a designer. Interactions between DOM, CSS, and JS are hard to test.
- sidlls 9y agoMost users simply don't care whether a framework or hand customized code is used anywhere in the stack. This includes the front end all the way down to the assembler shoveling bits through a processor. Why should somebody who is technically proficient or even highly skilled in developing on the backend bother with becoming equally skilled enough on the frontend to not "need" these frameworks? Especially when it matters very little.
- ivm 9y agoBut I'm not a web developer and I don't want to build my own anything if there's a professional plug-n-play solution already available. Bootstrap just works, so I stay with it. I don't even want to learn the new one because BS3 already solves my problems.
- baby 9y agoI agree with you, with css grids and flexbox I really don't use bootstrap much for new projects. The grid doesn't seem to make sense to me anymore. BUT, bootstrap is still awesome for the design elements.
- wentoodeep 9y agoDon't forget about Microsoft's Adaptive Cards.
- pier25 9y agoHonestly for backend projects where nobody cares about design bootstrap is great. Layout and such is easy. UI components, forms, etc, take a lot longer.
- ryanmarsh 9y agoYou are correct in that css frameworks become a burden but I disagree that building your own is “very easy”. A css framework that works well on most devices and most browsers for a non trivial app is quite a lot of work.
- ngsayjoe 9y agoThat’s exactly what i did lately. I replaced Bootstrap 3 with my own custom CSS after testing out Bootstrap 4. With flexbox, media queries and SCSS i dont find any need for a CSS framework anymore. My codebase without Bootstrap (and JQuery) feels so light, flexible and maintainable nowadays.
- aeriklawson 9y agoI think this advice applies most to layout - at work we still heavily use Bootstrap components, but the grid layout we started out with turned into hellspawn really quickly.
- mmgutz 9y agoIt's certainly become easier but I rather like having people contribute fixes to issues we may not be aware of. For a small team like our startup, execution of the idea is far more important than having something completely unique.
- desireco42 9y agoI honestly believed this to be released already. Completely surprised by this :).
- andygcook 9y agoI've been using the Bootstrap 4 beta for a couple weeks building a side project (https://nanagram.co https://nanagram.co) and I must say, it's been great to use. The built in utilities for responsive views and spacing are especially useful. Made optimizing the homepage for multiple screen sizes super fast and not painful at all. The Beta 1 had pretty good documentation and seemed pretty mature as well. Looking forward to upgrading to the Beta 2.
- th0br0 9y agoLove the idea! Does this ship internationally? Some FAQ/ToS/etc would be good.
- andygcook 9y agoThanks! And good point on the FAQs + TOS. Will add them to the to-do list. We're beta testing the app right now with friends & family and have made our first few deliveries already. The response has been great so far from people's grandparents. They love getting the prints in the mail with the captions to tell the story of the photo on them. We're going to be exploring international shipping soon. What country does the person you want to send photos to live in? [edit - spelling]
- th0br0 9y agoGermany. Something like this also needs the ability to delay shipments - old people are more likely to be admitted to hospitals or similar.
- yourkin 9y agoBootstrap 4 is great and a pleasure to work with. Documentation structure on the other hand... Main nav section on the left with subsections on the right is totally counter-intuitive.
- manigandham 9y agohttp://tachyons.io/ http://tachyons.io/ + Bootstrap make a great combo. Especially if using a build system like webpack. Bootstrap has a nice grid system (although the actual CSS standard is amazing now) and handles basic elements like buttons well. For everything else, Tachyon's component helpers make layouts really easy and fast.
- lewisl9029 9y agoCongrats on shipping the 2nd Beta! My favorite part of Bootstrap 4 is actually its newly included CSS reset Reboot [0]. It's built on Normalize, but also provides a set of very compelling improvements like making use of the native font stack, a bunch of very sensible spacing and layout adjustments, and built-in optimizations for touch responsiveness (removing the 300ms delay). I'm definitely going to be trying it out on my next project regardless of whether or not it uses Bootstrap itself. With that said, I don't mean to rain on the parade, but I've been gradually deviating away from using CSS frameworks for my projects, not because I don't _want_ to use them, but rather because most CSS frameworks don't seem to mix naturally with component-oriented CSS-in-JS libraries like glamorous [1], which is my preferred way to work with styling these days. If I do include a CSS framework, I end up having to use a mix of custom component-scoped styles and global CSS classes from these frameworks, and those CSS classes may have margins and cascading effects that reach into children. This breaks component-level style isolation, and makes the styling of children much harder to reason about, which defeats much of the purpose of using component-oriented CSS to begin with. What I really want to do is to import styles from a well designed CSS framework _as a JS module_ (but I'm willing to accept anything that's properly namespaced and isolated, like CSS Modules), and compose them with my own styles without worrying about a polluted global namespace or styles from parents reaching into children/vice versa or fighting with specificity issues. So far, I haven't found any CSS frameworks that fit the bill, but Tachyons [2] seems like it could be close enough (by emphasizing modular, low specificity, shallowly cascading styles) that I could maybe just run it through a CSS to JS compiler like native-css [3] and import its classes and compose them as I would with any other JS style object. This is something I'm going to experiment with soon enough, but I'd love to hear if others have any thoughts/experiences they'd like to share on using CSS frameworks with component-oriented CSS. [0] https://getbootstrap.com/docs/4.0/content/reboot/ https://getbootstrap.com/docs/4.0/content/reboot/ [1] https://glamorous.rocks/ https://glamorous.rocks/ [2] http://tachyons.io/ http://tachyons.io/ [3] https://github.com/raphamorim/native-css https://github.com/raphamorim/native-css
- Scarbutt 9y agoWhat they didn't default to Grids and provide a fallback? the grid system examples in their docs are scary.
- kevindqc 9y agoWhat is scary about it?
- Scarbutt 9y agoThe div hell.
- joshmanders 9y ago<div class="row"> <div class="col">left sidebar</div> <div class="col">content area</div> <div class="col">right sidebar</div> </div> This is div hell to you? O_o
- neovive 9y agoIt's an interesting time for web development in general. As the industry moves towards standardized web components, CSS frameworks--like Bootstrap, Foundation, Bulma, etc.--will fit differently into the puzzle. The demand for CSS frameworks will persist, but more of the implementation details will be abstracted away within components.
- czep 9y agoIs modular css changing bootstrap adoption? I'm a backend guy so I don't have much experience to develop a sense of large-scale front-end trends. I've used bootstrap since early v3 in various places and usually found it time-saving, easy to build responsively, and fairly easy to customize. However, just as frameworks like angular and libraries like react are "componentizing" the front end and replacing general purpose utilities like jQuery, will we see a similar trend with modular css where component styles will replace the need for large css frameworks like bootstrap? Or is modular css merely a complement to whatever sitewide css framework you've chosen?
- chuckdries 9y agoTaking advantage of what bootstrap has to offer requires writing your page structure with it in mind. It's both a method of structuring HTML and a CSS framework. I suppose you could pull out and compartmentalize certain specific features, but in my mind the core of bootstrap is the grid and component system, and those are pretty heavily tied together.
- azr79 9y agoNobody cares anymore, everybody moved on to bulma and other things, bootstrap is yesterday's song
- wmeredith 9y agoGonna need a source on that. Bootstrap is the most widely used CSS framework by a country mile. Bootstrap has more stars (117k) on GitHub than the next 6 CSS frameworks combined: https://github.com/search?o=desc&q=css+framework&s=stars&type=Repositories&utf8= https://github.com/search?o=desc&q=css+framework&s=stars&typ... FWIW Bulma is third with 20.4k. And I’m legit going to check it out now that, you know, I’ve heard of it ;) Of course, GitHub stars aren’t everything, and momentum is important, but to say no one cares is objectively wrong. This is a big deal for a large swath of the industry.
- SippinLean 9y agoBulma is very far behind. * Lacks all the JS components * Lifts from Bootstrap for most of the CSS components, sometimes down to the class name * Makes the mistakes of early Bootstrap, namely heavily nested classes like .card .media:not(:last-child) that are difficult to overwrite and cause great pain when customizing * Uses antiquated non-extensible syntax/naming conventions for breakpoints, such as "is-desktop" instead of "small, medium, large" etc * grid system is not flexible, breakpoints are hardcoded and there's no easy way to generate your own grid * no mixins I can use in Sass instead of using classes in HTML. There are a few helpers but no way to setup columns without HTML classes (like you can in Bootstrap) * overall lack of easy customization, no theming tool and very limited variables. in BS almost everything can be customized using Sass variables It simply isn't as mature or battle-tested as Bootstrap. There's a reason it's not 1.0 yet. BS can do everything Bulma can, the reverse is not true.
- Can_Not 9y agoComing from BS3+jQuery, BS3/4 was confusing or obtuse to use the jQuery dependent parts with VueJS (modal being a good example). Most BS+VueJS libraries were incomplete or broken somewhere in the VueJS 1 => 2 shuffle. Bulma was not confusing, it's JS agnosticism being the main reason.