Bootstrap 4 Alpha 6

@mdo January 06, 2017

Alpha 6 has landed, and it’s one of our biggest ships to date. We’ve rewritten our grid system and all major components in flexbox, forging ahead with it as our default layout option as we drop IE9 support. With 700 commits since our last release, we have some catching up to do.

Read one for highlights from this release. We also recommend reviewing the ship list and milestone for a more detailed look at what’s changed.

Embracing Flexbox

Bootstrap 4 is now flexbox by default! Flexbox is an immensely powerful layout tool, providing unparalleled flexibility (hah) and control to our grid system and core components. It comes at the cost of dropping IE9 support, but brings significant improvements to component layout, alignment, and sizing.

Bootstrap flexbox on jsbin.com

If you’re unfamiliar with flexbox, here’s some of the power you can expect to utilize in Bootstrap 4:

  • Automatic equal-width grid columns (e.g., two columns are automatically 50% wide)
  • Equal height and equal width cards
  • Vertical and horizontal centering without hardcoding values with translate or margin
  • Utility classes for easily (and responsively!) changing display, direction, alignment, and more
  • Auto margins for easy spacing
  • Justified navigation and button groups
  • No more HTML white space or broken table-style rendering

Nearly every component now takes advantage of flexbox in place of display: table hacks and floats. That means less reliance on clearfix, more control over DOM and visual order, and fewer bugs. Navs, list groups, cards, and more all utilize flexbox. Even more complex components like the carousel have been modified to use flexbox in some places.

Bootstrap carousel on jsbin.com

Responsive utilities and the great infix

With Alpha 6, we’ve made Bootstrap’s extensive suite of utilities—including classes for display, float, and flexbox, and more—completely responsive. To keep these class names as approachable and representative of their scope as possible, we’ve also made two important changes to their naming scheme.

  • First, we’ve dropped the -xs infix from our lowest (extra small) breakpoint. xs isn’t a responsive breakpoint quite like sm, md, lg, and xl because it doesn’t start applying styles at a min-width and up. It simply applies to everything as there’s no bounding @media query.

  • Second, we’ve renamed several classes to better articulate their property-value pairings. Instead of pull, we use float. Instead of creating new names for the various flexbox properties, we start with the property name.

Put that all together and you end up with updated classes like .col-6, .d-none, .float-right, .d-md-flex, .justify-content-end, and .text-lg-left. These new classes bring immense power and customization to folks building with Bootstrap. They also make it easier for those migrating from v3 with clearer mappings to legacy class names.

More grid improvements

We’re back at it with more grid improvements. This time we’ve added responsive autosizing columns and more container padding options. Add any number of .col-* classes and they’ll automatically be equal in width.

Bootstrap flexbox auto columns on jsbin.com

Padding for grid containers can now be configured across breakpoints with the new $grid-gutter-widths Sass map. In addition, you can remove gutters from grid rows and their columns with the .no-gutters modifier.

Updated navbar

As mentioned in our last release, the Alpha 5 navbar was a little half baked. This time around, we’re completely baked. No, but seriously, the navbar has been rewritten to provide better built-in responsive behaviors and improved layout customization thanks to our move to flexbox.

Bootstrap 4 navbars

Here’s the rundown on what’s changed:

  • Navbars are built with flexbox! Instead of floats, you’ll need flexbox and margin utilities.
  • Navbar navs no longer require the .nav base class. While it provided a starting point, these shared styles often got in the way of navbar behaviors. Now it’s just .navbar-nav and utilities for alignment.
  • The .navbar-toggleable classes are now applied to the .navbar instead of the .collapse within. This allows us to provide better responsive behavior with just one class change.
  • The responsive navbar toggle, .navbar-toggler, has also been updated. The icon is once again a child element, .navbar-toggler-icon, for improved customization. It also includes easy modifiers for absolutely aligning it to the top right or top left.

Check out the navbar docs to learn more and see it in action.

Up next, our first beta

