CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-swc--core-win32-ia32-msvc

Windows 32-bit IA32 native binary for SWC (Speedy Web Compiler) providing high-performance JavaScript/TypeScript compilation.

Pending
Quality

Pending

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Pending

The risk profile of this skill

Overview
Eval results
Files

index.mddocs/

@swc/core-win32-ia32-msvc

@swc/core-win32-ia32-msvc is a platform-specific binary distribution package that provides the Windows 32-bit IA32 architecture native binaries for SWC (Speedy Web Compiler). This package contains compiled native code that enables high-performance JavaScript and TypeScript compilation on Windows 32-bit systems.

Package Information

  • Package Name: @swc/core-win32-ia32-msvc
  • Package Type: npm
  • Language: Native Binary (compiled from Rust)
  • Architecture: i686-pc-windows-msvc (Windows 32-bit IA32)
  • Installation: Automatically installed as a dependency of @swc/core

Overview

This package is a binary distribution that contains no direct JavaScript API. Instead, it provides the native implementation that powers the SWC compiler functionality through the main @swc/core package. The package is automatically selected and loaded by @swc/core when running on Windows 32-bit IA32 architecture.

Package Contents

The package contains two binary files:

  • swc.win32-ia32-msvc.node: Native Node.js addon that provides the binding interface
  • swc.exe: Standalone command-line executable for SWC operations

Installation and Usage

This package is not intended to be installed directly. It is automatically installed as an optional dependency when installing @swc/core on Windows 32-bit IA32 systems.

# Install the main package (this binary package is included automatically)
npm install @swc/core

Core Integration

The native binaries in this package are automatically loaded by @swc/core to provide the following functionality:

// These APIs are provided by @swc/core using this binary package
import { transform, transformSync, parse, parseSync, minify, minifySync } from '@swc/core';

Capabilities

Native Binary Loading

Provides the native implementation for all SWC operations on Windows 32-bit IA32 architecture.

// The binary is loaded automatically by @swc/core
const bindings = require('./swc.win32-ia32-msvc.node');

Platform Detection

The package is conditionally loaded based on platform and architecture specifications.

{
  "os": ["win32"],
  "cpu": ["ia32"]
}

Node.js Addon Interface

The native addon exports the following low-level binding functions used by @swc/core:

// Low-level binding functions (not for direct use)
interface NativeBindings {
  transform(src: string, isModule: boolean, options: Buffer): TransformOutput;
  transformSync(src: string, isModule: boolean, options: Buffer): TransformOutput;
  transformFile(src: string, isModule: boolean, options: Buffer): Promise<TransformOutput>;
  transformFileSync(src: string, isModule: boolean, options: Buffer): TransformOutput;
  parse(src: string, options: Buffer, filename?: string): Promise<string>;
  parseSync(src: string, options: Buffer, filename?: string): string;
  parseFile(path: string, options: Buffer): Promise<string>;
  parseFileSync(path: string, options: Buffer): string;
  print(programJson: string, options: Buffer): Promise<TransformOutput>;
  printSync(program: string, options: Buffer): TransformOutput;
  minify(code: Buffer, opts: Buffer, isJson: boolean, extras: NapiMinifyExtra): Promise<TransformOutput>;
  minifySync(code: Buffer, opts: Buffer, isJson: boolean, extras: NapiMinifyExtra): TransformOutput;
  bundle(confItems: Buffer): Promise<{ [index: string]: { code: string, map?: string } }>;
  analyze(src: string, options: Buffer): Promise<string>;
  getTargetTriple(): string;
  initCustomTraceSubscriber(traceOutFilePath?: string): void;
  newMangleNameCache(): object;
}

interface TransformOutput {
  code: string;
  map?: string;
  output?: string;
  diagnostics: Array<string>;
}

interface NapiMinifyExtra {
  mangleNameCache?: object;
}

Command Line Executable

The included swc.exe provides direct command-line access to SWC functionality:

# Command-line usage (available when package is installed)
swc input.js -o output.js
swc --help

Target Architecture

This package specifically targets the i686-pc-windows-msvc architecture:

  • Operating System: Windows (win32)
  • Architecture: 32-bit Intel/AMD (ia32)
  • Compiler Target: MSVC (Microsoft Visual C++)

Runtime Requirements

  • Node.js: >= 10
  • Operating System: Windows 32-bit
  • Architecture: IA32 (Intel/AMD 32-bit)

Binary Metadata

The native binding provides metadata about the loaded binary:

// Metadata functions available through the native binding
interface BinaryMetadata {
  getTargetTriple(): string; // Returns "i686-pc-windows-msvc"
}

Integration with @swc/core

This package integrates seamlessly with @swc/core through automatic platform detection:

// @swc/core automatically loads the appropriate binary
import { transform } from '@swc/core';

// The native binary from this package is used transparently
const result = await transform(sourceCode, {
  jsc: {
    parser: {
      syntax: 'typescript',
      tsx: true,
    },
    target: 'es2020',
  },
});

Error Handling

If the native binary cannot be loaded, @swc/core will attempt to fall back to the WebAssembly version (@swc/wasm) if available.

Security and Licensing

  • License: Apache-2.0 AND MIT
  • Source: Compiled from the SWC project's Rust codebase
  • Verification: Distributed through official npm registry with package signing

Related Packages

This package is part of the SWC ecosystem's multi-platform binary distribution:

  • @swc/core: Main package that uses this binary
  • @swc/core-win32-x64-msvc: Windows 64-bit x64 binary
  • @swc/core-linux-x64-gnu: Linux 64-bit x64 binary
  • @swc/core-darwin-x64: macOS 64-bit x64 binary
  • And other platform-specific variants

Support and Documentation

For usage instructions and API documentation, refer to the main SWC documentation at https://swc.rs/docs, as this package provides the underlying native implementation without exposing its own API surface.

docs

index.md

tile.json