All Projects → reactstrap → Reactstrap

reactstrap / Reactstrap

Licence: mit
Simple React Bootstrap 5 components

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to Reactstrap

Clarity
Clarity is a scalable, accessible, customizable, open source design system built with web components. Works with any JavaScript framework, built for enterprises, and designed to be inclusive.
Stars: ✭ 6,398 (-37.32%)
Mutual labels:  hacktoberfest, components
Ng Bootstrap Form Validation
An Angular Module for easy data driven (reactive) form validation
Stars: ✭ 57 (-99.44%)
Mutual labels:  hacktoberfest, bootstrap
Metro Ui Css
Impressive component library for expressive web development! Build responsive projects on the web with the first front-end component library in Metro Style. And now there are even more opportunities every day!
Stars: ✭ 6,843 (-32.96%)
Mutual labels:  components, bootstrap
Ngx Bootstrap
Fast and reliable Bootstrap widgets in Angular (supports Ivy engine)
Stars: ✭ 5,343 (-47.65%)
Mutual labels:  components, bootstrap
Taiga Ui
Angular UI Kit and components library for awesome people
Stars: ✭ 1,353 (-86.74%)
Mutual labels:  hacktoberfest, components
Shards React
⚛️A beautiful and modern React design system.
Stars: ✭ 639 (-93.74%)
Mutual labels:  components, bootstrap
Scalajs Bootstrap
Scala.js bootstrap components
Stars: ✭ 55 (-99.46%)
Mutual labels:  components, bootstrap
Shards Vue
🌟Shards Vue is a free, beautiful and modern Vue.js UI kit based on Shards.
Stars: ✭ 390 (-96.18%)
Mutual labels:  components, bootstrap
Generator Ngx Rocket
🚀 Extensible Angular 11+ enterprise-grade project generator
Stars: ✭ 1,329 (-86.98%)
Mutual labels:  hacktoberfest, bootstrap
Ui
React Styled Components with bootstrap grid system
Stars: ✭ 89 (-99.13%)
Mutual labels:  components, bootstrap
Reakit
Toolkit for building accessible rich web apps with React
Stars: ✭ 5,265 (-48.42%)
Mutual labels:  hacktoberfest, components
Ansible Role Bootstrap
Prepare your system to be managed by Ansible.
Stars: ✭ 106 (-98.96%)
Mutual labels:  hacktoberfest, bootstrap
Ember Bootstrap
Ember-cli addon for using Bootstrap as native Ember components.
Stars: ✭ 475 (-95.35%)
Mutual labels:  hacktoberfest, bootstrap
Laravel Boilerplate
Laravel Boilerplate / Starter Kit with Gentelella Admin Theme
Stars: ✭ 704 (-93.1%)
Mutual labels:  hacktoberfest, bootstrap
Tails
Tails is a (no-config) copy'n paste library of templates and components crafted using TailwindCSS
Stars: ✭ 416 (-95.92%)
Mutual labels:  hacktoberfest, components
Vuedarkmode
👩‍🎨👨‍🎨 A minimalist dark design system for Vue.js. Based components designed for the insomniacs who enjoy dark interfaces as much as we do.
Stars: ✭ 1,034 (-89.87%)
Mutual labels:  components, bootstrap
Coreui Vue
Over 90 Bootstrap based Vue.js components and directives. CoreUI React.js UI Components. CoreUI for Vue.js replaces and extends the Bootstrap javascript. Components have been built from scratch as true Vue components, without jQuery and unneeded dependencies.
Stars: ✭ 318 (-96.88%)
Mutual labels:  components, bootstrap
Cookiecutter Flask
A flask template with Bootstrap 4, asset bundling+minification with webpack, starter templates, and registration/authentication. For use with cookiecutter.
Stars: ✭ 3,967 (-61.13%)
Mutual labels:  hacktoberfest, bootstrap
Bootstrap For Vue
Use https://bootstrap-vue.js.org instead.
Stars: ✭ 62 (-99.39%)
Mutual labels:  components, bootstrap
Uniforms
A React library for building forms from any schema.
Stars: ✭ 1,368 (-86.6%)
Mutual labels:  hacktoberfest, components