Like you, we’re very much ready for our first beta release. Luckily, we’re in great shape to get there from this alpha. We have the fewest open issues and pulls we’ve had in easily the last 18 months, and the contributions from the community have been outstanding. As we head to our first beta, we’ll be focused on not adding anything new, ideally making as few breaking changes as possible, and emphasizing documentation quality and bug fixes.

We need your help to get there though. Please dive into this latest release and continue to report bugs and submit pull requests as you can. Every bit helps us improve the next release!


For more details on this release’s changes, take a look at the Alpha 6 ship list issue, as well as the closed Alpha 6 milestone. Be sure to join our official Slack room! and dive into our issue tracker with bug reports, questions, and general feedback whenever possible.

Using the Bootstrap CDN? Review the changelog and update your CDN links to point to the latest files:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>

Bootstrap 4 Alpha 5

@mdo October 19, 2016

Alpha 5 has arrived just over a month after Alpha 4 with some major feature improvements and a boat load of bug fixes. We still have a lot of work to do, but we’re closing the gap and getting more stable with each release. Keep reading for the highlights and plans for Alpha 6.

New CSS bundles

We’ve updated our build process to include compiled versions of all our CSS bundles. In addition to the longstanding default compiled and minified bundles, we now include compiled CSS files for our flexbox mode, grid system only, and Reboot only bundles. Each bundle includes a compiled, minified, and Sass map, just like the default compiled CSS.

Grid updates

Our grid system has been updated and is more flexible than ever. New in Alpha 5 are breakpoint specific grid gutters. That’s right, now you can customize the width of your gutters across each and every grid tier by modifying the Sass map.

The .container behaviors have changed slightly in Alpha 5. We now set the width of each container alongside a max-width: 100%; to ensure proper rendering across browsers in both our default and flexbox modes. Similarly, we fixed a bug in our flexbox grid where columns didn’t properly collapse at lower breakpoints.

Lastly, we’ve changed a few breakpoint and container dimensions. The sm tier’s container is now smaller than it’s viewport dimensions and the lg tier has changed from 940px to 960px for grid columns that more cleanly by 12.

Utilities overhaul

Utility classes got a ton of attention with Alpha 5 and will continue to in Alpha 6. Major changes in this release include:

  • Simpler margin and padding syntax (e.g., now mx-auto instead of m-x-auto).

  • Renamed .pull-*-left and .pull-*-right to their CSS properties (e.g., now .float-*-left and .float-*-right).

  • Separated background and color utilities for more explicit styling.

  • Renamed image utilities, moving from .img-rounded and .img-circle to .rounded and .rounded-circle, respectively.

  • Removed the display: block; from .img-fluid as it’s unnecessary for creating responsive images (the inline-block default works great as-is).

  • Added new vertical-align utilities with .align-top, .align-middle, and more.

Be sure to scope out the open issues in the Alpha 6 milestone. There are more updates coming to utilities to add more responsive variations, more consistent naming, and more.

We’ve put a ton of time into the navbar for Alpha 5, but honestly it’s still not done. Rather than hold back the progress we’ve made for it until Alpha 6, we’re including a somewhat half-baked iteration.

Here’s a look at what’s new, how it works, and what might change in our next release.

  • First up, the navbar has a brand new toggler that features a customizable SVG-based background-image. With the power of Sass variables, that allows us to easily change the color of those hamburger menu icons.

  • Second, the default styles for the brand and navigation have largely been tweaked. There’s less custom styling overall and an emphasis on positioning and flexibility.

  • Building on that, we overhauled the collapse plugin integration for responsive navbars. With the help of some utility classes and collapse classes for each grid tier, you can easily pick the breakpoint for collapsing your navbar without having to recompile your Sass. Also included is the auto restyling of dropdown menus for mobile so they no longer hide other navbar content when toggled.

  • Lastly, we’ve updated the styling and documentation for various navbar subcomponents. There’s more flexibility and examples of the .navbar-brand, better form control support, higher nav contrast, themed responsive toggles, and more.

