{"id":16853,"library":"minee","title":"Minee: Earth Engine Module Bundler","description":"Minee is a command-line interface (CLI) tool specifically designed to bundle modules for Google Earth Engine. It addresses the challenge of managing multiple script dependencies within Earth Engine by consolidating them into a single, compact JavaScript file. This process significantly reduces import times and file sizes, improving performance when working with complex Earth Engine projects. The current stable version is `0.0.9`, with a release cadence that has seen several minor updates in quick succession, indicating active development and responsiveness to bug fixes. A key differentiator is its specialized focus on the Earth Engine ecosystem, handling its specific module resolution requirements. It offers options for minification, custom output paths, and configuration via a `.minee.json` file, allowing developers to streamline their Earth Engine development workflow. It primarily functions as a CLI tool, without an exposed programmatic API for direct JavaScript integration.","status":"active","version":"0.0.9","language":"javascript","source_language":"en","source_url":"git://github.com/aazuspan/minee","tags":["javascript","cli","earth-engine","module","bundler","minifier"],"install":[{"cmd":"npm install minee","lang":"bash","label":"npm"},{"cmd":"yarn add minee","lang":"bash","label":"yarn"},{"cmd":"pnpm add minee","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Used for parsing JSON with comments, specifically for configuration files, updated in v0.0.7 to 1.0.2 for security/fixes.","package":"json5"},{"reason":"Used for parsing JavaScript code during the bundling process, added in v0.0.6 to replace @babel/core.","package":"@babel/parser"}],"imports":[{"note":"Minee is primarily a Command Line Interface (CLI) tool. It is installed globally and invoked via the 'minee' command in the terminal. There is no documented programmatic JavaScript API for direct import or require calls.","wrong":"import minee from 'minee'","symbol":"minee CLI","correct":"npm install -g minee"}],"quickstart":{"code":"# First, install minee globally:\nnpm install -g minee\n\n# Ensure you have authenticated with Earth Engine Git repositories if you haven't already:\n# Go to https://earthengine.googlesource.com/new-password and follow instructions to set up ~/.gitcookies.\n\n# Example: Bundle an Earth Engine module and save it to a 'bundled' directory,\n# keeping original variable names for easier debugging.\nminee --entry=users/aazuspan/geeSharp:geeSharp --dest=./bundled/geeSharp.min.js --keep-names\n\n# Alternatively, use a configuration file (.minee.json):\n# Create a file named .minee.json in your project root:\n# {\n#   \"entry\": \"users/aazuspan/geeSharp:geeSharp\",\n#   \"dest\": \"./bundled/geeSharp.min.js\",\n#   \"keepNames\": true\n# }\n# Then run minee without arguments:\nminee","lang":"bash","description":"Demonstrates global installation, the critical authentication step for Earth Engine, and basic CLI usage with options, including an example of configuration file usage."},"warnings":[{"fix":"Follow the authentication steps at https://earthengine.googlesource.com/new-password to ensure `~/.gitcookies` is correctly configured.","message":"Before using minee to bundle modules from Earth Engine Git repositories, you must authenticate your machine with Earth Engine's Git service. This involves generating a password and storing credentials in `~/.gitcookies` via https://earthengine.googlesource.com/new-password.","severity":"gotcha","affected_versions":">=0.0.1"},{"fix":"For versions >=0.0.6, always use `--entry` to specify the entry path (e.g., `minee --entry=...`). If using an older version, provide the entry path directly after the command without the flag.","message":"In version 0.0.6, the `--entry` argument for specifying the module entry path was changed from a required positional argument to an optional named argument. Earlier versions would expect it without a flag.","severity":"breaking","affected_versions":"<0.0.6"},{"fix":"Update to `minee` version 0.0.8 or newer to resolve issues with the `--dest` path. Always verify the output file location and name after bundling.","message":"Older versions (pre-0.0.8) had a bug where the `--dest` path could be incorrectly handled, leading to bundled files not being written to the expected location or having incorrect names.","severity":"gotcha","affected_versions":"<0.0.8"}],"env_vars":null,"last_verified":"2026-04-22T00:00:00.000Z","next_check":"2026-07-21T00:00:00.000Z","problems":[{"fix":"Re-authenticate by visiting https://earthengine.googlesource.com/new-password and following the instructions to set up your `.gitcookies` file correctly.","cause":"Improper or missing authentication with Earth Engine Git repositories. The `~/.gitcookies` file may be missing, corrupted, or contain incorrect credentials.","error":"error: git-credential-gcloud.sh: exit status 128"},{"fix":"Ensure `minee` is updated to version 0.0.8 or newer. Explicitly specify the `--dest` option, or ensure your `.minee.json` file has a valid `dest` property.","cause":"This error or similar `TypeError` related to `dest` might occur in versions prior to 0.0.8 due to a bug in default destination path handling.","error":"Error: Cannot read properties of undefined (reading 'dest')"},{"fix":"Update `minee` to version 0.0.7 or newer to fix the module caching issue. Clear any local caches if the problem persists (though `minee` handles its own caching internally for repositories).","cause":"A module caching bug in versions prior to 0.0.7 could lead to incomplete bundles, where submodules were not correctly included.","error":"Bundled module appears empty or is missing submodules."}],"ecosystem":"npm","meta_description":null}