You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+23-24Lines changed: 23 additions & 24 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,6 @@
1
1
# Bowser
2
2
3
-
Map-based viewer for InSAR time-series outputs — GeoZarr cubes, dolphin
4
-
workflow directories, or loose GeoTIFFs — served through a local FastAPI
5
-
server and rendered by titiler in the browser.
3
+
Map-based viewer for InSAR time-series outputs — GeoZarr cubes, dolphin workflow directories, or loose GeoTIFFs — served through a local FastAPI server and rendered by titiler in the browser.
### From [`dolphin`](https://github.com/isce-framework/dolphin)
40
37
41
38
`bowser setup-dolphin` scans a dolphin work directory and writes a
42
39
`bowser_rasters.json` describing every raster group it finds. `bowser run`
@@ -47,19 +44,26 @@ bowser setup-dolphin work/
47
44
bowser run
48
45
```
49
46
47
+
**Note:** these outputs must be **geocoded** to work with bowser, which lays them out on a basemap using web mapping tools.
48
+
50
49
If you're running over ssh, tunnel the port back to your laptop:
51
50
52
51
```bash
53
52
ssh -N -L 8000:localhost:8000 myserver
54
53
```
55
54
56
-
##Quickstart: DISP-S1 → GeoZarr cube
55
+
### From [`dolphin`](https://github.com/isce-framework/dolphin) → GeoZarr cube
57
56
58
-
The recommended path for DISP-S1 products is to convert them once into a
59
-
single pyramidal GeoZarr cube, then serve that. The converter handles the
60
-
reference-date bookkeeping for `unwrapped`-style pair indices, builds the
61
-
multiscale pyramid, and writes GeoZarr convention attributes so titiler
62
-
can pick the right overview per tile zoom.
57
+
Once the `bowser_rasters.json` file is created, you can convert the data into a GeoZarr cube:
58
+
59
+
```bash
60
+
pixi run -e writer bowser tifs-to-geozarr \
61
+
--pyramid bowser_rasters.json cube.zarr
62
+
```
63
+
64
+
### DISP-S1 → GeoZarr cube
65
+
66
+
To work with DISP-S1 products, you may convert them once into a single pyramidal GeoZarr cube, then serve that. The converter handles the reference-date bookkeeping for morving temporal reference,, builds multiscale pyramids, and writes GeoZarr convention attributes so titiler can pick the right overview per tile zoom.
63
67
64
68
```bash
65
69
# 1. prepare per-band GeoTIFFs and a bowser_rasters.json
For a **multi-dataset catalog** (pick from a map of bounding boxes at
77
-
startup) and an **EC2 deployment** serving cubes from a private S3 bucket,
78
-
see [`deploy/README.md`](deploy/README.md) — it covers the
79
-
`bowser register` CLI, the Docker image, and the EC2 bootstrap script
80
-
end-to-end.
80
+
For a **multi-dataset catalog** (pick from a map of bounding boxes at startup) and an **EC2 deployment** serving cubes from a private S3 bucket, see [`deploy/README.md`](deploy/README.md) for the `bowser register` CLI, the Docker image, and the EC2 bootstrap script end-to-end.
81
81
82
82
## CLI Usage
83
83
84
-
```
84
+
```bash
85
85
$ bowser --help
86
86
Commands:
87
87
prepare-amplitude Convert complex SLC GeoTIFFs to amplitude-in-dB.
@@ -113,8 +113,7 @@ npm install
113
113
npm run build # rebuilds src/bowser/dist/ after .tsx / CSS changes
114
114
```
115
115
116
-
`src/bowser/dist/` is checked in so non-frontend users can `pip install`
117
-
without Node.
116
+
The PyPI wheel bundles `src/bowser/dist/` (built by the CD workflow before publishing), so end users can `pip install bowser-insar` without Node. From a git checkout, run `npm run build` first to populate `src/bowser/dist/` before `pip install -e .`.
118
117
119
118
For a hot-reload loop on UI/styling changes, run the backend and the
120
119
Vite dev server in two terminals. Vite proxies API calls to the
0 commit comments