The navbar is a tricky one—there’s so much functionality and styling that can go into them. We’ve outlined the next major pieces for the navbar, but there’s likely more we’re missing. Be sure to give the updated component a whirl and report back with your feedback.

Getting to Alpha 6

We’re planning on one more major alpha release before getting into the slightly more stable beta ships. There’s still more to do around our major components—the navbar, flexbox variants, utilities, and accessibility—before we button things up.

Once done, we’ll review all on our docs and update all our example templates to the latest and greatest. From there we’ll need your help to test these changes and report bugs. Stay tuned for more updates as we get closer to that release.

Until then, have at it with Alpha 5!


For more details on this release’s changes, take a look at the Alpha 5 ship list issue, as well as the closed Alpha 5 milestone. Be sure to join our official Slack room! and dive into our issue tracker with bug reports, questions, and general feedback whenever possible.

Using the Bootstrap CDN? Review the changelog and update your CDN links to point to the latest files:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.5/css/bootstrap.min.css" integrity="sha384-AysaV+vQoT3kOAXZkl02PThvDr8HYKPZhNT5h/CXfBThSRXQ6jW5DO2ekP5ViFdi" crossorigin="anonymous">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.5/js/bootstrap.min.js" integrity="sha384-BLiI7JTZm+JWlgKa0M0kGRpJbF2J8q+qreVrKBC47e3K6BW78kGLrCkeRX6I9RoK" crossorigin="anonymous"></script>

Bootstrap 4 Alpha 4

@mdo September 05, 2016

Alpha 4 is here to address those pesky build and package errors, a few CSS bugs, and some documentation inconsistencies we introduced in our last release.

This is a super small release compared to our previous alphas, so here’s the rundown on what’s changed:

  • Fixed package.json errors
  • Additional migration notices for more components
  • Fix broken flexbox utilities on flexbox grid page
  • Fix inconsistent checkbox and radio markup, as well as validation styles
  • Minor tweaks to cards, alerts, utilities, and input groups

At the time of release, the Bootstrap CDN hasn’t been updated for Alpha 4. Apologies for the delay, and stay tuned for an update on when they’re live.

For more details on this release’s changes, take a look at the Alpha 4 ship list issue, as well as the closed Alpha 4 milestone. Be sure to join our official Slack room! and dive into our issue tracker with bug reports, questions, and general feedback whenever possible.

Using the Bootstrap CDN? Review the changelog and update your CDN links to point to the latest files:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.4/css/bootstrap.min.css" integrity="sha384-2hfp1SzUoho7/TsGGGDaFdsuuDL0LX2hnUp6VkX3CUQ2K4K+xjboZdsXyp4oUHZj" crossorigin="anonymous">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.4/js/bootstrap.min.js" integrity="sha384-VjEeINv9OSwtWFLAtmc4JCtEJXXBub00gtSnszmspDLCtC0I4z4nqz7rEFbIZLLU" crossorigin="anonymous"></script>

Bootstrap 4 Alpha 3

@mdo July 27, 2016

Alpha 3 has landed! We have an overhauled grid, updated form controls, a new font stack, tons of bug fixes, and more. It’s been several months since our last update, but the size of this update should help get us back on track.

Work on Alpha 3 started rather broadly, addressing bug fixes and docs updates of all shapes and sizes, but finished with a narrow focus on our form controls and grid system. If you’ve followed the development in our v4-dev branch, you might already be familiar with some of these bigger changes.

Skip to the updated alpha docs site, or keep reading for the highlights.

Grid system

The grid system was overhauled with three major pull requests—#19099, #20349, and #20361. Those PRs largely focused on the following changes:

  • Our ready-made grid classes (containers and columns) are now behind a Sass variable, meaning grid classes can easily be disabled via Sass variable. Update the boolean $enable-grid-classes variable and recompile to remove them.

  • Grid modifier classes are simpler and no longer require the col- prefix. For example, instead of .col-offset-*-*, .col-push-*-*, and .col-pull-*-*, we now have .offset-*-*, .push-*-*, and .pull-*-*.

  • Mixins have been changed, and then changed again, to in an effort to keep generated classes simple and cooperative between standard and flexbox modes. Our two primary column mixins are now make-col-ready, which houses the position, padding-*s, and min-height (to prevent collapsing empty columns), and make-col for setting the float and width.

  • Added a grid customization section to the docs to explain how to change the number of columns, grid tier breakpoints, container widths, and more.

