# Bootstrap (framework)

Bootstrap (letterlijk laarzenlus, een hulpmiddel om een rijlaars met behulp van een speciale haak, aan te trekken) is een verzameling hulpmiddelen voor het maken van websites en webtoepassingen. Het is gratis en open source. Het bevat sjablonen gebaseerd op HTML en CSS voor typografie, formulieren, knoppen, navigatie en andere interfaceonderdelen. Het bevat ook JavaScript-extensies. Het Bootstrap-framework is bedoeld om webontwikkeling te vereenvoudigen.

## Oorsprong

Bootstrap, oorspronkelijk Twitter Blueprint genaamd, werd ontwikkeld door Mark Otto en Jacob Thornton bij Twitter als een framework om een consistent ontwerp te hebben binnen de interne hulpmiddelen. Voor de komst van Bootstrap werden allerlei bibliotheken gebruikt voor het ontwerp van de interface, waardoor deze inconsistent was en veel onderhoud vroeg. Volgens Twitter-ontwikkelaar Mark Otto:
   "A super small group of developers and I got together to design and build a new internal tool and saw an opportunity to do something more. Through that process, we saw ourselves build something much more substantial than another internal tool. Months later, we ended up with an early version of Bootstrap as a way to document and share common design patterns and assets within the company."
Na enkele maanden ontwikkeling door een kleine groep begonnen meerdere ontwikkelaars bij Twitter bij te dragen aan het project als onderdeel van Hack Week, een hackathon-achtige week voor het ontwikkelteam van Twitter. Het project werd hernoemd naar Bootstrap, en het kwam uit als een opensourceproject op 15 augustus 2011. Het wordt nog steeds onderhouden door Mark Otto, Jacob Thornton, en een kleine groep van belangrijke ontwikkelaars, maar ook door een grote gemeenschap van bijdragers.
Op 31 januari 2012 werd Bootstrap 2 aangekondigd. In deze release was er een lay-out voor een tabel met 12 kolommen en componenten voor responsive webdesign, naast wijzigingen aan vele van de bestaande componenten. De release van Bootstrap 3 werd aangekondigd op 19 augustus 2013, met een "mobile first"-benadering en een "flat" design.
Op 23 april 2015 maakte Mark Otto bekend dat Bootstrap 4 wordt ontwikkeld. De eerste alfaversie van Bootstrap 4 werd op 19 augustus 2015 geïmplementeerd.
Bootstrap 5 Alpha werd officieel uitgebracht op 16 juni 2020. Na minder dan een half jaar, op 1 december 2020, kondigde Mark Otto de release van de eerste bètaversie aan. Momenteel is de nieuwste versie van het pakket Beta 2, dat werd gelanceerd op 10 februari 2021.
De eerste use case van Bootstrap 5-versie verscheen pas een paar dagen na de officiële première. De meest bekende pakket-MDB 5-UI-kit voor materiaalontwerp voor Bootstrap 5.

## Kenmerken

Bootstrap is compatibel met de laatste versies van Google Chrome, Firefox, Internet Explorer, Opera, Safari en Edge hoewel sommige van deze webbrowsers niet op alle platformen ondersteund worden.
Bootstrap is snel en schaalbaar, de onderliggende HTML en CSS-bestanden zijn er compact. Dit is in het voordeel van de website of webapplicatie. Bootstrap is een stuk goedkoper dan maatwerk. Omdat Bootstrap een framework is dat bestaat uit standaard componenten, dit levert een behoorlijke tijdwinst op.
Vanaf versie 2.0 ondersteunt het ook responsive webdesign. Dit betekent dat de lay-out van de webpagina's zich dynamisch aanpast aan het gebruikte apparaat (desktop, tablet, smartphone).
Vanaf versie 3.0 is Bootstrap gericht op mobile first.
Bootstrap is open source en beschikbaar via GitHub. Omdat Bootstrap open source is het gemakkelijk om aan te passen. Iedere regel code kan veranderd worden. De bestanden kennen een eenvoudige structuur zodat deze voor iedere ontwikkelaar makkelijk te lezen zijn.
Ten slotte kan Bootstrap geïntegreerd worden met verschillende content managementsystemen zoals Drupal en Joomla. Op deze manier blijft de content in eigen beheer, Bootstrap is de presentatie hiervan.

## Structuur en functie

Bootstrap is modulair en bestaat hoofdzakelijk uit een reeks van SASS-stylesheets die de verschillende onderdelen van de toolkit verwezenlijken. Ontwikkelaars kunnen het bootstrap.less-bestand zelf aanpassen en zo kiezen welke onderdelen ze willen gebruiken in hun project.
Het tabelsysteem en responsive design heeft standaard een lay-out met een tabel van 1170 pixels breed. Als alternatief kan de ontwikkelaar kiezen voor een lay-out met variabele breedte. Voor beide gevallen biedt de toolkit vier variaties aan voor verschillende resoluties en apparaattypes.
Bootstrap bevat meerdere JavaScript-componenten in de vorm van jQuery-plug-ins. Deze voorzien in bijkomende elementen voor de gebruikersomgeving, zoals dialoogvensters, tooltips en carrousels. Ze breiden ook de functionaliteit van bestaande elementen uit, zoals bij auto-complete voor invoervelden.