reactstrap

NPM Version Build Status Coverage Status License

reactstrap

Stateless React Components for Bootstrap 5.

If you're using Bootstrap 4, you'll need to use Reactstrap v8

Getting Started

Follow the create-react-app instructions to get started and then follow the reactstrap version of adding bootstrap.

tl;dr

npx create-react-app my-app
cd my-app/
npm start

or, if npx (Node >= 6 and npm >= 5.2 ) not available

npm install -g create-react-app

create-react-app my-app
cd my-app/
npm start

Then open http://localhost:3000/ to see your app. The initial structure of your app is setup. Next, let's add reactstrap and bootstrap.

Adding Bootstrap

Install reactstrap and Bootstrap from NPM. Reactstrap does not include Bootstrap CSS so this needs to be installed as well:

npm i bootstrap
npm i reactstrap react react-dom

Import Bootstrap CSS in the src/index.js file:

import 'bootstrap/dist/css/bootstrap.css';

Import required reactstrap components within src/App.js file or your custom component files:

import { Button } from 'reactstrap';

Now you are ready to use the imported reactstrap components within your component hierarchy defined in the render method. Here is an example App.js redone using reactstrap.

Dependencies

Required Peer Dependencies

These libraries are not bundled with Reactstrap and required at runtime:

About the Project

This library contains React Bootstrap components that favor composition and control. The library does not depend on jQuery or Bootstrap javascript. However, Poppers.js via react-popper is relied upon for advanced positioning of content like Tooltips, Popovers, and auto-flipping Dropdowns.

There are a few core concepts to understand in order to make the most out of this library.

  1. Your content is expected to be composed via props.children rather than using named props to pass in Components.

    // Content passed in via props
    const Example = (props) => {
      return (
        <p>This is a tooltip <TooltipTrigger tooltip={TooltipContent}>example</TooltipTrigger>!</p>
      );
    }
    
    // Content passed in as children (Preferred)
    const PreferredExample = (props) => {
      return (
        <p>
          This is a <a href="#" id="TooltipExample">tooltip</a> example.
          <Tooltip target="TooltipExample">
            <TooltipContent/>
          </Tooltip>
        </p>
      );
    }
  2. Attributes in this library are used to pass in state, conveniently apply modifier classes, enable advanced functionality (like tether), or automatically include non-content based elements.

    Examples:

    • isOpen - current state for items like dropdown, popover, tooltip
    • toggle - callback for toggling isOpen in the controlling component
    • color - applies color classes, ex: <Button color="danger"/>
    • size - for controlling size classes. ex: <Button size="sm"/>
    • tag - customize component output by passing in an element name or Component
    • boolean based props (attributes) when possible for alternative style classes or visually-hidden content

Documentation

https://reactstrap.github.io

Documentation search is powered by Algolia's DocSearch.

CodeSandbox Examples

Here are some ready-to-go examples for CodeSandbox that you can experiment with.

https://github.com/reactstrap/code-sandbox-examples

Contributing

Development

Install dependencies:

npm install

Run examples at http://localhost:8080/ with webpack dev server:

npm start

Run tests & coverage report:

npm test

Watch tests:

npm run test-watch

Releasing

Release branches/versioning/notes will be automatically created and maintained by the release-please github action. When you're ready to publish the release, just merge the release branch. The release will be created, the new package will be published, and the updated docs will be deployed to https://reactstrap.github.io/.

In the wild

Organizations and projects using reactstrap

Submit a PR to add to this list!

Looking to build, document and publish reusable components built on top of reactstrap? Consider forking https://github.com/reactstrap/component-template to kickstart your project!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].