These changes are available in our standard grid, as well as our flexbox grid. More on that below.

Flexbox

Flexbox auto-layout

Flexbox mode has been updated across the board in Alpha 3, starting from the grid system (it uses the same variable and the updated Sass mixins) and moving through our utilities and components.

  • New flexbox grid docs. In addition to the standard grid docs, we now have a dedicated docs page for our flexbox grid as it behaves slightly differently than the standard grid. This new page includes details on how and why this grid works the way it does, as well as additional code examples.

  • Automatic equal-width column sizing with new .col-{breakpoint} classes. For example, for three equal-width columns at the xs breakpoint, you’d create three columns each with just .col-xs.

  • New flexbox alignment utility classes for vertically and horizontally distributing items. Works with our flexbox grid, as well as just about any other custom component.

Forms

Form validation states

Forms saw a ton of activity early on in Alpha 3’s development. Documentation, class names, layout options, and validation styles have all been drastically improved.

  • New classes for checkboxes, radios, input sizing, and legends. While not 100% final, all our form controls are named more clearly and consistently across our CSS.

  • Replaced the base64 PNG background images with inline SVGs for our custom form controls and validation states. Scale those form controls to your heart’s content!

  • Speaking of validation states, we have brand new form validation and help text options. Validation states can now be applied on a per-input basis (with .form-control-{state}) and optional validation feedback can be shown with .form-control-feedback. Independent form help text can now be controlled with the new .form-text class.

<div class="form-group has-success">
  <label class="col-form-label" for="inputSuccess1">
    Input with success
  </label>
  <input type="text" class="form-control form-control-success" id="inputSuccess1">
  <div class="form-control-feedback">
    Success! You've done it.
  </div>
  <small class="form-text text-muted">
    Example help text that remains unchanged.
  </small>
</div>
  • Fixed a few form related bugs, like the horizontal label padding in #17498, misuse of <fieldset>s for form groups, sizing classes not applying to <select>s, and more.

  • Documentation for forms has been overhauled. We have simpler examples of our available form controls, clearer guidance on validation states (and when to use each), and more.

System fonts

We’ve replaced the decades old Helvetica/Arial font stack with a system font stack, utilizing newer, more readable, and more powerful fonts that companies like Apple, Google, and Microsoft have specifically designed for today’s devices.

Originally this was planned to affect Linux users, but font usage and support is rather inconsistent across distros and user preferences. For that reason, there’s no intended font change for folks on Linux.

And so much more…

There were nearly 1,200 commits to Alpha 3 and this post barely scratches the surface. We’ve fixed dozens of other bugs and worked hard to improve our documentation across the board.

For more details on this release’s changes, take a look at the Alpha 3 ship list issue, as well as the closed Alpha 3 milestone.

Anxious to jump in? Then head to the v4 alpha docs!

Be sure to join our official Slack room! and dive into our issue tracker with bug reports, questions, and general feedback whenever possible.

What’s next?

More exploration, more bugfixes, more docs updates, and, best of all, more alphas. The daily grind keeps us super busy these days, but we’ll do our best to keep the momentum going. Stay tuned!

Bootstrap 3.3.7 released

@cvrebert July 25, 2016

Bootstrap 3.3.7 is here! We’ve had over 220 commits and 80 closed issues and pull requests from nearly 30 contributors since our last release. Woohoo!

Here are some of the highlights:

  • Added support for jQuery 3.
  • Added inline source files into sourcemap eliminating 4xx errors on the CDN.
  • Updated several devDependencies and gems.
  • Removed unsupported vendor prefixes for @viewport.

