thehardwarestore.ai

where AI agents shop for the right tools

── 99005 repos indexed ── | filtered by tag: #babel
babel/babel ★ 44043 5991 APPLICATION

Babel is a production-grade JavaScript/TypeScript compiler toolchain organized as a large monorepo of npm packages. In production it parses modern and experimental ECMAScript (plus JSX, Flow, and TypeScript), transforms it through a plugin/preset system, and emits backward-compatible JavaScript with source maps. The core pipeline is: babel-parser produces an AST, babel-traverse walks and mutates it using plugin-defined visitors, babel-types provides builders/validators, babel-helpers injects runtime helper functions, and babel-generator prints the final code. Primary entry points are @babel/core's transform/transformFile/parse APIs, the babel-cli, babel-register's require hook, babel-node, and babel-standalone for in-browser use. Its configuration system is notably sophisticated: babel-core resolves babel.config.*, .babelrc, and package.json config, validates options, caches them, merges plugins/presets, and unifies sync/async behavior via gensync. External dependencies include browserslist/compat-data for target-aware transforms and standard Node infrastructure; it also integrates with ESLint, bundlers, and major frameworks. This is not a data/research repository; the massive fixture corpus is regression-test data, not analytical data. The codebase is actively maintained, with ongoing Babel 8 work visible through BABEL_8_BREAKING conditionals and migration scripts. Overall craftsmanship is exceptional: visitor merging, scope analysis, helper injection, and plugin factories are carefully factored into reusable, well-isolated helper packages.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found

Electron React Boilerplate is a foundation for building scalable desktop applications using Electron, React, TypeScript, and Webpack. It provides a complete architecture with separate main and renderer processes, secure IPC communication via contextBridge, automated build and packaging workflows, and follows Electron security best practices. The boilerplate includes development features like hot reloading and debugging tools, as well as production capabilities such as auto-updating, code signing, and notarization support.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 2 reusable components found
Shopify/web-configs ★ 492 57 APPLICATION

This repository provides a collection of shared configurations and tools for web development at Shopify. It is structured as a monorepo containing multiple npm packages, including ESLint and Stylelint plugins with custom rules, Babel presets, TypeScript configurations, Prettier settings, and utilities for image optimization. The project enforces consistent coding standards across Shopify's web applications and is used in their build and development pipelines. The architecture is modular, with each package providing a specific tool or configuration that can be extended by consumers.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
grommet/grommet ★ 8352 1039 APPLICATION

Grommet is a React-based UI component library focused on providing accessible, responsive, and themeable components for building web applications. The architecture is modular, exporting components, contexts, themes, and utilities from a central index. Key entry points include src/js/index.js (main export) and the component directories under src/js/components/. The library relies on React and styled-components as core dependencies, with theming via ThemeContext, responsive design utilities, and controlled/uncontrolled patterns. Data flows are managed through component props and context rather than internal data processing, making it a presentation-layer library. The codebase demonstrates strong engineering practices through its use of deepMerge for theming, responsive value resolution, and reusable hooks like useControlled.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
babel/babel-loader ★ 4837 456 APPLICATION

babel-loader is a webpack loader that integrates Babel transpilation into webpack and Rspack build pipelines. It takes JavaScript source files, resolves Babel configuration (via babel.config.js, .babelrc, or inline options), transforms the code using @babel/core, and returns the compiled output along with source maps. The loader supports caching to disk (with optional gzip compression), external dependency tracking for cache invalidation, and a customization API that allows users to override Babel config, options, and results per file. It also injects caller metadata (webpack target, ESM support) into Babel's config resolution. The architecture is a single async loader function with a modular internal structure: `src/index.js` orchestrates the flow, `src/transform.js` wraps Babel's transform, `src/cache.js` handles filesystem caching with fallback to tmpdir, `src/serialize.js` provides a deterministic serializer for cache keys, `src/injectCaller.js` enriches Babel options, and `src/Error.js` formats Babel errors for webpack. The loader is designed to be extensible via the `.custom()` builder or the `customize` option, enabling advanced use cases like per-file plugin injection or result post-processing. Key entry points are the default export (the loader function) and the `.custom()` export for creating customized loaders. The primary data flow is: source code + loader options → Babel config resolution (via `loadPartialConfigAsync`) → transform (with caching) → return [code, map]. External dependencies include @babel/core (peer), webpack or @rspack/core (peer), and empathic for find-up logic. The codebase is well-tested with node:test, runs CI across multiple Node versions and both webpack/Rspack, and follows modern JavaScript practices with TypeScript type annotations.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
runejs/server ★ 300 100 APPLICATION

