awesome-repositories.com
Blog
awesome-repositories.com

Entdecke die besten Open-Source-Repositories mit KI-gestützter Suche.

EntdeckenKuratierte SuchenOpen-Source-AlternativenSelf-hosted SoftwareBlogSitemap
ProjektÜber unsRanking-MethodikPresseMCP-Server
RechtlichesDatenschutzAGB
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
lerna avatar

lerna/lerna

0
View on GitHub↗
36,066 Stars·2,272 Forks·TypeScript·MIT·9 Aufrufelerna.js.org↗

Lerna

Lerna is a monorepo management tool, build orchestrator, and package publisher for JavaScript and TypeScript projects. It enables the management of multiple packages within a single shared repository, providing utilities for workspace organization and the coordinated publishing of packages to a registry.

The tool distinguishes itself through dependency-aware task orchestration and automated version management. It uses topological sorting to sequence tasks and utilizes content-hash caching to skip redundant executions when input files remain unchanged. Versioning is automated by parsing standardized commit messages to calculate semantic version numbers and generate release notes.

The system covers a broad range of workspace capabilities, including parallel task execution, hoisted dependency resolution to reduce disk usage, and symlink-based local linking for development. It also provides mechanisms for filtering package scopes using glob patterns or change detection to restrict command execution to specific subsets of the workspace.

Features

  • Monorepo Managers - Provides a comprehensive system for coordinating multiple related JavaScript packages within a single repository.
  • Monorepo Workflow Orchestration - Manages the build, test, and publishing processes for multiple separate packages residing within a single shared repository.
  • Build Orchestrators - Acts as a build orchestrator that manages parallel execution and sequencing for multi-package projects.
  • Dependency Installers - Installs and links dependencies across all project packages while hoisting external libraries.
  • Local Package Linking - Creates symlinks between internal packages to enable local development and testing without requiring an external registry.
  • Task Dependency Linkers - Allows users to specify the execution sequence for tasks to ensure dependent packages are built before successors.
  • Topological Task Sequencing - Determines execution order by analyzing package dependencies to ensure a package builds before its dependents.
  • Workspace Managers - Manages local package linking and shared dependencies across a multi-package workspace.
  • Parallel Execution - Runs scripts across multiple packages using parallel execution and caching to avoid repeating work.
  • Symlink-Based Dependency Management - Connects internal packages using filesystem symbolic links to allow local development without publishing to a registry.
  • Automated Release Management - Updates version numbers across packages using automated changelogs and commit history to generate project releases.
  • Dependency Hoisting - Reduces disk usage and avoids duplicate installations by hoisting shared external libraries to a single root directory.
  • Commit-Based Versioning Engines - Calculates the next semantic version number by parsing standardized commit messages from version control history.
  • Build Result Caching - Implements content-hash caching to skip redundant executions of build, test, and lint tasks.
  • Monorepo Orchestration - Implements dependency-aware orchestration of build, test, and lint tasks across the entire workspace.
  • Parallel Task Executors - Runs independent scripts across multiple packages simultaneously while respecting dependency constraints.
  • Task Execution Caches - Utilizes content-hash caching to skip redundant task executions when input files remain unchanged.
  • Package Publishing - Provides mechanisms to publish multiple packages to a registry using topological ordering and trusted authentication.
  • Build Configuration - Allows for the definition of standard input and target defaults to unify how packages are compiled, linted, and tested.
  • Execution Scope Filtering - Restricts command execution to specific packages using directory patterns or by identifying changed files.
  • Task Execution Filtering - Restricts command execution to specific subsets of the workspace using glob patterns or git-based change detection.
  • Build Tools and Bundlers - Build system for managing multi-package repositories.
  • Build Tools and Tooling - Build system for managing multi-package repositories.
  • Monorepo Management - Tool for managing multi-package projects.
  • Project Management Tools - Tool for managing multi-package repositories with git and npm.

Star-Verlauf

Star-Verlauf für lerna/lernaStar-Verlauf für lerna/lerna

KI-Suche

Entdecke weitere awesome Repositories

Beschreibe in einfachen Worten, was du brauchst — die KI bewertet tausende kuratierte Open-Source-Projekte nach Relevanz.

