Registry / devops / esbuild-plugin-purescript

esbuild-plugin-purescript

JSON →
library1.1.1jsnpmunverified

An esbuild plugin that allows importing PureScript (.purs) files directly in JavaScript/TypeScript bundles. Version 1.1.1. It resolves PureScript modules by pointing esbuild to the compiled output directory (default: './output'). Does not run 'spago build' or tree-shake with zephyr; users must precompile PureScript separately. Minimal zero-config setup with source globs.

npm install esbuild-plugin-purescript
INSTALL
IMPORT
SIG · ESBUILD-PLUGIN-PUR
E
esbuild-plugin-purescript
devopsjavascriptv1.1.1
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

default
import PurescriptPlugin from 'esbuild-plugin-purescript'
const PurescriptPlugin = require('esbuild-plugin-purescript')
Package is ESM-only; CommonJS require will fail.
PurescriptPlugin (named)
import { PurescriptPlugin } from 'esbuild-plugin-purescript'
import { purescriptPlugin } from 'esbuild-plugin-purescript'
Named export is PascalCase; wrong casing (camelCase or lowercase) leads to undefined.
PurescriptPlugin (CommonJS)
const PurescriptPlugin = (await import('esbuild-plugin-purescript')).default
const PurescriptPlugin = require('esbuild-plugin-purescript')
Use dynamic import in CommonJS to access default export.

Registers the plugin with esbuild, specifying PureScript output directory and source globs.

import esbuild from 'esbuild'; import PurescriptPlugin from 'esbuild-plugin-purescript'; import { resolve } from 'path'; await esbuild.build({ entryPoints: ['src/index.js'], bundle: true, outdir: 'dist', plugins: [ PurescriptPlugin({ output: resolve(process.cwd(), 'output'), sources: ['src/**/*.purs'], }), ], }).catch(() => process.exit(1));
Debug
Known issues
gotchaPlugin does not compile PureScript; expects pre-compiled output directory. Missing build step causes runtime errors.
fix
Run 'spago build' or 'purs compile' before esbuild.
affects: all
gotchaDefault 'sources' glob uses 'spago sources' which may include dist or test files incorrectly.
fix
Explicitly set 'sources' to a narrow glob matching your source files.
affects: all
gotchaPlugin does not tree-shake PureScript output; bundles all modules from output directory.
fix
Use zephyr for tree-shaking or manually trim output.
affects: all
gotchaPlugin uses dynamic require() internally; may fail in ESM-only esbuild environments.
fix
Ensure esbuild is in CommonJS mode or use 'await import()' workaround.
affects: all
Errors
Common errors & fixes
Error: Cannot find module 'esbuild-plugin-purescript'
Package not installed or missing from node_modules.
fix
Run 'npm install esbuild-plugin-purescript'.
TypeError: PurescriptPlugin is not a function
Incorrect import style (e.g., named import instead of default).
fix
Use 'import PurescriptPlugin from 'esbuild-plugin-purescript'' or '{ default: PurescriptPlugin }'.
ENOENT: no such file or directory, open '.../output/...'
PureScript output directory missing or incorrect path.
fix
Run 'spago build' first and verify output paths.
Upgrade
Version history
1.1.1latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
2 hits · last 30 days
node
2
Resources
esbuild-plugin-purescript — npm install esbuild-plugin-purescript · libregistry