Skip to content

samapriya/gee_asset_manager_addon

Repository files navigation

Google Earth Engine Batch Asset Manager with Addons

Documentation PyPI License CI geeadd

Powerful CLI tools for batch asset management in Google Earth Engine

DocumentationInstallationQuick StartFeatures


Overview

geeadd (Google Earth Engine Asset Manager with Addons) is a comprehensive command-line tool that extends the official Earth Engine CLI with powerful batch operations and asset management capabilities. Whether you're managing quotas, organizing assets, or performing bulk operations, geeadd streamlines your Earth Engine workflows.

main

Features

  • Project Management: Monitor quotas, track enabled projects, generate interactive dashboards
  • Asset Operations: Batch copy, move, delete, and manage permissions recursively
  • Task Management: List, monitor, and cancel Earth Engine tasks efficiently
  • Utilities: Search catalogs, extract app scripts, generate reports, create color palettes
  • Modern CLI: Organized command groups with intuitive syntax
  • Performance: Multi-threaded operations for handling large asset collections

Installation

Requirements

  • Python 3.10+
  • Earth Engine Python API (authenticated)

Install via pip

pip install geeadd

Install from source

git clone https://github.com/samapriya/gee_asset_manager_addon.git
cd gee_asset_manager_addon
pip install .

Verify installation

geeadd --version

Quick Start

Authenticate with Earth Engine

earthengine authenticate

Check your quota

geeadd projects quota

List your enabled projects

geeadd projects enabled

Copy assets recursively

geeadd assets copy --initial "users/me/folder" --final "users/me/backup"

Monitor tasks

geeadd tasks list

Command Structure

Version 2.0.0 introduces organized command groups for better discoverability:

geeadd
├── projects     # Project and quota management
│   ├── quota
│   ├── enabled
│   └── dashboard
├── assets       # Asset operations
│   ├── info
│   ├── copy
│   ├── move
│   ├── delete
│   ├── delete-meta
│   ├── access
│   └── size
├── tasks        # Task management
│   ├── list
│   └── cancel
└── utils        # Utility commands
    ├── search
    ├── app2script
    ├── report
    └── palette

🔄 Migration from v1.x

If you're upgrading from version 1.2.1 or earlier, commands have been reorganized into logical groups. See the migration guide for details.

Example changes:

  • geeadd quotageeadd projects quota
  • geeadd copygeeadd assets copy
  • geeadd tasksgeeadd tasks list

Documentation

Comprehensive documentation is available at geeadd.geetools.xyz

The documentation includes:

  • Detailed command references
  • Real-world workflow examples
  • Best practices and troubleshooting
  • Interactive examples

Common Use Cases

Monitor project storage

# Generate an interactive dashboard
geeadd projects dashboard --outdir ./dashboard.html

# Check specific project quota
geeadd projects quota --project "projects/my-project"

Batch asset management

# Copy entire folder structure
geeadd assets copy --initial "users/me/production" --final "users/me/archive"

# Share assets with collaborators
geeadd assets access --asset "users/me/shared" --user "colleague@email.com" --role reader

# Calculate collection size
geeadd assets size "users/me/collection"

Task monitoring

# View task summary
geeadd tasks list

# Monitor running tasks
geeadd tasks list --state RUNNING

# Cancel stuck tasks
geeadd tasks cancel pending

Utilities

# Search Earth Engine catalog
geeadd utils search --keywords "Sentinel-2"

# Extract script from Earth Engine App
geeadd utils app2script --url "https://username.users.earthengine.app/view/myapp"

# Generate color palette
geeadd utils palette --name Blues --classes 5 --copy

Contributing

Contributions are welcome! Please feel free to submit issues, feature requests, or pull requests.

Full Documentation

For complete documentation, examples, and guides, visit:

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Support

If you find this tool useful, consider:


Made with ❤️ by Samapriya Roy

Changelog

Updates 12/01/2025

  • Replaced copyright headers with SPDX identifiers
  • Improved type annotations across multiple modules
  • Added or expanded docstrings for better clarity and maintainability
  • Updated batch_copy, batch_delete, batch_mover, acl_changer, color_brewer, and app2script
  • Enhanced error handling and logging
  • Refined concurrency logic
  • Removed the unused concurrent_ee_assets.py file
  • Updated the GitHub Actions workflow for improved test and installation steps
  • Applied minor bug fixes and general code quality improvements

About

Google Earth Engine Asset Manager with Addons

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

No packages published

Contributors 5