Home

Anton Danilchenko edited this page Oct 28, 2016 · 19 revisions
Clone this wiki locally

Welcome to the react-bootstrap wiki!

These wiki pages are primarily intended to aid in documenting patterns and practices used in developing this library. User documentation can be found at http://react-bootstrap.github.io/

1.0.0 Roadmap

While @stevoland and @pieterv have done an amazing job at getting this project started we have a lot of work to do to declare this library ready for a 1.0.0 release. As mentioned in the Maintaining - Releases documentation we will do everything in power to ensure that semver guidelines are followed. The question is when do we draw a line in the sand where we are comfortable that a 1.0.0 release is ready. The following guidelines should be considered to make that declaration.

  • Favicon - Short but important for branding, add the RB logo as favicon for docs site.
  • Consistent API - From component to component we should ensure that similar concepts are implemented in a clear an intuitive manner.
    • onClick handlers - function signature function(event, [eventKey])
      • on anchors we don't call e.preventDefault() that should be left to the consumer.
    • onSelect handlers - Ongoing conversation #419
    • Correct English on Components name (Collapsable => Collapsible) #425
    • Figure out either a naming scheme or something for applying classNames for nested elements within a component. See #560 and #517
  • styleMap - https://github.com/react-bootstrap/react-bootstrap/blob/master/src/styleMaps.js Trevor Robinson did some great work to make this better than it was, but this is being used blindly by many components still. There are still issues with this where not all components apply all classes. For example a Button component does not have css defined for tabs or pills which this implementation will allow. Some investigation to a proper solution is still needed.
  • Simple Components - #56
  • Accessibility - Each component needs to be thoroughly investigated to ensure Web Accessibility standards are being accounted for. There's some great documentation on this by WebAim which is a non-profit organization that is an advocate for Web Accessibility standards and implementation. This is an important element for those organizations which must meet strict guidelines required by law in both the United States and Internationally. It's important to note that seeking after this will not only benefit those with disabilities. For example keyboard functionality with each of these components can be used by most people regardless of their capabilities.
    • Accordion
    • Affix
    • Alert
    • Badge
    • Breadcrumb
    • Button
    • ButtonGroup
    • ButtonToolbar
    • CollapsableNav
    • Carousel
    • CarouselItem
    • Col
    • DropdownButton
    • DropdownMenu
    • Glyphicon
    • Grid
    • Icon
    • Input
    • Interpolate
    • Jumbotron
    • Label
    • ListGroup
    • ListGroupItem
    • Media
    • MenuItem
    • Modal. #612 Focus on modal dialogs.
    • Modal. #723 When a Modal is open keep focus on the Modal.
    • Nav
    • Navbar
    • NavItem
    • ModalTrigger
    • OverlayTrigger
    • Pagination
    • PageHeader
    • Panel
    • PanelGroup
    • PageItem
    • Pager
    • Popover
    • ProgressBar
    • Row
    • SplitButton
    • SubNav
    • TabbedArea
    • Table
    • TabPane
    • Thumbnail
    • Tooltip
    • Well
  • Documentation The documentation is good in its whole but is lacking a lot.
    First thing to do is add an introduction page to the project. Splitting the documentation the same way bootstrap site does would also help people get around in an easier way. Also the documentation for each component needs to be updated. Every prop we can pass needs to be documented/examplified.
    • Code Highlighting everywhere #94
    • #149 Add an introduction page
    • Prop documentation #716
    • Split the documentation the same way Bootstrap does
    • Update per-component documentation
      • Accordion
      • Affix
      • Alert
      • Badge
      • Breadcrumb
      • Button
      • ButtonGroup
      • ButtonToolbar
      • CollapsableNav
      • Carousel
      • CarouselItem
      • Col
      • DropdownButton
      • DropdownMenu
      • Glyphicon
      • Grid
      • Icon
      • Input
      • Interpolate
      • Jumbotron
      • Label
      • ListGroup
      • ListGroupItem
      • Media
      • MenuItem
      • Modal
      • Nav
      • Navbar
      • NavItem
      • ModalTrigger
      • OverlayTrigger
      • Pagination
      • PageHeader
      • Panel
      • PanelGroup
      • PageItem
      • Pager
      • Popover
      • ProgressBar
      • Row
      • SplitButton
      • SubNav
      • TabbedArea
      • Table
      • TabPane
      • Thumbnail
      • Tooltip
      • Well
    • The list of needs better docs issues
  • Do not forget to remove warning about pre-1.0.0 API changes from Start page.