Metadata-Version: 2.1
Name: spotlite
Version: 0.9.0
Summary: Package to simplify working with Satellogic APIs
Home-page: https://github.com/mcarmich146/spotlite
Author: Mark
Author-email: your.email@example.com
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Requires-Python: >=3.11.5
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: affine ==2.4.0
Requires-Dist: attrs ==23.1.0
Requires-Dist: branca ==0.6.0
Requires-Dist: cachetools ==5.3.2
Requires-Dist: certifi ==2023.7.22
Requires-Dist: charset-normalizer ==3.3.2
Requires-Dist: click ==8.1.7
Requires-Dist: click-plugins ==1.1.1
Requires-Dist: cligj ==0.7.2
Requires-Dist: contourpy ==1.1.1
Requires-Dist: cycler ==0.12.1
Requires-Dist: fiona ==1.9.5
Requires-Dist: folium ==0.14.0
Requires-Dist: fonttools ==4.43.1
Requires-Dist: geographiclib ==2.0
Requires-Dist: geojson ==3.0.1
Requires-Dist: geopandas ==0.14.0
Requires-Dist: geopy ==2.4.0
Requires-Dist: h11 ==0.14.0
Requires-Dist: httplib2 ==0.22.0
Requires-Dist: idna ==3.4
Requires-Dist: imageio ==2.33.1
Requires-Dist: jinja2 ==3.1.3
Requires-Dist: jsonschema ==4.19.2
Requires-Dist: jsonschema-specifications ==2023.7.1
Requires-Dist: kiwisolver ==1.4.5
Requires-Dist: MarkupSafe ==2.1.3
Requires-Dist: matplotlib ==3.8.1
Requires-Dist: numpy ==1.26.1
Requires-Dist: oauthlib ==3.2.2
Requires-Dist: outcome ==1.3.0.post0
Requires-Dist: packaging ==23.2
Requires-Dist: pandas ==2.1.2
Requires-Dist: pillow ==10.2.0
Requires-Dist: plotly ==5.18.0
Requires-Dist: protobuf ==4.25.0
Requires-Dist: pyasn1 ==0.5.0
Requires-Dist: pyasn1-modules ==0.3.0
Requires-Dist: pyparsing ==3.1.1
Requires-Dist: pyproj ==3.6.1
Requires-Dist: PySocks ==1.7.1
Requires-Dist: pystac ==1.9.0
Requires-Dist: pystac-client ==0.7.5
Requires-Dist: python-dateutil ==2.8.2
Requires-Dist: pytz ==2023.3.post1
Requires-Dist: rasterio ==1.3.9
Requires-Dist: referencing ==0.30.2
Requires-Dist: requests ==2.31.0
Requires-Dist: requests-oauthlib ==1.3.1
Requires-Dist: rpds-py ==0.10.6
Requires-Dist: rsa ==4.9
Requires-Dist: schedule ==1.2.1
Requires-Dist: selenium ==4.15.1
Requires-Dist: shapely ==2.0.2
Requires-Dist: six ==1.16.0
Requires-Dist: sniffio ==1.3.0
Requires-Dist: snuggs ==1.4.7
Requires-Dist: sortedcontainers ==2.4.0
Requires-Dist: tenacity ==8.2.3
Requires-Dist: trio ==0.22.2
Requires-Dist: trio-websocket ==0.11.1
Requires-Dist: tzdata ==2023.3
Requires-Dist: uritemplate ==4.1.1
Requires-Dist: urllib3 ==2.0.7
Requires-Dist: wsproto ==1.2.0
Requires-Dist: google-api-python-client >=2.114.0
Requires-Dist: google-auth-oauthlib >=1.2.0

# spotlite - Satellogic Imagery Discovery Support Package

## PURPOSE:
This app simplifies the engagement with Satellogic's archive and tasking APIs.


## MAIN FUNCTION ACTIVITIES
This package supports the following activities:

### Clase Spotlite:
Purpose: Serves as a unifying class to simplify working with the features.  You can still use the helper 
classes behind Spotlite if desired.
Main Methods of Interest:
1) Search And Animate Site - Creates animated stack(s) for POIs with width polygons.
2) Create Cloud Free Basemap - Creates a cloud free map using the latest cloud free tile from the archive.
3) Create Heatmap Of Collection Age - Creates heatmap for image age for AOI and date range.
4) Create Heatmap Of Imagery Depth - Creates heatmap for image depth/count for AOI and date range.
5) Create Heatmap Of Cloud Cover - Creates heatmap for image cloud cover for AOI and date range.
6) Download Tiles For BBox - Downloads the tiles for an AOI and date range
7) Run Subscription Monitor - Monitors a configurable series of AOIs for new captures and send email notifications.
8) Dump Footprints - Finds and saves the image strip footprints to the desktop for an AOI and date range.

### Class Searcher:
1) search_archive - search the archive using multi-threaded approach

### Class TileManager:
1) animate_tile_stack - animate tile stack found by Searcher class, saves results to maps/ and images/
2) cloud_heatmap - create heatmap for tiles with cloud cover below a configurable threshold
3) age_heatmap - create heatmap for tile age
4) count_heatmap - create heatmap for tile count, essentially the depth of stacks.
5) save_tiles - download and save tiles on local computer
6) filter_tiles - filter tiles based on cloud cover and valid pixel percent
7) filter_and_sort_tiles - filter_tiles plus sort and eliminate duplicates for heatmap optimization
8) create_aois_from_points - takes point list and returns bbox aois and points list

### Class Monitor Agent:
Purpose: To manage the monitoring of the configurable list of subscription areas.
1) Run - once the Agent is initialized you just need to call run and it will continue to run in the terminal until canceled.

### Class TaskingManager:
1) create_new_task - creates new task request to capture new imagery
2) cancel_task - cancels a task
3) task_status - checks the status of a task
4) download_image - download a tasked and received image
5) query_tasks_by_status - find all tasks of certain status code
6) capture_list - list the sceneset_ids for a capture task
7) check_account_config - checks the status of the user's account
8) query_available_tasking_products - check what products the user can order