For a complete breakdown, read the release changelog and the v3.3.7 milestone.

Download Bootstrap

Download the latest release—source code, compiled assets, and documentation—as a ZIP file directly from GitHub:

Download Bootstrap 3.3.7

Hit the project repository or Sass repository for more options. Also, remember we’re available on npm, too.

Bootstrap CDN

After reviewing the changelog, update your CDN links to point to the v3.3.7 files:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

New Bootstrap 4 alpha

@mdo December 08, 2015

Bootstrap 4 alpha 2 is now available. Since our last release, nearly 100 people have pushed over 900 commits to v4 and we’ve closed over 400 issues and pull requests. Those numbers are outrageously awesome to see, and we’ve still got a ton of work ahead of us this year for v4.

As mentioned in our last post, the general plan for v4’s development starts with a few alpha releases. We’re a little behind on that, but should be getting caught up as the year winds down. Expect another alpha or two this month to really round things out.

Here’s a look at a handful of the changes since our last alpha:

  • Overhauled spacing utilities to use a numerical tiering (to avoid confusion with grid tiers).
  • Continued refactoring efforts to replace markup-specific selectors with classes across several components (including pagination, lists, and more). Still more to do here with additional components.
  • Reverted media queries and grid containers from rems to pixels as viewports are not affected by font-size. See #17403 for details. We’ve got a ton of grid work left, too. Feel free to follow along with #18471.
  • Reverted .0625rem width borders to 1px for more consistent component borders that avoid zoom and font-size bugs across browsers.
  • Renamed .img-responsive to .img-fluid to avoid future confusion on the various responsive image solutions out there.
  • Replaced ZeroClipboard with clipboard.js for Flash-independent copy buttons.
  • Inputs and buttons now share the same border variable to ensure components are always sized similarly.
  • Updated all pseudo-element selectors to use the spec’s preferred double colon (e.g., ::before as opposed to :before).
  • Cards now have outline variants and mixins to support extending base classes further.
  • Utility classes for floats and text alignment now have responsive ranges. This means we’ve dropped the non-responsive classes to avoid duplication.
  • Added support for jQuery 2.
  • And hundreds more Sass improvements, bug fixes, documentation updates, and more.

We highly encourage folks to skim through the second alpha’s milestone on GitHub for a better idea of what’s changed across the board. You can also follow along with other v4 efforts with the v4 label on our issue tracker.

Ready to dive in? Then head to the v4 alpha docs!

Be sure to join our official Slack room! and dive into our issue tracker with bug reports, questions, and general feedback whenever possible.

Bootstrap 3.3.6 released

@mdo November 24, 2015

Bootstrap 3.3.6 is here! It’s a long overdue release that addresses dozens of CSS bug fixes and documentation updates. We’ve had over 180 commits and 100 closed issues and pull requests from nearly 30 contributors since our last release. Woohoo!

Here are some of the highlights:

  • Added support for an official NuGet package (yeah, it’s an old one, but folks still use it!).
  • Enabled source maps for our compiled minified CSS.
  • Updated over a dozen browser bug entries as browsers continue to fix bugs (aww yeah!).
  • Updated several JavaScript plugin docs to clarify usage.
  • Made local documentation development easier with a local jQuery fallback.

For a complete breakdown, read the release changelog and the v3.3.6 milestone.

Download Bootstrap

Download the latest release—source code, compiled assets, and documentation—as a ZIP file directly from GitHub:

Download Bootstrap 3.3.6

Hit the project repository or Sass repository for more options. Also, remember we’re available on npm, too.

Bootstrap CDN

After reviewing the changelog, update your CDN links to point to the v3.3.6 files:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap-theme.min.css">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

Bootstrap 4 alpha

@mdo August 19, 2015

Today is a special day for Bootstrap. Not only is it our fourth birthday, but after a year of development, we’re finally shipping the first alpha release of Bootstrap 4. Hell yeah!

Bootstrap 4 has been a massive undertaking that touches nearly every line of code. We’re stoked to share it with you and hear your feedback. We’ve got a lot of news to share with you, so let’s jump right into it.

What’s new

Bootstrap 4 alpha

There are a ton of major changes to Bootstrap and it’s impossible to cover them all in detail here, so here are some of our favorite highlights:

  • Moved from Less to Sass. Bootstrap now compiles faster than ever thanks to LibSass, and we join an increasingly large community of Sass developers.
  • Improved grid system. We’ve added a new grid tier to better target mobile devices and completely overhauled our semantic mixins.
  • Opt-in flexbox support is here. The future is now—switch a boolean variable and recompile your CSS to take advantage of a flexbox-based grid system and components.
  • Dropped wells, thumbnails, and panels for cards. Cards are a brand new component to Bootstrap, but they’ll feel super familiar as they do nearly everything wells, thumbnails, and panels did, only better.
  • Consolidated all our HTML resets into a new module, Reboot. Reboot steps in where Normalize.css stops, giving you more opinionated resets like box-sizing: border-box, margin tweaks, and more all in a single Sass file.
  • Brand new customization options. Instead of relegating style embellishments like gradients, transitions, shadows, and more to a separate stylesheet like v3, we’ve moved all those options into Sass variables. Want default transitions on everything or to disable rounded corners? Simply update a variable and recompile.
  • Dropped IE8 support and moved to rem and em units. Dropping support for IE8 means we can take advantage of the best parts of CSS without being held back with CSS hacks or fallbacks. Pixels have been swapped for rems and ems where appropriate to make responsive typography and component sizing even easier. If you need IE8 support, keep using Bootstrap 3.
  • Rewrote all our JavaScript plugins. Every plugin has been rewritten in ES6 to take advantage of the newest JavaScript enhancements. They also now come with UMD support, generic teardown methods, option type checking, and tons more.
  • Improved auto-placement of tooltips and popovers thanks to the help of a library called Tether.
  • Improved documentation. We rewrote it all in Markdown and added a few handy plugins to streamline examples and code snippets to make working with our docs way easier. Improved search is also on its way.
  • And tons more! Custom form controls, margin and padding classes, new utility classes, and more have also been included.

And that barely scratches the surface of the 1,100 commits and 120,000 lines of changes in v4 so far. Plus, we’re not even done yet!

Ready to check it out? Then head to the v4 alpha docs!

Development plan

We need your help to make Bootstrap 4 the best it can be. Starting today, the source code for v4 will be available in a v4-dev branch on GitHub. In addition, we have a v4 development and tracking pull request that includes a master checklist of changes we’ve made and our remaining possible todos. We’d love for y’all to help chip away at those todos.

The general development and release plan looks something like this:

  • A few alpha releases while things are still in flux.
  • Two beta releases after features and functionality are locked down to really test things out.
  • Two release candidates (RCs) to really test things out closer to production environments.
  • Then, the final release!

For those jamming on v4 with us, we also have a dedicated v4 Slack channel. Jump in to talk shop and work with your fellow Bootstrappers. If you haven’t yet, join our official Slack room!.

If you’re not keen on pushing code to v4, we’d love to hear from you in our issue tracker with bug reports, questions, and general feedback.

Supporting v3

When we shipped Bootstrap 3, we immediately discontinued all support for v2.x, causing a lot of pain for all our users out there. That was a mistake we won’t be making again. For the foreseeable future, we’ll be maintaining Bootstrap 3 with critical bug fixes and documentation improvements. v3 docs will also continue to be hosted after v4’s final release.

One more thing…

In addition to shipping the first Bootstrap 4 alpha today, we’re also launching our latest side project, Official Bootstrap Themes.

Official Bootstrap Themes

We’ve talked about building premium themes for Bootstrap since our earliest releases, but never quite found the time or ideal approach until earlier this year. We’ve poured hundreds of hours into these themes and consider them to be much more than traditional re-skins of Bootstrap. They’ve very much their own toolkits, just like Bootstrap.

