Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/teambit/bit
A build system for development of composable software.
https://github.com/teambit/bit
angular collaboration component-driven composable composable-architecture distributed front-end javascript micro-frontend micro-services monorepo multirepo multirepo-maintenance node-js polyrepo react service-oriented-architecture typescript vue
Last synced: 26 days ago
JSON representation
A build system for development of composable software.
- Host: GitHub
- URL: https://github.com/teambit/bit
- Owner: teambit
- License: other
- Created: 2017-01-22T14:51:43.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-04-24T04:22:15.000Z (29 days ago)
- Last Synced: 2024-04-24T09:26:27.769Z (29 days ago)
- Topics: angular, collaboration, component-driven, composable, composable-architecture, distributed, front-end, javascript, micro-frontend, micro-services, monorepo, multirepo, multirepo-maintenance, node-js, polyrepo, react, service-oriented-architecture, typescript, vue
- Language: TypeScript
- Homepage: https://bit.dev
- Size: 159 MB
- Stars: 17,561
- Watchers: 179
- Forks: 901
- Open Issues: 50
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Lists
- awesome-stars - bit
- awesome-javascript - Bit - Create, find and reuse components (React, Angular, Node etc.) across applications. (Component Management)
- awesome-graphql - Bit - Organize GraphQL API as components to be consumed with NPM or modified from any project, [example-explanation](https://hackernoon.com/make-your-graphql-api-easier-to-adopt-through-components-74b022f195c1)). (Tools / Tools - Miscellaneous)
- awesome-list - bit - driven application development. | teambit | 13860 | (TypeScript)
- awesome-list - bit - driven application development. | teambit | 13860 | (TypeScript)
- awesome-nodejs - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-webcomponents - Bit
- awesome-stars - bit
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome-micro-frontends - Bit - A tool for developing and composing / integrating independently versioned components. (Tools / Projects)
- awesome-ui-component-library - Bit - to-end component sharing and management. It takes care of component development and publishing in your library (automatic dependency resolution, versioning etc), making each of them individually useful to consume and develop anywhere, so teams can manage and share components at scale. (React / Tools)
- awesome-javascript-cn - Bit
- awesome-bookmarks - **bit**
- awesome-nodejs-cn - Bit - 在存储库中创建,维护,查找和使用小型模块和组件. (目录 / 命令行工具)
- frontend-development - Bit
- awesome-stars - bit
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome-stars - bit
- awesome-stars - bit
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome-stars - bit
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-stars - bit
- awesome-monorepo - Bit
- awesome-nodejs-cn - Bit - 在存储库中创建、维护、查找和使用小型模块和组件 (包 / 命令行工具)
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-stars - bit
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-repositories - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-stars - bit
- awesome-nodejs-cn - Bit - 在存储库中创建、维护、查找和使用小型模块和组件 (包 / 命令行工具)
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-javascript - Bit - Create, find and reuse components (React, Angular, Node etc.) across applications. (Component Management)
- awesome-nodejs - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-node - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-node.js - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome-graphql - Bit - Organize GraphQL API as components to be consumed with NPM or modified from any project ([example](https://bit.dev/giladshoham/github-graphql)). (Tools / Crystal Libraries)
- awesome-react - Bit - A virtual repository for managing and using react and other web components across applications (Uncategorized / Uncategorized)
- awesome-stars - teambit/bit - A tool for composable software development. (TypeScript)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome - bit - Easily share components across projects and applications as a team. (TypeScript)
- awesome-stars - teambit/bit
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome-stars - bit
- fuck-awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-graphql - Bit - Organize GraphQL API as components to be consumed with NPM or modified from any project ([example](https://bit.dev/giladshoham/github-graphql)). (Tools / Julia Libraries)
- awesome-react - Bit - A virtual repository for managing and using react and other web components across applications
- my-awesome-stars - bit
- awesome-stars - teambit/bit - A tool for composable software development. (TypeScript)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Dev Tools / Vue CLI 3 Plugins)
- awesome-stars - bit
- awesome - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-javascript - Bit
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-from-stars - teambit/bit
- awesome-github-star - bit
- awesome-andy-node - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-stars - bit - Easily share code between projects with your team. (JavaScript)
- awesome-stars - bit - driven application development. | teambit | 14106 | (TypeScript)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Dev Tools / Vue CLI 3 Plugins)
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-list - Bit - A tool for isolating, developing and sharing components between projects and applications, with 2-way collaboartion over components. (Tools / Development workbenches)
- awesome-react-enaqx - Bit - A virtual repository for managing and using react and other web components across applications (Uncategorized / Uncategorized)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate ans share components from any projec without chagning its source code, organize curated collections and install in different projects. (Dev Tools / Payment)
- awesome-javascript-builds-project - Bit - Create, find and reuse components (React, Angular, Node etc.) across applications. (Component Management)
- awesome-nodejs - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-stars - bit
- awesome-nodejs - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-nodejs - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-vue. - Bit - Manage and reuse `vue` components between projects. Easily isolate ans share components from any projec without chagning its source code, organize curated collections and install in different projects. (Dev Tools / Payment)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate ans share components from any projec without chagning its source code, organize curated collections and install in different projects. (Dev Tools / Payment)
- awesome-nodejs - bit - Easily share code between projects with your team. - ★ 4579 (Command-line utilities)
- awesome-javascript - Bit - A lightweight and highly extendible Polyrepo for component-driven development. ` 📝 2 days ago ` (Component Managment [🔝](#readme))
- awesome-stars - bit
- awesome-ccamel - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-stars - bit
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate ans share components from any projec without chagning its source code, organize curated collections and install in different projects. (Dev Tools / Payment)
- awesome-projects - bit - Easily share code between projects with your team. (TypeScript)
- awesome-stars - bit - Build, distribute, and collaborate on components. (TypeScript)
- awesome-nodejs-new - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-stars - bit
- awesome-opensource-israel - Bit - An open-source toolchain for component-driven software. Forget monolithic apps and distribute development to components ![GitHub last commit](https://img.shields.io/github/last-commit/teambit/bit?style=flat-square) ![GitHub top language](https://img.shields.io/github/languages/top/teambit/bit?style=flat-square) ![GitHub stars](https://img.shields.io/github/stars/teambit/bit?style=flat-square) (Projects by main language / typescript)
- awesome-graphql - Bit - Organize GraphQL API as components to be consumed with NPM or modified from any project ([example](https://bit.dev/giladshoham/github-graphql)). (Tools / Julia Libraries)
- awesome-graphql - Bit - Organize GraphQL API as components to be consumed with NPM or modified from any project ([example](https://bitsrc.io/giladshoham/github-graphql)). (Tools / OCaml Libraries)
- awesome-react-cn - Bit - A virtual repository for managing and using react and other web components across applications (Uncategorized / Uncategorized)
- awesome-nodejs - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-stars - teambit/bit - `★17604` A build system for development of composable software. (TypeScript)
- awesome-nodejs - Bit - Create, maintain, find and use small modules and components across repositories. (Packages / Command-line utilities)
- awesome-ui-components - Bit - to-end component sharing and management. It takes care of component development and publishing in your library (automatic dependency resolution, versioning etc), making each of them individually useful to consume and develop anywhere, so teams can manage and share components at scale. (React / Tools)
- awesome-react - bit - A build system for development of composable software (**Awesome React** [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) / React)
- awesome-react - Bit - A virtual repository for managing and using react and other web components across applications
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-vue - Bit ★5676 - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Dev Tools / Vue CLI 3 Plugins)
- awesome-vue - Bit - Manage and reuse `vue` components between projects. Easily isolate and share components from any project without changing its source code, organize curated collections and install in different projects. (Components & Libraries / Dev Tools)
- awesome-react - Bit - A lightweight and highly extendible Polyrepo for component-driven development. ` 📝 2 days ago` (React [🔝](#readme))
- best-of-react - GitHub - 2% open · ⏱️ 16.05.2024): (Developer Tools)
- awesome-stars - bit - Build, distribute and collaborate on reusable components. (TypeScript)
- angular-awesome-list - Bit официальный репозиторий \(Github\)
- jimsghstars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome-stars - teambit/bit - A build system for development of composable software. (TypeScript)
- awesome - teambit/bit - A build system for development of composable software. (TypeScript)
- trackawesomelist - bit (⭐17k) - A build system for development of composable software (Recently Updated / [Apr 11, 2024](/content/2024/04/11/README.md))
- awesome-stars - teambit/bit - A build system for development of composable software. (vue)
- awesome-nodejs-cn - Bit - **star:17556** 跨存储库创建、维护、查找和使用小模块和组件 ![star > 2000][Awesome] (包 / 命令行实用工具)
- my-awesome-stars - teambit/bit - A tool for composable software development. (TypeScript)
README
Website |
Docs |
Community |
Bit Cloud
Bit is a build system for development of **composable software**. It makes the composition of applications from independently versioned components seamless and fast.
Bit is similar in sense, but stands as the opposite for the "Monorepo" approach, which aims to center all code under a central repository. Instead, Bit is bringing simplicity for distribution of source code into independently versioned components, depending on each other.
People often use Bit to run a Monorepo, a Polyrepo or without using repositories at all.
The core innovation of Bit is the ["Bit Component"](https://bit.dev/#component), a composable and versioned container for source code, whereas dependencies are first-class citizens. Components can be used as packages, ESM modules, runtime scripts, and any other artifact a build task can generate.
- 📦 **Descriptive module names**. Use components through descriptive package names. No aliases required.
- 🚀 **Dependency versioning.** Automatic detection and versioning of dependency changes. No more redundant package.json files.
- ⚓ **Reusable development environments.** Reusable components including all of your dev config. No more duplication of countless `tsconfig.json`, `eslintrc` or `pretterrc` configs.
- ⚒️ **Build pipelines**. Independently build and store packages, bundles, and binaries.
- 👓 **Preview and auto-generated docs**. Every component is an asset with auto-generated docs and component previews.
- 🛫 **Change review**. Use Lanes to propose and preview changes and collaborate on them with others.
- 🧑💻 **Component generators**. Create new components using pre-built or custom templates for any type of component.## Getting started
### Install Bit
Use the Bit installer to install Bit to be available on your PATH.
```bash
npx @teambit/bvm install
```For better VSCode dev experience, install the [Bit VSCode Plugin](https://marketplace.visualstudio.com/items?itemName=bit.vscode-bit).
### Create a new workspace
Run the following to create a workspace with a few components included, using the hello-world starter:
```bash
bit new hello-world my-hello-world --env teambit.community/starters/hello-world
```For the quick start, we use two React components and one Node module, though you can create components using any JS-based framework. You can explore our [official starters](https://bit.dev/docs) for [Vue](https://bit.dev/docs/quick-start/hello-world-vue), [Angular](https://bit.dev/docs/quick-start/hello-world-angular), and other supported tools or [learn how to create your own](https://bit.dev/docs/node-env/set-up-your-env).
### Run the app
Your workspace maintains a number of components. One of these components is also an [app](https://bit.dev/reference/apps/application-types/). Run it using:
```bash
bit run hello-world-app
```You can get any component to become an app by adding a single file to it.
### Create components
Start creating components using the default component generators, or [create your own](https://bit.dev/docs/node-env/generators).
```bash
bit create react buttons/button
```You can view other built-in component templates, by running the `bit templates` command.
### Use components
After creating a new component, start using it by adding an import statement in one of your workspace components.
```ts
import { Button } from '@org/scope-name.buttons.button';
```Once added, Bit will autodetect the dependency between these components. Use `bit show` or the VSCode plugin to view the list of dependencies Bit detected for your components.
### Create a remote scope
You can either use hosted scopes on [Bit Cloud](https://bit.cloud) or by [hosting scopes on your own](https://bit.dev/reference/scope/running-a-scope-server). Use the following command to create your Bit Cloud account and your first scope.
```bash
bit login
```Once done, change to your own owner and scope names using this command:
```bash
bit scope rename org.scope-name my-org.my-scope-name --refactor
```This command will refactor your components to use the new owner and scope names.
### Record component and dependency changes
Run `snap` or `tag` to record component changes, and assign a semantic version to them. Bit will version the dependents graph of each modified components.
```bash
bit snap --message 'initial release'
```Snapped components are ready to be built upon 'export' (see next step). The build artifacts will also be stored in the component's new version ('snap').
By default, components are built using bit.cloud's CI platform, Ripple CI. However, you can run the components' build locally by adding the --build flag, or use your own CI platform. [To learn more see Set up CI](https://bit.dev/reference/git/automating-component-releases).
### Export components to a remote scope
Export your staged components from your workspace to their remote scopes. This will make them available to
be used by components outside of your workspace, and from your other projects.```bash
bit export
```Head over to your bit.cloud account to see your components build progress. Once the build process is completed, the components will be available for use in their remote scopes. 🎉🎉🎉
## Contributors
Bit is entirely built with Bit and you can find all its components on [Bit Cloud](https://bit.cloud/teambit/~scopes).
Your contribution, no matter how big or small, is much appreciated. Before contributing, please read the [code of conduct](CODE_OF_CONDUCT.md).
See [Contributing](CONTRIBUTING.md).
## License
[Apache License, Version 2.0](https://github.com/teambit/bit/blob/master/LICENSE)