-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdevelopers.html
More file actions
317 lines (307 loc) · 24.1 KB
/
developers.html
File metadata and controls
317 lines (307 loc) · 24.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="PAKET Developers Page">
<title>PAKET Developers Unite</title>
<link rel="shortcut icon" type="image/x-icon" href="images/favicon.ico">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
<link rel="stylesheet" type="text/css" media="all" href="fonts/fonts.css">
<link rel="stylesheet" type="text/css" media="all" href="css/style.css">
</head>
<body>
<div class="page">
<div class="page-content developers-page">
<header class="header">
<nav class="navbar">
<div class="container header">
<div class="col-md-12">
<div class="navbar-header">
<div class="inner">
<a class="logo" href="index.html">
<img src="images/logo/paket-logo.png"
srcset="images/logo/paket-logo@2x.png 2x,images/logo/paket-logo@3x.png 3x"
alt="PAKET" class="paket-logo">
</a>
</div>
</div>
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#topNav" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<div class="language-wrapper">
<div class="language-select-wrapper">
<ul class="language-select animated fadeInDown">
<li class="preload-lang-images active" data-lang="en">
<div title="English" class="img lang-tooltip en"></div>
</li>
<li class="preload-lang-images" data-lang="cn">
<div title="Chinese" class="img lang-tooltip cn"></div>
</li>
<li class="preload-lang-images" data-lang="ko">
<div title="Korean" class="img lang-tooltip ko"></div>
</li>
<li class="preload-lang-images" data-lang="pl">
<div title="Polish" class="img lang-tooltip pl"></div>
</li>
<li class="preload-lang-images" data-lang="ru">
<div title="Russian" class="img lang-tooltip ru"></div>
</li>
</ul>
</div>
</div>
<div class="navbar-collapse collapse" id="topNav" role="navigation" aria-expanded="false" style="height: 83px;">
<ul class="nav navbar-nav">
<li class="sub-li"><a href="index.html#team">Our Team </a></li>
<li><a href="application.html">Mobile App</a></li>
<li><a href="developers.html">Developers</a></li>
<li><a href="incentives.html">How to Help</a></li>
<li><a href="https://explorer.paket.global" target="_blank">Live Package Explorer</a></li>
</ul>
<div class="socia-wrapper">
<div class="social-icons">
<a href="https://twitter.com/PaketProtocol" target="_blank"><span class="icon-twitter"></span></a>
<a href="https://www.reddit.com/r/PAKET/" target="_blank"><span class="icon-reddit"></span></a>
<a href="https://medium.com/paket-global" target="_blank"><span class="icon-medium"></span></a>
<a href="https://t.me/joinchat/G9T-tkXBHHNnpQ8oYFGSvw" target="_blank"><span class="icon-telegram"></span></a>
<a href="https://www.youtube.com/channel/UCeyTJH3uKlXsEyD-vPRQ7uw" target="_blank"><span class="icon-yt"></span></a>
</div>
</div>
</div>
</div>
</div>
</nav>
</header>
</div>
<section class="developers-top-section home-section center">
<div class="shadow"></div>
<div class="top-content">
<div class="container">
<div class="col-md-12">
<h1>PAKET Developers</h1>
</div>
</div>
</div>
</section>
<section class="developers-down-section home-section center">
<div class="container">
<div class="col-md-10 col-md-offset-1">
<h2>Introduction</h2>
<p class="desc">The PAKET project encourages developers with feature rewards and bug bounty programs. If you are interested in contributing to the project and earning money for it, please visit our <a href="incentives.html">incentives page</a>.</p>
<p class="desc">As a project that revolves around decentralization, PAKET uses and produces free, libre and open-source software, the PAKET protocol is open and the PAKET network if fully transparent. We believe that everyone stands to profit from more and more players joining the ecosystem and enriching it, so we wish to make it as easy and simple as possible to hop on the wagon and join in on the ride.</p>
<ul class="dotted-list">
<li><span class="dot"></span><span><a data-scroll href="#quick-start">Quickstart</a> – </span><span>Wanna get your hands dirty? Just dive in and write some code? Follow our quickstart guide and set up the basic environment to participate in the PAKET network.</span></li>
<li><span class="dot"></span><span><a data-scroll href="#api">Experiment</a> – </span><span>Wanna play around with a sandbox environment? Check out our API page, full of deliciously documented API calls you can try right off your browser.</span></li>
<li><span class="dot"></span><span><a data-scroll href="#architecture">Architecture</a> – </span><span>Wanna understand how things work? Read about our architecture.</span></li>
<li><span class="dot"></span><span><a data-scroll href="#source-code">Code</a> – </span><span>Wanna see how things work for yourself? View our different projects (contracts, bridge servers, and mobile apps) on our github page, as well as other projects that connect to the PAKET network, and maybe even contribute some code and add your own project to the list.</span></li>
<li><span class="dot"></span><span><a data-scroll href="#community">Community</a> – </span><span>Wanna talk to other developers? Get help? Seek advice? Join our dev community on Telegram, IRC, or on GalacticTalk.</span></li>
</ul>
</div>
</div>
</section>
<section class="home-section home-project developers-desc" id="product">
<div class="container">
<div class="project-items-wrapper col-md-10 col-md-offset-1">
<div class="project-item row" id="quick-start">
<div class="col-md-6 col-md-push-6">
<h2 class="title">Get Your Hands Dirty (Quickstart)</h2>
<p class="desc">The PAKET protocol is fully decentralized and open, and you can use it directly over the <a href="https://www.stellar.org/" target="_blank">Stellar</a> public network. If you are familiar with Stellar and wish to take that route, simply head over to the Working with Stellar <a href="https://github.com/paket-core/paket-stellar/blob/master/README.md" target="_blank">documentation</a>. Most developers, however, prefer to develop on a higher level. That's where the PAKET API server comes in.</p>
</div>
<div class="col-md-6 col-md-pull-6">
<img src="images/developers/developers_4_s.png"
alt="Get Your Hands Dirty (Quickstart)"
srcset="images/developers/developers_4_b.png 2x, images/developers/developers_4.png 3x">
</div>
<div class="col-md-12 center-section">
<div class="title-wrapper">
<h2 class="subtitle">Using the API</h2>
</div>
<p class="desc"><a href="https://github.com/paket-core/api/" target="_blank">The PAKET API server</a> is a bridge, constructed from HTTP and JSON, between applications and the underlying PAKET protocol. To run your own instance of the PAKET API server just follow the instructions on the README page. To use the API you will need to meet the following requirements:</p>
<ul class="dotted-list">
<li><span class="dot"></span><span>A funded Stellar account. Test network accounts can be created and funded with the Stellar <a href="https://www.stellar.org/laboratory/#account-creator" target="_blank">account creator.</a></span></li>
<li><span class="dot"></span><span>A way to create a Stellar compatible <a href="https://ed25519.cr.yp.to/" target="_blank">ed25519</a> keypairs (we use <a href="https://github.com/StellarCN/py-stellar-base" target="_blank">the stellar-base</a> Python package).</span></li>
<li><span class="dot"></span><span>A way to sign transactions and string data with such keypairs (we use the stellar-base Python package).</span></li>
</ul>
<p class="desc">Once you meet these three requirements, you can experiment with our endpoints from our live <a href="http://api.paket.global/" target="_blank">API page</a>. To get right down to business and launch a package, just follow the walkthrough (pay close attention to the authentication process).</p>
</div>
</div>
<div class="project-item row" id="architecture">
<div class="col-md-6">
<h2 class="title">Architecture</h2>
<p class="desc">The PAKET Protocol establishes trust and enables the cooperation between multiple parties on the safe and timely delivery of goods. For modularity and robustness, the protocol is divided into the following layers:</p>
</div>
<div class="col-md-6 center">
<img src="images/developers/developers_03_s.png"
alt="Architecture"
srcset="images/developers/developers_03_b.png 2x, images/developers/developers_03.png 3x">
</div>
<div class="col-md-12 center-section">
<div class="title-wrapper" id="api">
<h2 class="subtitle">Layer 0 - Trust</h2>
</div>
<p class="desc">This layer establishes a decentralized consensus regarding the conditional transfer of value, as well as an inspectable, immutable history of that consensus. Our current L0 is Stellar, so it is advised that you familiarize yourself with its basic workings. Especially Assets and the different Signer Types.</p>
<div class="title-wrapper">
<h2 class="subtitle">Layer 1 - Token</h2>
</div>
<p class="desc">This layer defines the cryptographic tokens and the smart contracts which govern its behaviour.</p>
<p class="desc">On the logical level, what we do is quite simple. For every package that a user wants to send (we call such a user a Launcher), we create an escrow into which the Launcher deposits his promised Payment. The escrow has a predefined Recipient and a predefined Courier, and once the Recipient confirms the receipt of the package, the Payment is released to the Courier. The escrow also had a predefined Deadline, and if the Courier fails to deliver the package to the Recipient by the time the Deadline passes, the escrow will release the Payment back to the Launcher as refund.</p>
<p class="desc">In addition, the Launcher can demand that the Courier deposits a Collateral into the escrow, as a form of insurance for the package. Once the Recipient confirms the receipt of the package, the escrow will release the Collateral to the Courier along with the Payment, but if the Deadline passes before that, the escrow will pay the Collateral to the Launcher along with his refunded Payment.</p>
<p class="desc">The only remaining bit is the relay. A Courier who is given a package to transport can relay the package to another Courier, promising him a part of the Payment, to be paid only when the Recipient confirms the receipt of the package. The relaying Courier can also demand that the new Courier cover his Collateral, in which case the new Courier deposits the Collateral into the escrow (to be returned only upon successful delivery) and the relaying Courier is given his Collateral back.</p>
<div class="title-wrapper">
<h2 class="subtitle">Layer 2 - Route</h2>
</div>
<p class="desc">This layer matches requirements of senders with capacity and cost of couriers, while providing a detailed and highly contextualized view into the supply and demand of the market. Our current implementation is very rough, but the fundamental idea is a p2p communication network that handles publication and matching of launcher requirements with courier capacities.</p>
<p class="desc">Communication on the network is authenticated using the same keypairs from the two lower layers, which enables secure, robust, and simple pinning of identities through the layers.</p>
<div class="title-wrapper">
<h2 class="subtitle">Layer 3 - Application</h2>
</div>
<p class="desc">This layer consolidates tools and applications that allow simple and intuitive usage of the network. It is in very early stages of development, and currently consists of only two projects:</p>
<ul class="dotted-list">
<li><span class="dot"></span><span>Bridge API server, to simplify programmatic usage of L1.</span></li>
<li><span class="dot"></span><span>Mobile app, to actually launch, courier, and receive packages.</span></li>
</ul>
<div class="title-wrapper">
<h2 class="subtitle">Layer 4 - Economy</h2>
</div>
<p class="desc">This layer builds organizations and services that thrive in the PAKET ecosystem and enrich it. We have some interesting plans regarding it, but no current implementations.</p>
</div>
</div>
<div class="project-item row source-code" id="source-code">
<div class="col-md-6 col-md-push-6">
<h2 class="title">Source code</h2>
<p class="desc">
<a target="_blank" rel="noreferrer noopener"
href="https://github.com/paket-core/paket-stellar">Our Stellar library</a>
- implementing the Stellar side of the PAKET layer(L1)
</p>
<p class="desc">
<a target="_blank" rel="noreferrer noopener"
href="https://github.com/paket-core/bridge">Our bridge server</a>
- functioning as a bridge between Stellar Horizon servers and user applications, providing access to the PAKET layer (L1)
</p>
<p class="desc">
<a target="_blank" rel="noreferrer noopener"
href="https://github.com/paket-core/router">Our routing server</a>
- providing a temporary centralized routing layer (L2)
</p>
<p class="desc">
<a target="_blank" rel="noreferrer noopener"
href="https://github.com/paket-core/funder">Our funding server</a>
- providing tokens to those who wish to use them
</p>
<p class="desc">
<a target="_blank" rel="noreferrer noopener"
href="https://github.com/paket-core/manager">Our manager scaffolding</a>
- providing scripts for deploying, updating, testing, and running our servers
</p>
<p class="desc">
<a target="_blank" rel="noreferrer noopener"
href="https://github.com/paket-core/mobile">The first mobile app to use PAKET</a>
- enabling simple, decentralized deliveries
</p>
<p class="desc">
<a target="_blank" rel="noreferrer noopener"
href="https://github.com/paket-core/py-stellar-base">Our branch of the stellar-core Python package</a>
- we occasionally get the chance to contribute to the official Python package!
</p>
</div>
<div class="col-md-6 col-md-pull-6">
<img src="images/developers/developers_1_s.png"
alt="Source code"
srcset="images/developers/developers_1_b.png 2x, images/developers/developers_1.png 3x">
</div>
<div class="col-md-12 center">
<img src="images/developers/developers_1_architecture.jpeg"
class="architecture"
alt="architecture"
sizes="(min-width: 1420px) 1420px, 100vw"
srcset="images/developers/developers_1_architecture_s.jpeg 480w, images/developers/developers_1_architecture.jpeg 800w, images/developers/developers_1_architecture_b.jpeg 1400w">
</div>
</div>
<div class="project-item row source-code">
<div class="col-md-12 center">
<h2 class="title">Commits Statistics</h2>
<a href="http://52.215.28.55:3000/d-solo/N2zre_xik/dashboard-number-one?panelId=44&orgId=1&from=1514764800000&to=1542273584855" target="_blank">
<img src="images/developers/commits.png" class="architecture" alt="Commits">
</a>
</div>
</div>
<div class="project-item row" id="community">
<div class="col-md-6">
<h2 class="title">Developers Community</h2>
<p class="desc"><a href="https://t.me/joinchat/G9T-tkXBHHNnpQ8oYFGSvw"
target="_blank">Telegram</a></p>
<p class="desc"><a href="https://www.github.com/paket-core"
target="_blank">Github</a></p>
<p class="desc"><a href="https://galactictalk.org"
target="_blank">Galactic Talk</a></p>
</div>
<div class="col-md-6">
<img src="images/developers/developers_2_s.png"
alt="Developers Community"
srcset="images/developers/developers_2_b.png 2x, images/developers/developers_2.png 3x">
</div>
<div class="col-md-12 center">
<a href="https://github.com/paket-core/mobile/projects/1" target="_blank" rel="noreferrer noopener">
<img src="images/developers/developers_1_architecture.jpeg"
class="architecture"
alt="Source code"
sizes="(min-width: 1420px) 1420px, 100vw"
srcset="images/developers/developers_2_board_s.jpeg 480w, images/developers/developers_2_board.jpeg 800w, images/developers/developers_2_board_b.jpeg 1400w">
</a>
</div>
</div>
</div>
</div>
</section>
<footer>
<div class="container">
<div class="col-md-8 col-md-offset-2">
<div class="row">
<div class="col-md-12 title" id="footer_follow_title">
FOLLOW US
</div>
<div class="col-md-12 social">
<div class="social-icons">
<a href="https://twitter.com/PaketProtocol" target="_blank"><span
class="icon-twitter"></span></a>
<a href="https://www.reddit.com/r/PAKET/" target="_blank"><span
class="icon-reddit"></span></a>
<a href="https://medium.com/paket-global" target="_blank"><span
class="icon-medium"></span></a>
<a href="https://t.me/joinchat/G9T-tkXBHHNnpQ8oYFGSvw" target="_blank"><span
class="icon-telegram"></span></a>
<a href="https://www.youtube.com/channel/UCeyTJH3uKlXsEyD-vPRQ7uw"
target="_blank"><span class="icon-yt"></span></a>
</div>
</div>
<div class="col-md-12 copyright" id="footer_copyright">
2017-2018 Paket Project LTD
</div>
<div class="col-md-12 documents">
<ul>
<li>
<a href="privacy-policy.html">
Privacy Policy </a>
</li>
</ul>
</div>
</div>
</div>
</div>
</footer>
<div class="cookie-modal hidden">
<p>This site uses cookies. <a target="_blank" href="privacy-policy.html">Learn more.</a></p>
<button class="btn btn-white">Okay</button>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
<script src="js/translations.js"></script>
</body>
</html>