@zukall/zap 0.2.2 → 0.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/PROTOCOL.md +1 -1
- package/README.md +45 -13
- package/package.json +1 -1
package/PROTOCOL.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# ZAP — Zukall Addressing Protocol, version 2
|
|
2
2
|
|
|
3
3
|
Protocol 2 uses **100-meter grid blocks** and **1-meter detail**, computed from
|
|
4
|
-
unrounded projected GPS coordinates. The npm package version (`0.2.
|
|
4
|
+
unrounded projected GPS coordinates. The npm package version (`0.2.3`) and
|
|
5
5
|
protocol version (`2`) are separate. Previously issued protocol-1 addresses retain
|
|
6
6
|
their original text and identity; see [PROTOCOL-V1.md](PROTOCOL-V1.md).
|
|
7
7
|
|
package/README.md
CHANGED
|
@@ -1,19 +1,51 @@
|
|
|
1
1
|
# ZAP — Zukall Addressing Protocol
|
|
2
2
|
|
|
3
3
|
**`@zukall/zap`** generates addresses directly from latitude and longitude using
|
|
4
|
-
fixed country/province grids.
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
fixed country/province grids.
|
|
5
|
+
|
|
6
|
+
**Give real places a recognizable address, without waiting for street names or
|
|
7
|
+
house numbers.**
|
|
8
|
+
|
|
9
|
+
Imagine building a courier application that serves Uganda, Haiti, Florida in
|
|
10
|
+
the United States, and Germany. Your couriers and remote dispatchers need to
|
|
11
|
+
recognize addresses quickly, even when those places use different languages,
|
|
12
|
+
street names, and numbering systems.
|
|
13
|
+
|
|
14
|
+
With ZAP, they learn one address format and use it across the configured
|
|
15
|
+
countries and states. A home, business, rural entrance, or pickup point can have
|
|
16
|
+
an address based on its GPS location. A dispatcher can read the same address
|
|
17
|
+
structure in each market. Your application can show a courier where a
|
|
18
|
+
destination lies relative to their current location in the same grid, then open
|
|
19
|
+
map directions using the destination’s saved GPS point.
|
|
20
|
+
|
|
21
|
+
Once you have the GPS coordinates, you can generate the address offline,
|
|
22
|
+
without a geocoding service, API key, or per-address fee. ZAP works alongside
|
|
23
|
+
existing street addresses and also gives you a location address where street
|
|
24
|
+
names or house numbers are missing.
|
|
7
25
|
|
|
8
26
|
## See how ZAP works: Haiti’s grid
|
|
9
27
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
28
|
+
ZAP starts with a configured rectangle around a country. Where a country uses
|
|
29
|
+
province or state grids, it uses the selected province’s rectangle instead—for
|
|
30
|
+
example, Florida’s grid within the United States.
|
|
31
|
+
|
|
32
|
+
Each rectangle has a fixed center and two axes: north/south and east/west.
|
|
33
|
+
Think of laying a grid of **100 × 100-meter square blocks** across the area.
|
|
34
|
+
The main address numbers count complete blocks from the center, and the
|
|
35
|
+
direction letters tell you which side of the center the location is on.
|
|
36
|
+
|
|
37
|
+
A suffix such as **`#23-43`** adds the position within that block: 23 whole meters
|
|
38
|
+
along the address’s north/south direction and 43 along its east/west direction.
|
|
39
|
+
That gives a home, entrance, or pickup point a location code with whole-meter
|
|
40
|
+
detail. Keep apartment and unit numbers alongside the code as separate details.
|
|
41
|
+
|
|
42
|
+
The Haiti illustrations below show the same fixed grid in use. Each address
|
|
43
|
+
comes from its own GPS point. Roads can run straight, diagonally, or curve;
|
|
44
|
+
the grid’s center and axes stay fixed.
|
|
13
45
|
|
|
14
46
|
### Whole-country grid and fixed center
|
|
15
47
|
|
|
16
|
-

|
|
17
49
|
|
|
18
50
|
The Haiti grid has one fixed center: **19.0578675° N, 73.0641385° W**.
|
|
19
51
|
It is the center of the configured rectangle, in the Gulf of Gonâve, rather than
|
|
@@ -44,7 +76,7 @@ The examples and captions below use the current dashed format.
|
|
|
44
76
|
|
|
45
77
|
### North–south: easting stays fixed
|
|
46
78
|
|
|
47
|
-

|
|
48
80
|
|
|
49
81
|
```text
|
|
50
82
|
Point A: 580 S 772 E #42-68, HT ZAP
|
|
@@ -58,7 +90,7 @@ Moving north on this side of the origin decreases the south block.
|
|
|
58
90
|
|
|
59
91
|
### East–west: northing stays fixed
|
|
60
92
|
|
|
61
|
-

|
|
62
94
|
|
|
63
95
|
```text
|
|
64
96
|
Point A: 582 S 770 E #42-68, HT ZAP
|
|
@@ -72,7 +104,7 @@ Moving west on this side of the origin decreases the east block.
|
|
|
72
104
|
|
|
73
105
|
### Diagonal streets: both axes can change
|
|
74
106
|
|
|
75
|
-

|
|
76
108
|
|
|
77
109
|
```text
|
|
78
110
|
Point A: 580 S 770 E #43-46, HT ZAP
|
|
@@ -191,7 +223,7 @@ npm install @zukall/zap
|
|
|
191
223
|
Before publication, install the verified local package:
|
|
192
224
|
|
|
193
225
|
```sh
|
|
194
|
-
npm install /absolute/path/to/zukall-address-protocol/.artifacts/zukall-zap-0.2.
|
|
226
|
+
npm install /absolute/path/to/zukall-address-protocol/.artifacts/zukall-zap-0.2.3.tgz
|
|
195
227
|
```
|
|
196
228
|
|
|
197
229
|
Build and verify the source:
|
|
@@ -571,11 +603,11 @@ removed-option error.
|
|
|
571
603
|
```sh
|
|
572
604
|
npm login
|
|
573
605
|
npm run pack:check
|
|
574
|
-
npm publish ./.artifacts/zukall-zap-0.2.
|
|
606
|
+
npm publish ./.artifacts/zukall-zap-0.2.3.tgz --access public
|
|
575
607
|
```
|
|
576
608
|
|
|
577
609
|
An npm account with permission to publish `@zukall/zap` is required. Building and
|
|
578
|
-
packing do not publish the package. Package version is `0.2.
|
|
610
|
+
packing do not publish the package. Package version is `0.2.3`; current protocol
|
|
579
611
|
version is `2`, while preserved legacy results remain version `1`.
|
|
580
612
|
|
|
581
613
|
## License
|
package/package.json
CHANGED