Start searching with AI

Open-Source-Alternativen zu Lerna

Ähnliche Open-Source-Projekte, sortiert nach der Anzahl der gemeinsamen Funktionen mit Lerna.
  • nrwl/nxAvatar von nrwl

    nrwl/nx

    28,939Auf GitHub ansehen↗

    This project is a build orchestration engine and development toolkit designed for managing large-scale monorepos. It provides a unified workspace environment that maps project relationships and dependencies, enabling the system to perform intelligent impact analysis and execute only the tasks affected by specific code changes. The system distinguishes itself through a persistent daemon that monitors file changes for near-instant feedback and a content-addressable caching mechanism that stores task outputs to prevent redundant computation across local and remote environments. It further suppor

    TypeScriptangularbuildbuild-system
    Auf GitHub ansehen↗28,939
  • moonrepo/moonAvatar von moonrepo

    moonrepo/moon

    3,687Auf GitHub ansehen↗

    Moon is a monorepo build system and task runner designed to orchestrate complex projects with multiple packages. It functions as a dependency graph orchestrator that executes build targets in topological order and utilizes input hashing to cache results and skip redundant work. The project features a polyglot toolchain manager that automates the installation and versioning of language runtimes and CLI tools to ensure environment consistency. It also includes a plugin framework based on WebAssembly, allowing developers to extend build logic and toolchain behavior using any supported language.

    Rustbuild-systembuild-toolbun
    Auf GitHub ansehen↗3,687
  • npm/cliAvatar von npm

    npm/cli

    9,846Auf GitHub ansehen↗

    This project is a command line interface for managing, installing, and publishing JavaScript packages to a remote registry. It serves as a dependency resolution tool, a software registry publishing client, and a security auditor for Node.js development workflows. The tool distinguishes itself by providing integrated monorepo workspace management and a comprehensive registry authentication client that supports multi-factor authentication. It enables detailed control over the software supply chain through provenance attestations, package signature verification, and the generation of a Software

    JavaScriptjavascriptnodejsnpm
    Auf GitHub ansehen↗9,846
  • yarnpkg/berryAvatar von yarnpkg

    yarnpkg/berry

    8,052Auf GitHub ansehen↗

    Berry is a Node.js package manager, dependency resolution engine, and monorepo workspace manager. It provides the tools necessary for resolving, downloading, and managing dependencies to ensure consistent environments across different development machines, while also serving as a publishing tool for uploading versioned package tarballs to registries. The project is distinguished by its implementation of Plug'n'Play, which resolves dependencies without creating a physical node_modules directory by mapping dependencies directly to the file system. This enables a zero-install development workflo

    TypeScriptjavascriptnodejspackage-manager
    Auf GitHub ansehen↗8,052
Alle 30 Alternativen zu Lerna anzeigen→

Häufig gestellte Fragen

Was macht lerna/lerna?

Lerna is a monorepo management tool, build orchestrator, and package publisher for JavaScript and TypeScript projects. It enables the management of multiple packages within a single shared repository, providing utilities for workspace organization and the coordinated publishing of packages to a registry.

Was sind die Hauptfunktionen von lerna/lerna?

Die Hauptfunktionen von lerna/lerna sind: Monorepo Managers, Monorepo Workflow Orchestration, Build Orchestrators, Dependency Installers, Local Package Linking, Task Dependency Linkers, Topological Task Sequencing, Workspace Managers.

Welche Open-Source-Alternativen gibt es zu lerna/lerna?

Open-Source-Alternativen zu lerna/lerna sind unter anderem: nrwl/nx — This project is a build orchestration engine and development toolkit designed for managing large-scale monorepos. It… moonrepo/moon — Moon is a monorepo build system and task runner designed to orchestrate complex projects with multiple packages. It… npm/cli — This project is a command line interface for managing, installing, and publishing JavaScript packages to a remote… yarnpkg/berry — Berry is a Node.js package manager, dependency resolution engine, and monorepo workspace manager. It provides the… rust-lang/cargo — Cargo is the official build system and package manager for the Rust programming language. It provides a unified… oven-sh/bun — Bun is a high-performance runtime environment designed to execute JavaScript and TypeScript applications with minimal…