Origin of Twitter Bootstrap
Bootstrap (originally named as Twitter Blueprint) was developed by Mark Otto and Jacob Thornton at Twitter as framework to motivate uniformity within internal tools. Earlier, when the Bootstrap was not introduced, use of internal tools led to many inconsistencies and required high maintenance.
According to "Mark Otto" developer of Twitter,
"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."
And after few months of development by small group, Twitter was renamed from Twitter Blueprint to Bootstrap and released on August 19, 2011. After further improvements and changes Bootstrap 2 was announced on January 31, 2012, which includes responsive design components and 12 column grid layout and many more changes to their existing components.
Why Twitter Bootstrap Should Be Used?
Bootstrap framework has many benefits like it is responsive, easily customizable, consistent, less time consuming and has flexible as well as fixed 12-column grid responsive layouts. Bootstrap has become a most important and popular open source front end framework and large number of developers are taking its benefits. Here are the reasons for using Bootstrap:
1. Less Time Consuming
Bootstrap library provides ready to use code, which can be directly used in development and save lots of time. A web developer doesn't have to spend number of hours for writing code, but all he need is to select required piece of code and then put it into the right place. And for styling, inbuilt CSS or pre-styled CSS can be added and user can also add his/her own CSS file. You can utilize bootstrap along with CSS, LESS or SASS. The main advantage of this feature is that, if you are looking to create new website or any application with certain time limit then, you should use Bootstrap (you can also purchase any readymade bootstrap theme and modify it according to your project requirement).
2. Pre-Processed CSS Files
Bootstrap provides pre-processed files which were created using LESS CSS. A web developer needs not to maintain a number of CSS files because it is very difficult to manage number of files. If you want simple, neat and clean code and don't want to use those large number of files, then you can add pre-processed CSS files. But using Bootstrap is not mandatory, if you find your own CSS file much better and easy to handle, then simply add it in the head section of your HTML document.
3. Uniformity or Consistency
Before the introduction of Bootstrap, there was lack of consistency between the front-end and back-end developers working on their projects. And these inconsistencies result in number of issues, but now these issues are resolved via Bootstrap framework irrespective of who is working on it and results are highly consistent whether you are using any browser Firefox, Internet Explorer, Safari, Chrome and Opera (compatible with all modern browsers).
4. Styling for HTML Elements
Each website has number of elements like headings, tables, list, buttons and forms etc. and Bootstrap offers base styling for most of the HTML elements.
Some of the HTML elements for which Bootstrap offers styling are:
- Icons and many more.
5. Large Number of Components
There are large number of components which are pre-styled and ready to use in Bootstrap. If you need navigation bar, pagination, breadcrumbs, alerts and jumbotron, glyphicons, lists, forms and input controls, badges, thumbnails, progress bars, tables, panels and responsive embed, these all are pre-styled components just add them and enjoy.
If you want to add different features in your website like modal popups, collapsible accordions, popovers, tooltips, tabs, carousels, dropdown menus etc. then what you need is, just to add few lines of code in your own code to integrate these jQuery plugins. Furthermore, you need not to try and check different plugins again and again and that will keep your file size minimum.
7. Flexible Grid System
If you are looking for designing a complete new web application, idea of creating a fixed grid system is not good. Bootstrap allows you to use up to 12 columns, but if you don't want to use all 12 columns then, you can group them together with wider columns (you can use nesting and offsetting between both fixed and flexible responsive grid) depending upon your requirement. Bootstrap grid system has four classes:
- xs (extra small) for mobile phones
- sm (small) for tablets
- md (medium) for desktops
- lg (large) for larger desktops
8. Easy to Use and Customize
Another reason to use Bootstrap is that it's very easy to use because everything is ready to use. Bootstrap can be easily customized as per your project requirement; developers can simply select the aspects and keep what they need and remove what they don't need from Bootstrap customization page. Main feature of Bootstrap is that, it allows you to represent your own needs and customize your own development. Aspects like: Common CSS: typography, code, grid system, tables, buttons, forms, print media styles etc. Components like Input groups, navigation bar, pagination, labels, pager. jQuery components like dropdown menus, popovers, modals, tooltips and carousels. Utilities like basic and responsive utilities. You just have to download your customized version of Bootstrap and then add it in your HTML document.
Responsiveness is the main feature of Bootstrap, it automatically adjusts when you switch from a laptop to an iPad or iPhone and to any mobile devices. Today, many new devices have come to an existence such as laptops, mobile phones, tablets etc. and requirement of responsive website has also become important and popular. In Bootstrap, you can use fluid grid layouts to indicate that how much space a column has to occupy. This feature of responsiveness in Bootstrap helps your website to be easily accessible on any device, means it effectively adjusts to any of the screen resolution with high speed and efficiency.