Docs | Demos | Videos | Bit Cloud
Bit is a toolchain for component-driven software development.
Leave behind monolithic apps and build in a distributed scalable way.
Bit stands at the intersection between product and engineering. It helps you take complex product requirements, and break them down into independent, reusable pieces called "components" that fit well together. Components can be anything independent by nature from a general purpose module, UI components, UI applications, pages, blocks, backend services, content and anything else you might imagine. Think of Bit as a ways to build larger projects from smaller pieces together with more people.
As a developer, imagine having a single mini-repository for each of your components, and a dev experience that makes the development of them seamless together. As an architect, imagine having your entire software architecture built from service-oriented components, sorted and controlled on a single architectural graph, it is like scaling Microservices for everything. As a designer, think of composing a design out of symbols, each symbol is indepednent and reusable.
Bit does not prescribe how you build your entire application. It helps you define and compose components and allows for every component to adopt the dev tools that best fit its nature. A React component might be compiled, tested and sometimes even deployed with a different composition of tools than a Microservice component, or a generic function. Bit comes with native support in various dev tools like TypeScript, Babel, Jest, Webpack, ESLint and ready made development environments for React, NodeJS, Angular and more. New tools can be easily integrated by adding one more component into Bit!
We build 100% of our technology with Bit, and so do thousands of developers and many Fortune-50 companies.
To get started, we would first have to make sure the bit binary is installed on your machine and configured to your PATH.
$ npx @teambit/bvm install
(NodeJS installation is required)
The first step in the Bit journey is to create a component development workspace. Workspaces allow the creation and maintanance of isolated and independent pieces called "components". Since every component is isolated, the workspace is tech agnostic and allows for components, with a different tech stack to co-exist. A single workspace might include React components, general purpose node modules, Angular modules and even backend services.
To create a new workspace, run:
bit new great-inventions
cd my-workspace
bit start
Here are 4 common use-cases to start your transition to component-driven development.
- Micro Frontends
- Design Systems (Component Marketplace)
- Shared Logic and Backend Functionality
- Rapid Application Development
Contributions are always welcome, no matter how large or small. Before contributing, please read the code of conduct.
See Contributing.