To start, we’re launching with three themes built on Bootstrap 3: a dashboard, an application, and a marketing site. Each theme contains everything you’d find in Bootstrap, plus stunning real world examples, brand new components and plugins, custom documentation, and simple build tools.

All themes include a multiple-use license for the purchaser and free updates for bug fixes and documentation updates for the life of the themes.

Head to the Bootstrap themes site to check them out.

Introducing No Carrier

@cvrebert August 04, 2015

Say hello to our newest bot, No Carrier. Inspired by the classic modem disconnection error message of yesteryear, No Carrier helps us track issues that appear to have been abandoned by the original poster. Issues that go without a reply to our questions for two weeks are closed with a friendly explanation by No Carrier.

To date, we’ve handled abandoned issues just like any other issues—with ad-hoc reviews. We felt that could be improved, so we made a bot to automate the process. No Carrier appears on our issue tracker as @twbs-closer and will monitor issues we tag with awaiting-reply. Should no one reply within two weeks, @twbs-closer will post a final comment explaining the situation and our policy, and then automatically close the issue. If someone later replies after the cutoff, a member of our team will happily reopen the issue manually and continue pursuing it.

No Carrier is available for any GitHub project, not just Bootstrap. If you have a project on GitHub that might benefit from this automation, we invite you to try out No Carrier. For more details, usage instructions, and feedback, check out the No Carrier project on GitHub. You can download the assembly JAR from the “Downloads” section of the v1.0.0 release page.

Bootstrap 3.3.5 released

@cvrebert June 15, 2015

Bootstrap 3.3.5 is here! This release has focused on bug fixes, accessibility improvements, and documentation updates. We’ve had over 330 commits and 160 closed issues and pull requests from over 40 contributors since our last release! Hell yeah.

Here are some of the highlights:

  • Updated to Normalize.css v3.0.3.
  • Updated main in bower.json to comply with recent update to the bower.json specification
  • List groups now support <button> elements.
  • Cleaned up some extraneous padding on jumbotrons across various viewports.
  • Fixed input group sizing classes on all supported elements for real this time.
  • Applied a few tooltip and popover positioning fixes.
  • Fixed behavior when using tooltips and popovers that are triggered by multiple events.
  • Fixed some memory leakage in the tooltip and popover plugins.
  • Fixed incorrect Affix positioning when a webpage has a sticky footer.
  • Fixed npm package to include all Grunt scripts, so that grunt dist works if you installed Bootstrap from npm.

For a complete breakdown, read the release changelog and the v3.3.5 milestone.

Bootstrap Slack

Since we last shipped a release, we made an official Slack for folks to hang out with other Bootstrappers. Registration is completely open thanks to the Slackin open source project. We have two channels to start—general and help—and nearly 1,000 members to date!

Sign up here to join.

wiredep and Bower

Due to vagueness in Bower’s specification, wiredep made some questionable assumptions about how the main field in bower.json works. Recently, Bower updated their spec to address this and clarify how main should work, and we updated our bower.json accordingly. Unfortunately, wiredep broke as a result if you were using it with Bootstrap’s vanilla precompiled CSS. Bower is working to further update their spec to address this problem and better assist tools like wiredep.

In the meantime, a quick-and-dirty workaround to get wiredep to work with Bootstrap again is to add the following to your project’s bower.json:

"overrides": {
  "bootstrap": {
    "main": [
      "dist/js/bootstrap.js",
      "dist/css/bootstrap.css",
      "less/bootstrap.less"
    ]
  }
}

Download Bootstrap

Download the latest release—source code, compiled assets, and documentation—as a ZIP file directly from GitHub:

Download Bootstrap 3.3.5

Hit the project repository or Sass repository for more options. Also, remember we’re available on npm, too.

Bootstrap CDN

After reviewing the changelog, update your CDN links to point to the v3.3.5 files:

<!-- Latest compiled and minified CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">

<!-- Optional theme -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css">

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>