asf-search

v12.2.2 safe
3.0
Low Risk

Python wrapper for ASF's SearchAPI

🤖 AI Analysis

Final verdict: SAFE

The package shows minimal signs of potential risk, with only slight concerns regarding metadata and network interactions, which are likely legitimate given the nature of its described functionality.

  • Low risk in all categories except network and metadata
  • Single package from author, possibly indicating newness or lower activity level
Per-check LLM notes
  • Network: The network call to an external API endpoint is likely for legitimate functionality, assuming the package's purpose involves interacting with a remote service.
  • Shell: No shell execution patterns were detected, indicating low risk.
  • Obfuscation: No obfuscation patterns detected, indicating low risk.
  • Credentials: No credential harvesting patterns detected, indicating low risk.
  • Metadata: The author has only one package, which may indicate a new or less active account, but no other red flags are present.

📦 Package Quality Overall: Medium (5.4/10)

○ Low Test Suite 1.0

No test suite detected

  • No test files or test-runner configuration detected
◈ Medium Documentation 7.0

Some documentation present

  • Documentation URL: "Documentation" -> https://docs.asf.alaska.edu/asf_search/basics/
  • Detailed PyPI description (8803 chars)
○ Low Contributing Guide 4.0

No contributing guide or governance files found

  • Development Status classifier >= Beta
◈ Medium Type Annotations 5.0

Partial type annotation coverage

  • 156 type-annotated function signatures detected in source
✦ High Multiple Contributors 10.0

Active multi-contributor project

  • 6 unique contributor(s) across 100 commits in asfadmin/Discovery-asf_search
  • Active community — 5 or more distinct contributors

🔬 Heuristic Checks

Outbound Network Calls score 1.5

Found 1 network call pattern(s)

  • sponse """ response = requests.post(f'https://{CMR_HOST}{CMR_COLLECTIONS_PATH}', data=data)
Code Obfuscation

No obfuscation patterns detected

Shell / Subprocess Execution

No shell execution patterns detected

Credential Harvesting

No credential harvesting patterns detected

Typosquatting

No typosquatting candidates detected

Registered Email Domain

Email domain looks legitimate: alaska.edu

Suspicious Page Links

All external links appear legitimate

Git Repository History

Repository asfadmin/Discovery-asf_search appears legitimate

Maintainer History score 2.0

1 maintainer concern(s) found

  • Author "Alaska Satellite Facility Discovery Team" appears to have only 1 package on PyPI (new or inactive account)
Known CVE Vulnerabilities

No known vulnerabilities found in OSV database.

💡 AI App Starter Prompt

Use this prompt to build a project with asf-search
Create a command-line tool named 'EarthExplorerCLI' that leverages the 'asf-search' Python package to interact with NASA's ASF DAAC Search API. This tool will enable users to search for specific satellite data products based on various criteria such as date range, spatial bounds, and product type. Additionally, it should provide functionalities to download the metadata of the selected datasets and even facilitate the direct download of smaller datasets directly from the command line.

Steps to Develop EarthExplorerCLI:
1. Install the 'asf-search' package using pip.
2. Design the CLI interface with argparse or click library to handle user inputs.
3. Implement functions to query the ASF DAAC Search API using 'asf-search' for datasets matching the provided criteria.
4. Display the search results in a user-friendly format including dataset ID, title, start/end dates, and size.
5. Add an option for users to download the metadata of the selected datasets into a CSV file.
6. Integrate functionality to allow direct download of smaller datasets through the CLI, ensuring proper handling of large files.
7. Include error handling and informative messages for common issues like invalid queries or network errors.
8. Write tests for the CLI using unittest or pytest to ensure robustness.
9. Document the CLI usage, including examples of how to run searches and download data.
10. Package the tool for distribution via PyPI.

Suggested Features:
- Support for filtering datasets by specific sensors (e.g., ALOS, Sentinel-1).
- Option to save search results to a JSON file for later use.
- Progress bar during download to show the status of the file transfer.
- Ability to resume interrupted downloads.
- Integration with cloud storage services like AWS S3 for storing downloaded datasets.

Utilization of 'asf-search':
- Use 'asf_search.search' method to perform searches based on user input.
- Utilize 'asf_search.get_metadata' function to retrieve detailed information about datasets.
- Leverage 'asf_search.download' feature to initiate the downloading process of selected datasets.

💬 Discussion Feed

Leave a comment

No discussion yet. Be the first to share your thoughts!