chore: adding diagrams

This commit is contained in:
Andre Neves
2021-08-14 19:07:04 -04:00
parent a19b454ce6
commit 330f23fb37
4 changed files with 4456 additions and 0 deletions

View File

@@ -24,6 +24,10 @@ Here's a quick primer on how Lightning Address works and how it relies on the [L
![](https://i.imgur.com/DIV5q8q.png) ![](https://i.imgur.com/DIV5q8q.png)
## Diagrams
All illustrative and informative diagrams are available under the [DIAGRAMS](./diagrams/README.md) folder.
## Contributions ## Contributions
Contributions are welcome, for both the lightningaddress.com website as well as the Lightning Address protocol itself. Please submit a PR here or on the core [LNURL RFC repository](https://github.com/fiatjaf/lnurl-rfc). Contributions are welcome, for both the lightningaddress.com website as well as the Lightning Address protocol itself. Please submit a PR here or on the core [LNURL RFC repository](https://github.com/fiatjaf/lnurl-rfc).

8
diagrams/README.md Normal file
View File

@@ -0,0 +1,8 @@
# Lightning Address Diagrams
The files in this folder are the diagrams created to explain the Lightning Address protocol. It uses [Excalidraw](https://excalidraw.com) open source software to render the schematics from `.excalidraw` files.
## Contents
* [Why Lightning Address (Excalidraw Source File)](./why-lightning-address.excalidraw)
* [Lightning Address to LNURL Pay (Excalidraw Source File)](./lnaddress-to-lnurl.excalidraw)

View File

@@ -0,0 +1,744 @@
{
"type": "excalidraw",
"version": 2,
"source": "https://excalidraw.com",
"elements": [
{
"type": "text",
"version": 113,
"versionNonce": 1012951499,
"isDeleted": false,
"id": "nrlHrIoJv6jU0gMI8vY7_",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 530.8010864257812,
"y": 245.73394775390625,
"strokeColor": "#364fc7",
"backgroundColor": "transparent",
"width": 149.80054728190098,
"height": 38.2469482421875,
"seed": 130906576,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [
"6a6tMKijm2UDykmXhUtke",
"-IhCgx4_Wy9UUjbUnGjmj",
"JnWsSZF5BubbvQH8VoPLf"
],
"fontSize": 31.872456868489575,
"fontFamily": 3,
"text": "username",
"baseline": 31.2469482421875,
"textAlign": "left",
"verticalAlign": "top"
},
{
"type": "text",
"version": 143,
"versionNonce": 126626917,
"isDeleted": false,
"id": "cONWiSSEhPkxwz_PLmkXl",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 694.5108591715496,
"y": 245.857421875,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 19,
"height": 38,
"seed": 1085852624,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [],
"fontSize": 31.872456868489575,
"fontFamily": 3,
"text": "@",
"baseline": 31,
"textAlign": "left",
"verticalAlign": "top"
},
{
"type": "text",
"version": 206,
"versionNonce": 669448299,
"isDeleted": false,
"id": "P9y3XfgFrxQwCt7sKW15q",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 727.0526733398438,
"y": 245.857421875,
"strokeColor": "#d9480f",
"backgroundColor": "transparent",
"width": 187,
"height": 38,
"seed": 1184963888,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [
"NdkZGz-n68MzhDYJJGEHh",
"KghRRJpvdRQdxvYfkMCmI",
"HqIiMp4K-Y8pN-U7GwR9-"
],
"fontSize": 31.872456868489575,
"fontFamily": 3,
"text": "domain.com",
"baseline": 31,
"textAlign": "left",
"verticalAlign": "top"
},
{
"type": "text",
"version": 129,
"versionNonce": 1752389573,
"isDeleted": false,
"id": "aOSqLV4D2NOyVFLpY76c5",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 440.26695740361237,
"y": 80.59651465408672,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 543.9550988646503,
"height": 65.6026249887016,
"seed": 101884880,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [],
"fontSize": 54.66885415725128,
"fontFamily": 3,
"text": "Lightning Address",
"baseline": 52.602624988701606,
"textAlign": "left",
"verticalAlign": "top"
},
{
"id": "JcsFzaEInV2xKMMGDctaX",
"type": "rectangle",
"x": 387.95395478748173,
"y": 764.1356143043154,
"width": 689.7646586100261,
"height": 201.487528483073,
"angle": 0,
"strokeColor": "#495057",
"backgroundColor": "#ced4da",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 60,
"groupIds": [],
"strokeSharpness": "sharp",
"seed": 502520389,
"version": 293,
"versionNonce": 2062457733,
"isDeleted": false,
"boundElementIds": null
},
{
"type": "text",
"version": 92,
"versionNonce": 216183563,
"isDeleted": false,
"id": "7k5_o_QcRAT0hfmPyUu3U",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 641.7445068359375,
"y": 159.60055541992188,
"strokeColor": "#d9480f",
"backgroundColor": "transparent",
"width": 141,
"height": 24,
"seed": 170224592,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [],
"fontSize": 20,
"fontFamily": 3,
"text": "TDLR Version",
"baseline": 19,
"textAlign": "left",
"verticalAlign": "top"
},
{
"type": "arrow",
"version": 279,
"versionNonce": 2134861323,
"isDeleted": false,
"id": "sfUF6DFnh1u1shvxbI7Fi",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 60,
"angle": 0,
"x": 396.9602986685701,
"y": 267.62887464691875,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 98.63760172205491,
"height": 0.8212574594187458,
"seed": 738776016,
"groupIds": [],
"strokeSharpness": "round",
"boundElementIds": [],
"startBinding": {
"elementId": "fDQvbecNSNiUkOCs4nfkE",
"focus": 0.281204734000832,
"gap": 14.3369140625
},
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
98.63760172205491,
-0.8212574594187458
]
]
},
{
"type": "text",
"version": 279,
"versionNonce": 749401285,
"isDeleted": false,
"id": "fDQvbecNSNiUkOCs4nfkE",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 213.6233846060701,
"y": 229.81780862575403,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 169,
"height": 60,
"seed": 2143427376,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [
"sfUF6DFnh1u1shvxbI7Fi"
],
"fontSize": 16.972741817072436,
"fontFamily": 3,
"text": "User wants to\npay this\nLightning Address",
"baseline": 56,
"textAlign": "left",
"verticalAlign": "top"
},
{
"type": "text",
"version": 514,
"versionNonce": 1475933157,
"isDeleted": false,
"id": "v2OwN2WCAxqo4C3JOIpRO",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 276.459228515625,
"y": 503.4818420410156,
"strokeColor": "#d9480f",
"backgroundColor": "transparent",
"width": 355,
"height": 38,
"seed": 1197501904,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [
"NdkZGz-n68MzhDYJJGEHh",
"KghRRJpvdRQdxvYfkMCmI",
"HqIiMp4K-Y8pN-U7GwR9-"
],
"fontSize": 31.872456868489575,
"fontFamily": 3,
"text": "https://domain.com/",
"baseline": 31,
"textAlign": "left",
"verticalAlign": "top"
},
{
"type": "text",
"version": 595,
"versionNonce": 786116421,
"isDeleted": false,
"id": "NJzlK78upinJ7-Ct_nCaQ",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 627.6627807617188,
"y": 503.4818420410156,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 355,
"height": 38,
"seed": 1250956752,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [],
"fontSize": 31.872456868489575,
"fontFamily": 3,
"text": ".well-known/lnurlp/",
"baseline": 31,
"textAlign": "left",
"verticalAlign": "top"
},
{
"type": "text",
"version": 721,
"versionNonce": 589697931,
"isDeleted": false,
"id": "jMT0XGMWyn9JuAhfRcvOH",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 984.80126953125,
"y": 503.4818420410156,
"strokeColor": "#364fc7",
"backgroundColor": "transparent",
"width": 149,
"height": 38,
"seed": 196037072,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [
"6a6tMKijm2UDykmXhUtke",
"-IhCgx4_Wy9UUjbUnGjmj",
"JnWsSZF5BubbvQH8VoPLf"
],
"fontSize": 31.872456868489575,
"fontFamily": 3,
"text": "username",
"baseline": 31,
"textAlign": "left",
"verticalAlign": "top"
},
{
"type": "text",
"version": 603,
"versionNonce": 1796679851,
"isDeleted": false,
"id": "huLOHaMt5whFqdqCBkWHf",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 732.3351238541932,
"y": 365.3684444783674,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 242.7758902194406,
"height": 64.74023739185083,
"seed": 424885040,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [],
"fontSize": 17.983399275514127,
"fontFamily": 3,
"text": "Service / Wallet\nmakes a GET request\nto this transformed URL",
"baseline": 60.740237391850826,
"textAlign": "left",
"verticalAlign": "top"
},
{
"id": "Au4agvtIlqvKDJbZU9ruN",
"type": "arrow",
"x": 705.2726440429688,
"y": 562.677978515625,
"width": 0.9852654517253541,
"height": 186.80652845639736,
"angle": 0,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 60,
"groupIds": [],
"strokeSharpness": "round",
"seed": 975955979,
"version": 227,
"versionNonce": 536535781,
"isDeleted": false,
"boundElementIds": null,
"points": [
[
0,
0
],
[
0.9852654517253541,
186.80652845639736
]
],
"lastCommittedPoint": null,
"startBinding": null,
"endBinding": {
"elementId": "WDcSmBO73FxqIL_5E5Kst",
"focus": -0.09670220001876215,
"gap": 19.234571725202045
},
"startArrowhead": null,
"endArrowhead": "arrow"
},
{
"type": "text",
"version": 697,
"versionNonce": 1469650635,
"isDeleted": false,
"id": "j1crsImQhJV9eEvKILIRs",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 749.6567843187837,
"y": 586.7642972159118,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 270,
"height": 171,
"seed": 108864421,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [],
"fontSize": 15.879146584331426,
"fontFamily": 3,
"text": "HTTP server must return\na valid LNURL Pay JSON\ndata object for the given\nuser.\n\nRequired: Internet Identifier\nOptional: Comments\n\n",
"baseline": 167,
"textAlign": "left",
"verticalAlign": "top"
},
{
"id": "WDcSmBO73FxqIL_5E5Kst",
"type": "text",
"x": 417.7002553323796,
"y": 768.7190786972244,
"width": 640.3228780071157,
"height": 187.41157405086327,
"angle": 0,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 60,
"groupIds": [],
"strokeSharpness": "sharp",
"seed": 549416581,
"version": 441,
"versionNonce": 721267499,
"isDeleted": false,
"boundElementIds": [
"Au4agvtIlqvKDJbZU9ruN",
"xV91yvc3metJXC6cFKf_w"
],
"text": "\n{\n callback: String, // The URL from LN SERVICE to accept pay request\n maxSendable: MilliSatoshi, // Max amount able to receive\n minSendable: MilliSatoshi, // Min amount able to receive\n metadata: String, // Metadata json including Internet Identifier\n commentAllowed: Number, // Optional number of chars in comment\n tag: \"payRequest\" // Type of LNURL\n}\n",
"fontSize": 15.617631170905263,
"fontFamily": 3,
"textAlign": "left",
"verticalAlign": "top",
"baseline": 183.41157405086327
},
{
"type": "text",
"version": 973,
"versionNonce": 1233359589,
"isDeleted": false,
"id": "P2jkmn2cxmH4WR-HRzDS7",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 100,
"angle": 0,
"x": 572.5217488606769,
"y": 1132.8685302734375,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 316,
"height": 57,
"seed": 1941627595,
"groupIds": [],
"strokeSharpness": "sharp",
"boundElementIds": [],
"fontSize": 15.879146584331426,
"fontFamily": 3,
"text": "The rest is the `normal` LNURL Pay\nflow that is detailed on the LNURL\nRFC specification documents.",
"baseline": 53,
"textAlign": "center",
"verticalAlign": "top"
},
{
"type": "arrow",
"version": 618,
"versionNonce": 1848716709,
"isDeleted": false,
"id": "xV91yvc3metJXC6cFKf_w",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 60,
"angle": 0,
"x": 711.7274503789442,
"y": 982.010014987296,
"strokeColor": "#000000",
"backgroundColor": "transparent",
"width": 1.954086332836937,
"height": 133.0394641793705,
"seed": 5004869,
"groupIds": [],
"strokeSharpness": "round",
"boundElementIds": [],
"startBinding": {
"elementId": "WDcSmBO73FxqIL_5E5Kst",
"focus": 0.08674163280004178,
"gap": 25.879362239208376
},
"endBinding": null,
"lastCommittedPoint": null,
"startArrowhead": null,
"endArrowhead": "arrow",
"points": [
[
0,
0
],
[
1.954086332836937,
133.0394641793705
]
]
},
{
"id": "HqIiMp4K-Y8pN-U7GwR9-",
"type": "arrow",
"x": 784.0795375279018,
"y": 291.3916887555803,
"width": 279.7727234467688,
"height": 204.8555297851563,
"angle": 0,
"strokeColor": "#d9480f",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 60,
"groupIds": [],
"strokeSharpness": "round",
"seed": 460506283,
"version": 338,
"versionNonce": 1999399147,
"isDeleted": false,
"boundElementIds": null,
"points": [
[
0,
0
],
[
-50.890328543526834,
26.987697056361526
],
[
-256.33013044084817,
26.232735770089278
],
[
-279.7727234467688,
204.8555297851563
]
],
"lastCommittedPoint": null,
"startBinding": {
"elementId": "P9y3XfgFrxQwCt7sKW15q",
"focus": 0.14642799569209505,
"gap": 7.534266880580276
},
"endBinding": {
"elementId": "v2OwN2WCAxqo4C3JOIpRO",
"focus": 0.2605900431535447,
"gap": 7.234623500279042
},
"startArrowhead": null,
"endArrowhead": "arrow"
},
{
"id": "JnWsSZF5BubbvQH8VoPLf",
"type": "arrow",
"x": 640.437220982143,
"y": 240.9139578683035,
"width": 401.67130762413365,
"height": 270.299560546875,
"angle": 0,
"strokeColor": "#364fc7",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 60,
"groupIds": [],
"strokeSharpness": "round",
"seed": 1271427973,
"version": 347,
"versionNonce": 413073061,
"isDeleted": false,
"boundElementIds": null,
"points": [
[
0,
0
],
[
43.71608189174094,
-16.084333147321416
],
[
349.27211216517844,
16.231558663504444
],
[
401.67130762413365,
254.2152273995536
]
],
"lastCommittedPoint": null,
"startBinding": {
"elementId": "nrlHrIoJv6jU0gMI8vY7_",
"focus": -0.23913630598079483,
"gap": 4.819989885602752
},
"endBinding": {
"elementId": "jMT0XGMWyn9JuAhfRcvOH",
"focus": -0.14196433135356587,
"gap": 8.352656773158515
},
"startArrowhead": null,
"endArrowhead": "arrow"
},
{
"id": "X0eS6YH_MBjO14e-NwEb_",
"type": "freedraw",
"x": 242.26715669177855,
"y": 634.7577354794456,
"width": 0.413818359375,
"height": 0.000050862630246228946,
"angle": 0,
"strokeColor": "#364fc7",
"backgroundColor": "transparent",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 60,
"groupIds": [],
"strokeSharpness": "round",
"seed": 147238507,
"version": 48,
"versionNonce": 1555825701,
"isDeleted": false,
"boundElementIds": null,
"points": [
[
0,
0
],
[
-0.413818359375,
-0.000050862630246228946
],
[
0,
0
]
],
"pressures": [],
"simulatePressure": true,
"lastCommittedPoint": null
},
{
"id": "Hd7g8CwWkKVbviq2wxVpO",
"type": "arrow",
"x": 706.7534441266744,
"y": 301.839359828404,
"width": 0.5555216471353788,
"height": 177.22498575846362,
"angle": 0,
"strokeColor": "#495057",
"backgroundColor": "#ced4da",
"fillStyle": "hachure",
"strokeWidth": 1,
"strokeStyle": "solid",
"roughness": 1,
"opacity": 60,
"groupIds": [],
"strokeSharpness": "round",
"seed": 348486155,
"version": 69,
"versionNonce": 1538377547,
"isDeleted": false,
"boundElementIds": null,
"points": [
[
0,
0
],
[
0.5555216471353788,
177.22498575846362
]
],
"lastCommittedPoint": null,
"startBinding": null,
"endBinding": null,
"startArrowhead": null,
"endArrowhead": "arrow"
}
],
"appState": {
"gridSize": null,
"viewBackgroundColor": "#ffffff"
}
}

File diff suppressed because it is too large Load Diff