Meteor is an ultra-simple full-stack JavaScript framework for building modern web and mobile applications. This monorepo contains the Meteor CLI tool (`meteor`), the build system (isobuild, Rspack integration), core runtime packages (reactive data via DDP, MongoDB integration, accounts, Blaze templating, modules, bundling), and a rich ecosystem of OAuth providers, testing infrastructure, and developer tools (ESLint plugin, Babel preset, installer). The codebase is organized as a monorepo with `tools/` for the CLI and build system, `packages/` for framework packages, and `npm-packages/` for standalone npm packages. It demonstrates a real-time data synchronization pattern using DDP (Distributed Data Protocol), a custom constraint solver for package dependency resolution, and a compiler plugin system for transpilation. Despite being a well-established framework with extensive testing, the codebase shows signs of technical drift: deprecated packages remain in-tree, there is a dual sync/async API surface due to ongoing migration from Fibers to async/await, and the build system is transitioning from a legacy compiler to Rspack.
pnpm-patch-i is a CLI tool that enhances the `pnpm patch` workflow by providing an interactive, user-friendly experience. It wraps pnpm's native patch command, placing the edit directory locally under `node_modules/.patch-edits/` with a human-readable name, automatically opening the editor, and waiting for user confirmation before committing the patch. The tool also supports applying patches directly from a source directory, with optional build and pack steps, and intelligently resolves `workspace:` and `catalog:` dependency specifiers from the source package's `pnpm-workspace.yaml`. The codebase is a single-module TypeScript application using `cac` for CLI parsing, `execa` for running pnpm commands, and `prompts` for user interaction. It is well-structured, actively maintained, and demonstrates solid engineering practices with clean async/await patterns and proper error handling.
This repository provides a regularly updated list of all public npm package names (including scoped packages) as a large JSON array. The primary artifact is `names.json`, which is versioned with Git LFS and updated daily via a scheduled GitHub Actions workflow. The core logic resides in `script/build.js`, which fetches normalized repository data from the `all-the-package-repos` npm package, extracts package names, filters out purely numeric names, and writes the result as a pretty-printed JSON array. The package exposes a Node.js entry point (`require('all-the-package-names')`) returning the array, and a CLI command that outputs newline-delimited names. Tests verify the array structure, size, and exclusion of numeric names. While the codebase is minimal and straightforward, it is professionally maintained with CI/CD, automated releases, and LFS support for large data. It serves as a dependency for many npm ecosystem tools that need offline name lookups or filtering.
Yarn v1 (Classic) is a Node.js package manager CLI tool that handles dependency resolution, installation, and locking for JavaScript projects. The codebase implements a monolithic architecture with modular components for package resolution, fetching, linking, and reporting. Entry points include bin/yarn.js which routes through src/cli/index.js to command implementations in src/cli/commands/. Primary data flows involve parsing package.json, resolving dependencies through the resolver hierarchy, generating yarn.lock files, and installing packages into node_modules with hoisting logic. External dependencies include npm/yarn registries, git repositories, and offline mirrors for caching. This repository is in maintenance mode per the README - new features are developed in yarnpkg/berry (Yarn 2.x/3.x). The codebase demonstrates solid engineering with extensive test coverage (Jest/Jasmine), Flow type annotations, and well-defined patterns (Resolver, Fetcher, Reporter). However, it uses legacy tooling (Webpack 2, Babel 6, Flow 0.66) and supports EOL Node versions. The dependency management logic is complex and production-tested across millions of projects, making it genuinely reusable despite its age.
Fireproof is a local-first, real-time document database with CRDT-based conflict resolution, end-to-end encryption, and multi-platform support (browser, Node.js, Deno, Cloudflare Workers). The monorepo contains the core database engine (`@fireproof/core`), a cloud sync backend (Hono + Durable Objects), a dashboard web application for tenant/ledger management, a CLI tool for build and DevOps tasks, and a React hooks library (`use-fireproof`). The architecture is modular with clear separation between storage gateways (IndexedDB, filesystem, memory, cloud), key management (KeyBag with fingerprinting), device identity (X.509-like PKI), and protocol layers (WebSocket/HTTP message dispatch). The codebase exhibits strong engineering practices including extensive TypeScript usage, comprehensive testing (though some tests are skipped or known to fail), and reusable patterns like the Gateway interceptor, Result type, and Evento command pipeline. However, complexity is high due to multiple runtime targets and active refactoring between versions, and there are known critical bugs (e.g., remote sync not triggering subscriptions in React hooks).
npkill is a TypeScript CLI/TUI application that scans filesystems to find node_modules (and other ecosystem build/dependency directories) consuming disk space, then interactively or programmatically deletes them. The core engine (Npkill class) exposes RxJS observable streams for scanning, size calculation, newest-file detection, deletion, and logging, with a worker_threads-based parallel directory traversal. The CLI layer adds a raw-mode interactive terminal UI with cursor navigation, multi-select deletion, search filtering, JSON/NDJSON output modes, --dry-run, .npkillrc config file support, and user-defined profiles. It ships both as a bin executable and as a programmatic Node library per API.md.
This repository is a curated list of npm resources and tips, organized into sections such as Articles, Tools, Packages, Clients, Tips, FAQ, Community, Documentation, Support, and Related. It serves as a reference for developers seeking npm-related tools, packages, and best practices. The maintenance is driven by community contributions via pull requests, which are reviewed according to the contributing guidelines. While there is no automated data processing, the repository functions as a static dataset of npm resources that is updated manually.