All Projects → wclr → yall

wclr / yall

Licence: other
Yarn/npm for monorepos

Programming Languages

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

Projects that are alternatives of or similar to yall

introduction-nodejs
Introduction to NodeJS
Stars: ✭ 13 (-51.85%)
Mutual labels:  yarn, monorepo
Next Express Monorepo Starter
NextJS, Express and Now as Microservices with Yarn & Lerna Workspaces
Stars: ✭ 50 (+85.19%)
Mutual labels:  yarn, monorepo
React Workspaces Playground
⚛️ 🐈 Zero Config Create-React-App Monorepos with Yarn Workspaces, Lerna and React Storybook.
Stars: ✭ 658 (+2337.04%)
Mutual labels:  yarn, monorepo
Webclient
Monorepo hosting the proton web clients
Stars: ✭ 3,079 (+11303.7%)
Mutual labels:  yarn, monorepo
Flow Mono Cli
A command line interface that aims to solve a few issues while working with flow typed codebases in a mono-repo.
Stars: ✭ 84 (+211.11%)
Mutual labels:  yarn, monorepo
Graphql Starter
💥 Monorepo template (seed project) pre-configured with GraphQL API, PostgreSQL, React, Relay, and Material UI.
Stars: ✭ 3,377 (+12407.41%)
Mutual labels:  yarn, monorepo
Oao
A Yarn-based, opinionated monorepo management tool
Stars: ✭ 796 (+2848.15%)
Mutual labels:  yarn, monorepo
mock-spy-module-import
JavaScript import/require module testing do's and don'ts with Jest
Stars: ✭ 40 (+48.15%)
Mutual labels:  yarn, monorepo
Create React App
Yarn Workspaces Monorepo support for Create-React-App / React-Scripts.
Stars: ✭ 76 (+181.48%)
Mutual labels:  yarn, monorepo
Vitamin Web
Decathlon Design System libraries for web applications
Stars: ✭ 70 (+159.26%)
Mutual labels:  yarn, monorepo
monoreact
📦 React workspaces implementation
Stars: ✭ 13 (-51.85%)
Mutual labels:  yarn, monorepo
Lrnwebcomponents
@lrnwebcomponents Monorepo for NPM based element definitions
Stars: ✭ 166 (+514.81%)
Mutual labels:  yarn, monorepo
monopack
A JavaScript bundler for node.js monorepo-codebased applications.
Stars: ✭ 52 (+92.59%)
Mutual labels:  yarn, monorepo
Syncpack
Manage multiple package.json files, such as in Lerna Monorepos and Yarn/Pnpm Workspaces
Stars: ✭ 356 (+1218.52%)
Mutual labels:  yarn, monorepo
React-Native-Web-TypeScript-Prettier-Boilerplate
A starterkit to work with nextjs, react-native, storybook… all with prettified typescript and in a monorepo
Stars: ✭ 16 (-40.74%)
Mutual labels:  yarn, monorepo
Lerna Yarn Workspaces Example
How to build TypeScript mono-repo project with yarn and lerna
Stars: ✭ 787 (+2814.81%)
Mutual labels:  yarn, monorepo
yarn-workspaces-simple-monorepo
Yarn Workspaces basic monorepo management without Lerna for coding examples
Stars: ✭ 31 (+14.81%)
Mutual labels:  yarn, monorepo
relay-starter-kit
💥 Monorepo template (seed project) pre-configured with GraphQL API, PostgreSQL, React, Relay, Material UI.
Stars: ✭ 3,513 (+12911.11%)
Mutual labels:  yarn, monorepo
Eslint Plugin Monorepo
ESLint Plugin for monorepos
Stars: ✭ 56 (+107.41%)
Mutual labels:  yarn, monorepo
Yerna
A Lerna-like tool for managing Javascript monorepos using Yarn
Stars: ✭ 140 (+418.52%)
Mutual labels:  yarn, monorepo

Yall

Yarn workflow for monorepos (projects with multiple apps/packages within).

Why

Because I didn't check yet how well workspaces can work out (I see some issues with them). And there is need in good tool that would support container based dev workflow, including watching and running efficient installations in multiple nested locations.

What

  • Yall is like yarn/npm for multiple folders with package.json/yarn.lock.
  • It looks up for folders with package.json/yarn.lock in the project tree and runs there given command (by default in sequence, but may also concurrenlty).
  • Can help to handle yarn commands running concurrently.
  • It can watch manifest/lock files and run commands automatically on change, this is useful in container based scenarios.
  • It can "keep state" and run installations only when lock files change (useful when you use --force installcations).

Install

npm (scoped) Build Status

  npm i @whitecolor/yall -g

Work in progress. It is a pre-release.

Usage

yall [yarn|npm command] [yarn|npm flags] [yall flags]

Additional yall's option flags:

  • concurrency (con) - max count of tasks to run in parallel, by default disabled (value is 1)
  • fail-fast - interupt process as soon as when the first error occures (by default process is not interupted if error happend in one of the folders, but when all tasks finished it exits with error code)
  • folders - folders where to run (including nested), relative to cwd, wilcard not supported
  • force-local - re-adds local (file: or link: ) dependencies.
  • force-local - re-adds remote (github:, git+ssh:, etc ) dependencies.
  • dot-folders - include (hidden) folders starting with dot
  • exclude-folders - folders where not to run (including nested)
  • include-folders - additional folders to include (for example: explit dot folders).
  • here - will run only in current folder, if folders specified will run in those folders, but without nested
  • in - shortcut for --include-folders [folder] plus --here
  • link-files - create symlinks for file: dependencies (will not touch yalc dependencies)
  • npm - run npm command, alternativly to yarn
  • clean-up - will clean-up/remove node_modules before command run
  • lock - will create .yall.lock file (or file with specified name) while running commands and remove it after everything is done.
  • watch - watch mode, will watch for changes of yarn.lock (package.json in case of npm or custom list of files specified) and run command in folder where file changed, it periodically rescans folders for new files
  • watch-content - will check file content for change, not just all change events.
  • separate-cache-folder (sep-cache) - will use separate cache folder for each installation (nested folder), this is string value, that will be used as a seed to get immutable unique path of cache folder (yarn-cache-folder/uniqu-hash).
  • debug - some additional debug output

Licence

WTF.

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].