-
-
Notifications
You must be signed in to change notification settings - Fork 164
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* First pass. * Update readme. * Fix icons. * Add ts line. * Fixes. * Bump versions.
- Loading branch information
Showing
27 changed files
with
279 additions
and
103 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
releases: | ||
"@moonrepo/cli": patch | ||
"@moonrepo/core-linux-x64-gnu": patch | ||
"@moonrepo/core-linux-x64-musl": patch | ||
"@moonrepo/core-macos-x64": patch | ||
"@moonrepo/core-windows-x64-msvc": patch | ||
|
||
declined: | ||
- website |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,66 @@ | ||
# moon | ||
|
||
> Currently a work in progress! | ||
moon is a repository *m*anagement, *o*rganization, *o*rchestration, and *n*otification tool for | ||
JavaScript based projects, written in Rust. Many of the concepts within moon are heavily inspired | ||
from Bazel and other popular build systems, but tailored for the JavaScript ecosystem. | ||
|
||
- [Documentation](https://moonrepo.dev) | ||
- [Contributing](./CONTRIBUTING.md) | ||
- [Code of conduct](./CODE_OF_CONDUCT.md) | ||
|
||
## Why use moon? | ||
|
||
Working in the JavaScrip ecosystem can be very involved, especially when it comes to managing a | ||
repository effectively. Which package manager to use? Which Node.js version to use? How to import | ||
node modules? How to build packages? So on and so forth. moon aims to streamline this entire process | ||
and provide a first-class developer experience. | ||
|
||
- **Adopt incrementally** - moon at its core has been designed to be adopted incrementally and is | ||
_not_ an "all at once adoption". Migrate project-by-project, or task-by-task, it's up to you! | ||
- **Avoid scripts soup** - `package.json` scripts can become unwieldy, very quickly. No more | ||
duplicating the same script into every package, or reverse-engineering which root scripts to use. | ||
With moon, all you need to know is the project ID, and a task ID. | ||
- **Ensure correct versions** - Whether it's Node.js or npm, ensure the same version of each tool is | ||
the same across _every_ developer's environment. No more wasted hours of debugging. | ||
- **Automation built-in** - When applicable, moon will automatically install `node_modules`, or sync | ||
package dependencies, or even sync TypeScript project references. | ||
- And the amazing list of features below! | ||
|
||
## Features | ||
|
||
> Not all features are currently supported, view the documentation for an accurate list! | ||
#### Management | ||
|
||
- **Smart hashing** - Collects inputs from multiple sources to ensure builds are deterministic and | ||
reproducible. | ||
- **Remote caching** - Persists builds, hashes, and caches between teammates and CI/CD environments. | ||
- **Integrated toolchain** - Automatically downloads and installs explicit versions of Node.js and | ||
other tools for consistency. | ||
- **Multi-platform** - Runs on common development platforms: Linux, MacOS, and Windows. | ||
|
||
#### Organization | ||
|
||
- **Project graph** - Generates a project graph for dependency and dependent relationships. | ||
- **Project boundaries** - Enforces boundaries to eliminate cycles and reduce indirection. | ||
- **Dependency workspaces** - Works alongside package manager workspaces so that projects have | ||
distinct dependency trees. | ||
- **Ownership metadata** - Declare an owner, maintainers, support channels, and more, for LDAP or | ||
another integration. | ||
|
||
#### Orchestration | ||
|
||
- **Dependency graph** - Generates a dependency graph to increase performance and reduce workloads. | ||
- **Action runner** - Executes actions in parallel and in order using a thread pool and our | ||
dependency graph. | ||
- **Action distribution** - Distributes actions across multiple machines to increase throughput. | ||
- **Incremental builds** - With our smart hashing, only rebuild projects that have been touched | ||
since the last build. | ||
|
||
#### Notification | ||
|
||
- **Flakiness detection** - Reduce flaky builds with automatic retries and passthrough settings. | ||
- **Webhook events** - Receive a webhook for every event in the pipeline. Useful for metrics | ||
gathering. | ||
- **Terminal notifications** - Receives notifications in your chosen terminal when builds are | ||
successful... or are not. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -37,6 +37,7 @@ fileGroups: | |
- 'src' | ||
- 'tests' | ||
- 'scripts' | ||
- '*.config.js' | ||
|
||
# Configured as | ||
tasks: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.