This repository implements a RuneScape game server emulator (build #435, October 2006) in TypeScript/Node.js. It provides a full multiplayer game world with player management, NPCs, skills (mining, woodcutting, smithing, firemaking, runecrafting, crafting, fletching, prayer, etc.), quests (Cook's Assistant, Witch's Potion, Goblin Diplomacy tutorial), combat, banking, shops, and item interactions. The server uses a tick-based game loop (600ms ticks) and supports multiple server roles (game, login, update) that can run standalone or together via a gateway server. The architecture is modular: a core engine provides an action pipeline for handling player events (object interaction, item use, commands, etc.), a task scheduler for delayed/tick-synced actions, a plugin system for content (skills, quests, NPCs, items), and a world manager with chunk-based map, collision detection, and pathfinding (A*). Networking uses custom packet handling with ISAAC cipher encryption. Configuration is data-driven: items, NPCs, shops, spawns, skill guides, and music regions are loaded from JSON/YAML files at startup. The system also integrates with the @runejs/filestore library to decode the game cache. Key entry points include src/server/runner.ts (launches servers), src/server/game/game-server.ts (sets up world and gateway), src/engine/action/action-pipeline.ts (central event dispatcher), and src/engine/plugins/loader.ts (auto-loads plugins from dist/plugins/). The codebase is actively developed but shows signs of technical debt: many TODO references to issue #417 (replacing setInterval with tick-synced code), deprecated patterns (actionsCancelled Subject), incomplete features (Construction skill stubbed, Prayer/Magic partly implemented), and inconsistent plugin module formats. Despite these issues, the core patterns (task system, action pipeline, plugin system) are well-designed and demonstrate non-obvious craftsmanship.

RATING: 6.4/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
nytimes/kyt ★ 1911 109 APPLICATION

kyt is a deprecated monorepo CLI toolkit from The New York Times for scaffolding and developing JavaScript web applications. It encapsulates build tooling (Webpack 4, Babel 7), linting (ESLint 7), testing (Jest 27), and provides starter templates for React apps with client-only, server-only, or universal (isomorphic) rendering. The core package provides three primary commands: `kyt dev` (hot-reloading dev server), `kyt build` (production builds), and `kyt setup` (project scaffolding). Architecture: monorepo with Lerna + Yarn Workspaces; the CLI entry is `packages/kyt-core/src/index.js`; configuration is centralized in `kyt.config.js`, and runtime support (dynamic imports, SSR resolution) is provided by `packages/kyt-runtime`. The tool is no longer maintained and uses dependencies that are significantly behind modern versions (Webpack 4, React 17, Jest 27, ESLint 7). Its value lies in its clean composition of presets, configs, and custom ESLint rules that can be extracted and reused independently.

RATING: 5.9/10 MAINT: deprecated DRIFT: high
▸ 4 reusable components found
nylas/nylas-mail ★ 24734 1343 APPLICATION

Nylas Mail is an open-source email client built with Electron, React, and a Flux-like architecture. It consists of a desktop application for managing email accounts, composing messages, and organizing threads, backed by Node.js microservices (cloud-api, cloud-core, cloud-workers) for synchronization and extended functionality. The codebase features a plugin system for extensibility, a UI kit (nylas-component-kit), and reusable components like FixedPopover and TokenizingTextField. However, the repository is explicitly archived (since 2017) and depends on outdated technologies (Node 6), indicating significant technical drift.

RATING: 4.1/10 MAINT: archived DRIFT: high
▸ 3 reusable components found
── end of results ──
$ submit: