crunchicorn
raw JSON → 0.0.3 verified Fri May 01 auth: no javascript deprecated
crunchicorn (v0.0.3) is an opinionated, zero-config CLI tool that bundles a complete frontend toolchain: ES2015+ transpilation via Babel, module bundling via Rollup, CSS preprocessing with PostCSS/cssnext, JS linting with StandardJS, minification via UglifyJS2 and cssnano, and font loading via Font Magician. Unlike Webpack or Gulp, it requires no config file and outputs a single JS file ready for the browser. The project appears to be in early development (v0.0.3) with a sparse GitHub repo and no recent releases. It is designed as a batteries-included alternative to piecing together multiple tools, but lacks active maintenance and ecosystem adoption.
Common errors
error Error: Cannot find module 'rollup' ↓
cause crunchicorn depends on Rollup but it is not installed. The package assumes global installation of all dependencies or that they are in node_modules.
fix
Run
npm install -g crunchicorn to install globally, or install locally with npm install --save-dev crunchicorn and ensure node_modules/.bin is in PATH. error Error: postcss-cssnext: Cannot find module 'caniuse-db' ↓
cause The deprecated postcss-cssnext plugin requires caniuse-db, which may not be installed or outdated.
fix
Install caniuse-db directly:
npm install caniuse-db or switch to postcss-preset-env. error SyntaxError: Unexpected token import ↓
cause crunchicorn expects ES module syntax but may be running on an older Node version that doesn't support import/export without transpilation.
fix
Use Node.js 12+ or ensure your code is properly transpiled. Actually, crunchicorn should handle this transformation; if it fails, consider upgrading Node or using a more modern bundler.
Warnings
deprecated Package has not been updated since 2017; no support for modern JS features (ES2018+, dynamic import, etc.). ↓
fix Use a modern tool like Vite, esbuild, or webpack with Babel.
breaking crunchicorn bundles CSS directly into the JS output via injected <style> tags, which may break Content Security Policy (CSP) restrictions. ↓
fix Extract CSS separately with a tool like MiniCssExtractPlugin (webpack) or use a build system that outputs separate CSS files.
gotcha No configuration file: all options are limited to CLI flags. Users cannot customize Babel presets, PostCSS plugins, or linting rules. ↓
fix If customization is needed, switch to a configurable bundler (e.g., webpack, Vite, or Rollup directly).
gotcha crunchicorn uses StandardJS for linting by default, which imposes a strict coding style (no semicolons, etc.) that may conflict with project conventions. ↓
fix Disable linting with --no-lint flag, or use a linting tool like ESLint separately.
deprecated The underlying dependency postcss-cssnext is deprecated; it has been replaced by postcss-preset-env. ↓
fix Use a modern PostCSS setup with postcss-preset-env or similar.
Install
npm install crunchicorn yarn add crunchicorn pnpm add crunchicorn Quickstart
echo '// src/app.js
import { greet } from "./greet.js";
import "./style.css";
console.log(greet("crunchicorn"));' > src/app.js
echo '// src/greet.js
export function greet(name) { return `Hello, ${name}!`; }' > src/greet.js
echo '/* src/style.css */
body { background: #f0f0f0; }' > src/style.css
npx crunchicorn src/app.js out/bundle.js
node -e "console.log(require('fs').readFileSync('out/bundle.js','utf8'));"