350 lines
75 KiB
HTML
350 lines
75 KiB
HTML
<html><body><style>
|
|
* {
|
|
font-family:sans-serif;
|
|
}
|
|
body {
|
|
text-align:center;
|
|
padding:1em;
|
|
}
|
|
.messages {
|
|
width:100%;
|
|
max-width:700px;
|
|
text-align:left;
|
|
display:inline-block;
|
|
}
|
|
.messages img {
|
|
background-color:rgb(248,244,240);
|
|
width:36px;
|
|
height:36px;
|
|
border-radius:0.2em;
|
|
display:inline-block;
|
|
vertical-align:top;
|
|
margin-right:0.65em;
|
|
}
|
|
.messages .time {
|
|
display:inline-block;
|
|
color:rgb(200,200,200);
|
|
margin-left:0.5em;
|
|
}
|
|
.messages .username {
|
|
display:inline-block;
|
|
font-weight:600;
|
|
line-height:1;
|
|
}
|
|
.messages .message {
|
|
display:inline-block;
|
|
vertical-align:top;
|
|
line-height:1;
|
|
width:calc(100% - 3em);
|
|
}
|
|
.messages .message .msg {
|
|
line-height:1.5;
|
|
}
|
|
</style><div class="messages"><div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-23 14:10</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/8f5d17c2210ba9813f6612330fc0fc66.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0014-72.png" /><div class="message"><div class="username">janherich</div><div class="time">2018-04-23 14:10</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-23 14:10</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-05-11/181684552369_66f21f8981bdb0f83bdd_72.jpg" /><div class="message"><div class="username">cryptowanderer</div><div class="time">2018-04-23 14:10</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-07-31/220671542518_0d49983291e646e395f0_72.jpg" /><div class="message"><div class="username">nastya</div><div class="time">2018-04-23 14:10</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-16/346978770624_9e34aabb0e7c70909e09_72.jpg" /><div class="message"><div class="username">denis-sharypin</div><div class="time">2018-04-23 14:10</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-03-13/329132457109_199841cd908ca7faa97f_72.jpg" /><div class="message"><div class="username">rachel</div><div class="time">2018-04-23 14:10</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-23 14:11</div><div class="msg">Hey everyone! Let's make `extensions` a reality! :rocket:</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-23 14:11</div><div class="msg">@jeluard set the channel topic: <a href="https://github.com/status-im/ideas/blob/master/ideas/101-extensions.md">https://github.com/status-im/ideas/blob/master/ideas/101-extensions.md</a></div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-03-13/329132457109_199841cd908ca7faa97f_72.jpg" /><div class="message"><div class="username">rachel</div><div class="time">2018-04-23 14:12</div><div class="msg">:partyparrot:</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-23 14:12</div><div class="msg">I'd like to have a quick call tomorrow to kick it off.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-07-31/220671542518_0d49983291e646e395f0_72.jpg" /><div class="message"><div class="username">nastya</div><div class="time">2018-04-23 14:48</div><div class="msg">@jeluard i would also ask for some intro and desc why do we need this at all and what is expected outcome . Sorry for possible dumb questions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-23 14:49</div><div class="msg">Sure! <a href="https://docs.google.com/document/d/1ixyYDKKz_cMJd3TaeBLXLGKiUJRkGlq1AWTkm2dYYfk/edit#">https://docs.google.com/document/d/1ixyYDKKz_cMJd3TaeBLXLGKiUJRkGlq1AWTkm2dYYfk/edit#</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-23 14:50</div><div class="msg">Let me know if the doc I shared helped</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-07-31/220671542518_0d49983291e646e395f0_72.jpg" /><div class="message"><div class="username">nastya</div><div class="time">2018-04-23 14:50</div><div class="msg">well as i understood we want to make an API that any developer may use and build something based on this API ?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-23 14:51</div><div class="msg">right</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-07-31/220671542518_0d49983291e646e395f0_72.jpg" /><div class="message"><div class="username">nastya</div><div class="time">2018-04-23 14:51</div><div class="msg">okay!</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-07-31/220671542518_0d49983291e646e395f0_72.jpg" /><div class="message"><div class="username">nastya</div><div class="time">2018-04-23 14:51</div><div class="msg">:smiley:</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-03-13/329132457109_199841cd908ca7faa97f_72.jpg" /><div class="message"><div class="username">rachel</div><div class="time">2018-04-23 14:54</div><div class="msg">@nastya build lots of exciting things much more easily, based on the API :slightly_smiling_face: beyond just chatbots!</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-07-31/220671542518_0d49983291e646e395f0_72.jpg" /><div class="message"><div class="username">nastya</div><div class="time">2018-04-23 14:54</div><div class="msg">:+1:</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-07-31/220671542518_0d49983291e646e395f0_72.jpg" /><div class="message"><div class="username">nastya</div><div class="time">2018-04-24 08:24</div><div class="msg">@jeluard please invite @sergii to the call as well</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-12-12/285383092772_62dfbe80e57ef8940bb7_72.jpg" /><div class="message"><div class="username">sergii</div><div class="time">2018-04-24 08:24</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 08:54</div><div class="msg">Schedule is here: <a href="https://github.com/status-im/ideas/blob/master/ideas/101-extensions.md#dates">https://github.com/status-im/ideas/blob/master/ideas/101-extensions.md#dates</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 08:54</div><div class="msg">Swarm officially started now ! :champagne:</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 10:40</div><div class="msg">@janherich @andreap If one of you has spare time in the next few days it would be helpful to investigate how to retrieve files from IPFS in JS.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-05-11/181684552369_66f21f8981bdb0f83bdd_72.jpg" /><div class="message"><div class="username">cryptowanderer</div><div class="time">2018-04-24 10:46</div><div class="msg">prob best to start here: <a href="https://github.com/ipfs/js-ipfs/tree/master/examples">https://github.com/ipfs/js-ipfs/tree/master/examples</a>
|
|
or <a href="https://github.com/SilentCicero/ipfs-mini">https://github.com/SilentCicero/ipfs-mini</a></div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-05-11/181684552369_66f21f8981bdb0f83bdd_72.jpg" /><div class="message"><div class="username">cryptowanderer</div><div class="time">2018-04-24 10:47</div><div class="msg">also, the embark guys have a lot of experience. Maybe @richardcatalano could come and drop some knowledge?</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 10:47</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-24 10:48</div><div class="msg">I can do on Friday</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 11:03</div><div class="msg">@richardcatalano Any experience reading files from IPFS in a browser?</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 13:55</div><div class="msg">SilentCicero makes great projects?As for reading files from IPFS in a browser?none personally for in a browser but there are TONS and I mean TONS of projects for making that happen.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 13:55</div><div class="msg">my favorite is the decentralized Google Docs project</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 13:57</div><div class="msg"><a href="https://github.com/vigzmv/IPFS-CRDT-shared-editing">https://github.com/vigzmv/IPFS-CRDT-shared-editing</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 14:00</div><div class="msg">I mean I need to have access to the content of a IPFS file from JS code</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 14:01</div><div class="msg">?.not sure why you don't have that here?</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 14:02</div><div class="msg">you should pull it based on hash and then parse it I would think?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 14:04</div><div class="msg">Do you mean that I could pull it directly from the gateway website, e.g. <a href="https://gateway.ipfs.io/ipfs/QmTeW79w7QQ6Npa3b1d5tANreCDxF2iDaAPsDvW6KtLmfB/">https://gateway.ipfs.io/ipfs/QmTeW79w7QQ6Npa3b1d5tANreCDxF2iDaAPsDvW6KtLmfB/</a> ?</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 14:06</div><div class="msg">sure that's one way to do it. Ideally you?d use a peer itself rather than a central server but the gateway is definitely one way of doing it.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 14:06</div><div class="msg">Right so I was wondering if you had experience using those JS libs</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 14:07</div><div class="msg">none I?m afraid :stuck_out_tongue: But I can link you to a couple projects that do have that experience displayed</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 14:07</div><div class="msg">if anything I?m more familiar with the clusterfuck that is their Go libs</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 14:07</div><div class="msg">:slightly_smiling_face: I'm sure their JS libs are a clusterfuck too!</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-24 14:08</div><div class="msg">IPFS is clusterfucky in general</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 14:49</div><div class="msg">@janherich @andreap When parsing an extension EDN there might be several errors that could be reported to end users.
|
|
Do you know any patterns or lib that could help with that?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 14:50</div><div class="msg">By that I mean not fail fast, but accumulate those different errors during parsing</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-24 15:01</div><div class="msg">you would like an user friendly explanation for example?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-24 15:03</div><div class="msg">Right. Wondering about the mechanism to accumulate errors, as opposed to fail after the first</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-24 15:03</div><div class="msg">nothing comes to my mind, but I can keep an eye open</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-05-11/181684552369_66f21f8981bdb0f83bdd_72.jpg" /><div class="message"><div class="username">cryptowanderer</div><div class="time">2018-04-24 17:44</div><div class="msg">`clusterfucky` is definitely an even better word than umbrage!!</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-12-19/289021559940_764a5c704a5a99098d7a_72.jpg" /><div class="message"><div class="username">oskarth</div><div class="time">2018-04-25 03:23</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-17/348134203537_1bc2a6f28471cf6ec828_72.png" /><div class="message"><div class="username">hutch</div><div class="time">2018-04-25 16:37</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-10-04/251566892466_e37667e6064fe542e7d7_72.jpg" /><div class="message"><div class="username">naghdy</div><div class="time">2018-04-26 01:11</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 09:49</div><div class="msg">Here is a tentative example of what a simple Peepeth (decentralized twitter) client would look like:
|
|
```
|
|
{:extension/meta
|
|
{:name "Light Peepeth client"
|
|
:description "A light client for Peepeth using extensions"
|
|
:documentation "..."}
|
|
|
|
:extension/lifecycle
|
|
{:on-activated #event [:fetch-all-posts]}
|
|
|
|
:events/fetch-all-posts
|
|
[:ethereum/logs {:address "0xfa28ec7198028438514b49a3cf353bca5541ce1d"
|
|
:topics ["PeepEth()"]
|
|
:inputs [{:name :hash :type :string}] ;; Allows to decode transaction data
|
|
:on-log #event [:fetch-ipfs]}] ;; A map of decoded data will be injected
|
|
|
|
:events/fetch-ipfs
|
|
(let [{:keys [hash]} #properties m]
|
|
[:ipfs/get {:hash hash
|
|
:on-success #event [:db/append {:path [:all-posts]}]}])
|
|
|
|
:queries/all-posts
|
|
[:db/get {:path [:all-posts]
|
|
:limit 20}]
|
|
|
|
:views/post
|
|
;; TODO get account details
|
|
;; handle threads
|
|
(let [{:keys [content untrustedAddress untrustedTimestamp parentID]} #properties m]
|
|
[view {}
|
|
[view {}
|
|
[text {}
|
|
untrustedAddress]
|
|
[text {}
|
|
untrustedTimestamp]]
|
|
[text {}
|
|
content]])
|
|
|
|
:styles/screen
|
|
{:background-color #?(:android :green
|
|
:ios :red
|
|
:web :white)}
|
|
|
|
:i18n/title
|
|
{:en "Peepeth !!"}
|
|
|
|
:extension/main
|
|
[screen {:style #style [:screen]}
|
|
[toolbar {}
|
|
[text {}
|
|
#i18n [:title]]]
|
|
(let {posts #query [:all-posts]}
|
|
[list {:data posts
|
|
:template #view [:post]}])]}
|
|
```</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 09:50</div><div class="msg">@andreap @janherich Any thoughts ?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 09:50</div><div class="msg">@denis-sharypin @cryptowanderer @rachel I am also interested with the opinion of less technical people: would you write / edit something like that?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/8f5d17c2210ba9813f6612330fc0fc66.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0014-72.png" /><div class="message"><div class="username">janherich</div><div class="time">2018-04-26 09:55</div><div class="msg">@jeluard Looks very declarative and clear to me, great job !</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-03-13/329132457109_199841cd908ca7faa97f_72.jpg" /><div class="message"><div class="username">rachel</div><div class="time">2018-04-26 09:59</div><div class="msg">Peepeth! Agreed, it looks great to my eyes?well done.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-05-11/181684552369_66f21f8981bdb0f83bdd_72.jpg" /><div class="message"><div class="username">cryptowanderer</div><div class="time">2018-04-26 10:07</div><div class="msg">@jeluard what db are you appending to there? Otherwise this definitely looks like the sort of thing I could wrap my head around and write :+1: Always worry about the indentations because - being a JS scriptkiddy, I've not really had to worry about stuff like that before - but otherwise looks good :sweat_smile:</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 10:30</div><div class="msg">The db part is internal in memory db, the whole application state. Specifically here this extension data.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 10:31</div><div class="msg">About indentation: I expect we will make tooling and this file will eventually partially hidden.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 10:32</div><div class="msg">Even if not, Clojure has very good tooling related to those structures and it's now becoming a feature.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 10:32</div><div class="msg">See <a href="https://shaunlebron.github.io/parinfer/">https://shaunlebron.github.io/parinfer/</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 10:41</div><div class="msg">Note that Peepeth is a real thing (<a href="https://peepeth.com/welcome">https://peepeth.com/welcome</a>) so that would be an alternative client.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 10:42</div><div class="msg">It can be done because Peepeth stores all tweets in IPFS and the whole thing is a smartcontract</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-05-11/181684552369_66f21f8981bdb0f83bdd_72.jpg" /><div class="message"><div class="username">cryptowanderer</div><div class="time">2018-04-26 10:56</div><div class="msg">Yeah, was looking at parinfer when you, Eric and Andrey were talking about it. Just noting the indentations as a potential hurdle for web-dev fools like me :wink: So it is not the `app-db` itself that it is writing to, correct? But each extension does clearly have a way to store/persist data easily (which is what I really care about by asking this)</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-05-11/181684552369_66f21f8981bdb0f83bdd_72.jpg" /><div class="message"><div class="username">cryptowanderer</div><div class="time">2018-04-26 10:57</div><div class="msg">Yeah, and they actually had a really cool doc about exactly why you might want 2 different clients for the same data!!! :mindblown: <a href="https://docs.google.com/document/d/1JUGZ-39pMJ9p_Udx9Myeua0GegsD9G7hihJ1UaVlPhQ/edit#heading=h.f3ljbspna7ej">https://docs.google.com/document/d/1JUGZ-39pMJ9p_Udx9Myeua0GegsD9G7hihJ1UaVlPhQ/edit#heading=h.f3ljbspna7ej</a></div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-05-11/181684552369_66f21f8981bdb0f83bdd_72.jpg" /><div class="message"><div class="username">cryptowanderer</div><div class="time">2018-04-26 10:58</div><div class="msg">so we could def get in contact with them if it works and let the world know :wink:</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 10:58</div><div class="msg">Indentation is not mandatory actually, just nesting. But I get your point.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 10:59</div><div class="msg">Right each extension will have some safe isolated place for its state, access to part of the global state, and this will be persisted.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-16/346978770624_9e34aabb0e7c70909e09_72.jpg" /><div class="message"><div class="username">denis-sharypin</div><div class="time">2018-04-26 11:00</div><div class="msg">if I could read would I become a clojure dev?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 11:04</div><div class="msg">Almost! At least we can give you the official sticker!</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-09/343266157284_8adfd5971885ed5fa7e6_72.jpg" /><div class="message"><div class="username">richardcatalano</div><div class="time">2018-04-26 15:09</div><div class="msg">Decentralized twitter...pretty sure I know a team building that...particularly for censorship resistance. <a href="http://Gab.ai">http://Gab.ai</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 15:45</div><div class="msg">Yes, peepeth is a real thing too</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-26 15:46</div><div class="msg">WDYT about the syntax?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-27 07:26</div><div class="msg">FYI next Tuesday is bank holiday in France. I will also be off next Monday.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-27 08:45</div><div class="msg">@jeluard set the channel topic: <a href="https://ideas.status.im/ideas/101-extensions">https://ideas.status.im/ideas/101-extensions</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-27 10:05</div><div class="msg">@andreap If you have some time today would be nice to investigate how to retrieve IPFS files from JS. Natively would be awesome, using IPFS gateways otherwise is fine at first.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-27 10:05</div><div class="msg">yes, on it!</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-27 10:06</div><div class="msg">Awesome!</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-27 15:05</div><div class="msg">I had a look, seems it should be pretty easy to fetch files, uploading them is the responsibility of the author of the extension. There are a few things we might want to address.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-27 15:05</div><div class="msg">For example, are we going to run our own nodes ? We need to "pin" the data if we want to be persisted if not it will eventually be garbage collected</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-27 15:06</div><div class="msg">Also, where are we going to show the list of extensions, are we going to host it ourselves?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-27 15:06</div><div class="msg">but otherwise it looks like ipfs fits the bill</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-27 15:12</div><div class="msg">For now it's mostly for tests purpose so it's ok if garbage collected (now it's definitively interesting to know more later)</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-27 15:13</div><div class="msg">Same for discovery, not in the foreseeable future.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-27 15:14</div><div class="msg">Could you look at some ClojureScript snippet to fetch files from a hash? Probably callback based or similar.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-04-27 15:14</div><div class="msg">If we have some form of mime type as well as content that's even better!</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-04-27 15:16</div><div class="msg">sure thing, i ll write up a proof of concept</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-02-19/317312541699_2fd60c283b2a9a58bf87_72.jpg" /><div class="message"><div class="username">iuri</div><div class="time">2018-04-30 13:45</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-04-10/345048961478_60c5a0cb079da69aa25c_72.jpg" /><div class="message"><div class="username">ericmastro</div><div class="time">2018-04-30 13:46</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-03 08:14</div><div class="msg">@andreap Can you enlighten about IPFS?
|
|
Some questions:
|
|
* Does the hash used as ref reflect file content somehow?
|
|
* I understand a hash points to multiple file? Is there some hierarchy?
|
|
* How about file versioning?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 08:15</div><div class="msg">1) Yes, the hash is the hash of the content, so it's immutable</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 08:15</div><div class="msg">2) A hash can point to a directory, which contain multiple files, it is just like a filesystem, where hashes are filenames/directory names</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 08:16</div><div class="msg">3) A new "version" would create a new hash, I don't think it's supported natively, but we probably don't need it</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-03 08:18</div><div class="msg">So the main hash reflect the content / hierarchy(?) of all files?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 08:18</div><div class="msg">correct</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-03 08:19</div><div class="msg">So if I use things like `ipfs-files-write` I will get a new hash?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 08:29</div><div class="msg">i don't know of that function, but you get a new hash if the content has changed</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-03 08:36</div><div class="msg">Are you familiar with SWARM? If so, how would they compare with regards to those points?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 09:25</div><div class="msg">not very familiar, but I don't think is nowhere near to be used</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 09:25</div><div class="msg">otherwise fairly similar</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-03 09:26</div><div class="msg">So a content based hash references a set of files ?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 09:28</div><div class="msg">oh would have to check that, in a call right now though</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-03 09:29</div><div class="msg">Sure no worries</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-05-11/181684552369_66f21f8981bdb0f83bdd_72.jpg" /><div class="message"><div class="username">cryptowanderer</div><div class="time">2018-05-03 11:14</div><div class="msg">@iuri or @richardcatalano are likely the best people in this slack to ask about Swarm...</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 12:29</div><div class="msg">looked a bit around swarm, not in details though, but seems basically fairly similar for what we are trying to do (you can upload "directories"), it's less of a filesystem but more like distributed storage. I think the capabilities in our case are equivalent ( the only thing is that swarm does not ensure persistence as of now, afaik, while with ipfs you can pin stuff)</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/a5f396eba057f6f6ce181fd462ff2b1a.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0025-72.png" /><div class="message"><div class="username">goranjovic</div><div class="time">2018-05-03 13:42</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-03 15:06</div><div class="msg">Just shared initial POC for the extensions implementation: <a href="https://github.com/jeluard/pluto">https://github.com/jeluard/pluto</a>
|
|
Not functional but provides some overview of how it works. cc @andreap @janherich</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-03 15:06</div><div class="msg">@andreap There is some placeholder for the IPFS layer. Can you take a look when you have some time?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-03 15:11</div><div class="msg">will do</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-04 06:16</div><div class="msg">Specifically, given a hash, callback should be called with a map of filename / file content as a string.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-04 06:17</div><div class="msg">@andreap Looks like with POC3 swarm is now usable, at least with a gateway.
|
|
Do you mind looking at it too? <a href="https://swarm-docs.s3-eu-west-1.amazonaws.com/index.html">https://swarm-docs.s3-eu-west-1.amazonaws.com/index.html</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-04 06:17</div><div class="msg">yes, I can do that</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-04 06:44</div><div class="msg">It is usable for our case, the only concerns are: 1) Likely it will be breaking changes in the next versions 2) Storage is not ensured, so we might end up loosing the data (at the moment we would have to access the data to increase the chances of the node to keep it, while ipfs we would have to run our node and pin it, so swings and roundabouts)</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-04 06:47</div><div class="msg">Not an issue for now, it's just to validate our API usage and make quick tests</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-04 06:47</div><div class="msg">But worth keeping those info documented somewhere</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-04 06:48</div><div class="msg">sure</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-04 06:48</div><div class="msg">BTW If you can also add some quick doc on how to upload a directory to swarm and IPFS that would be awesome! :sweat_smile:</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-04 07:06</div><div class="msg">will do, what about "There is some placeholder for the IPFS layer. Can you take a look when you have some time?" should we go for IPFS or things have changed?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-04 07:10</div><div class="msg">Ideally if swarm is ok it would be our go to. But if it's not too much work I think both options would be great.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-04 07:10</div><div class="msg">ok, it adds a bit of work but we can make it configurable</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-04 07:11</div><div class="msg">Just to be sure we are on the same page: I am talking about implementing this dumb protocol: <a href="https://github.com/jeluard/pluto/blob/master/src/pluto/storage.cljc">https://github.com/jeluard/pluto/blob/master/src/pluto/storage.cljc</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-04 07:12</div><div class="msg">And have 2 implementations: one for swarm, one for IPFS</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/4f643ff2e520e1b103a3c81fe6d4267c.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F3654%2Fimg%2Favatars%2Fava_0023-72.png" /><div class="message"><div class="username">andreap</div><div class="time">2018-05-04 07:12</div><div class="msg">yes, on the same page!</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-04 07:12</div><div class="msg">:+1:</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-07 13:35</div><div class="msg">Thanks @andreap for the IPFS PR! Somehow didn't receive GH notification. Will play with it!</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-07 14:17</div><div class="msg">FYI both Tuesday and Thursday are bank holidays here in France :sweat_smile:</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-08 14:47</div><div class="msg">@janherich @andreap So I guess you will move to others swarms soon? :sweat_smile:</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-03-06/324554464353_18f48763243f656a4978_72.jpg" /><div class="message"><div class="username">patrick771</div><div class="time">2018-05-09 08:41</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-10 12:13</div><div class="msg">I just wrapped the first part of extensions MVP before moving back to improving DApps support.
|
|
See an example of very basic extension being loaded from IPFS and interpreted in a web browser: <a href="https://jeluard.github.io/pluto/">https://jeluard.github.io/pluto/</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-05-10 12:14</div><div class="msg">This swarm is now on hold and will be resumed presumably after beta is launched.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-03-13/329132457109_199841cd908ca7faa97f_72.jpg" /><div class="message"><div class="username">rachel</div><div class="time">2018-05-10 12:22</div><div class="msg">Your progress so far is exciting!</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-03-08/150717543185_46c3b78ed6fd88d4b338_72.jpg" /><div class="message"><div class="username">anna</div><div class="time">2018-05-15 07:18</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-01-09/125597416918_4b7b095b4e695e7a8be1_72.jpg" /><div class="message"><div class="username">carl</div><div class="time">2018-05-21 16:20</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-06-14 16:33</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-06-14 20:20</div><div class="msg">Would be nice if extensions become cross compatible with other ethereum browser, like Mist. Certainly would be an enhancement to web3 if web3 extensions become cross compatible in between Mist.
|
|
This extensions could also make possible that Chat, Wallet and Profile tabs become dapps that might use extensions and permissions, so Mist would be able to use also this chat, wallet and profile. I know that Mist could build compatible chat with Status with no problems, but with extensions we can make a way that chat is an dapp that requires certain extensions (contacts extension, for example). Mist wallet is already openable in Status app, btw.
|
|
Then instead of Mist rebuilding the chat app for their app, they would only support/default-install/user-install the extensions required and chat dapp from Status would work in Mist aswell.
|
|
At the end it does not matter if they are using Mist, Status or whatever browser, as long the user become part of decentralized systems (especially powered by ethereum & status). Having other browsers supporting "status dapps" instead of most of them just working in Status app is better for Status. And we would be making Status app so what users want that when they need a mobile wallet they would go for Status because it already supports all they use in wallet.
|
|
This might be a more advanced step then current next step, but I just wanted to share this vision with you.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-10-03/448433513781_35b198abdf960e874693_72.png" /><div class="message"><div class="username">jarradhope</div><div class="time">2018-07-02 14:39</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-10-03/448433513781_35b198abdf960e874693_72.png" /><div class="message"><div class="username">jarradhope</div><div class="time">2018-07-02 14:40</div><div class="msg">@jeluard would love to get the download on what the plans are for 3rd party extensions, since I saw the jail is going to be deprecated??</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-02 14:42</div><div class="msg">`jail is going to be deprecated` I guess you are talking about the bot API short term simplifications?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-02 14:44</div><div class="msg">There will definitely be a jail for extensions providing custom code. Will be very similar to the current one, probably using message passing technics</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/8f5d17c2210ba9813f6612330fc0fc66.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0014-72.png" /><div class="message"><div class="username">janherich</div><div class="time">2018-07-02 15:00</div><div class="msg">It?s not so much that the `Jail is going to be deprecated` (bad wording, my mistake), more like `we won't be using jail where it's holding us back and causing perf problems` :slightly_smiling_face:</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/8f5d17c2210ba9813f6612330fc0fc66.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0014-72.png" /><div class="message"><div class="username">janherich</div><div class="time">2018-07-02 15:01</div><div class="msg">I think that we should still have the possibility to fire-up jail cell where necessary, it's just it's not necessary now?</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-04 17:57</div><div class="msg">What if I want to create an Dapp that is create joint accounts between Status Users. This is fairly simple in terms of architecture, as simple as being a multisig between the two users. I want to use this simple example to elaborate on about extensions:
|
|
- how dapps extensions are installed?
|
|
- where dapps/extensions will store their own data, such joint accounts user have?
|
|
- how contacts will be shared with allowed dapps?
|
|
- what kind of contexts will be extended?
|
|
- a long tap in user contact would allow to do actions with that user, such create joint account.
|
|
- user chat screen can have an extension interaction, such including links to create or view joint accounts with user.
|
|
- joint account group chat displaying and requesting authorization of members for joint account managing/transaction.
|
|
|
|
I think we need to first define what contexts we want to enable extensions. </div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-04 17:59</div><div class="msg">I would make it the more extendable possible in all ways, but that can lead to bad use of extensions. However we can curate extensions in a smart contracts registry with our SNT democracy.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 06:37</div><div class="msg">Hey @3esmit! Thanks for your interest in extensions! Always great to get feedback so that we can provide the right abstractions and data!
|
|
A good background read about extensions is <a href="https://docs.google.com/document/d/1-8Wctqqsh1OSaDu6BKfwBGc5rhJFsGdwYUpHtGLbzhg/edit">https://docs.google.com/document/d/1-8Wctqqsh1OSaDu6BKfwBGc5rhJFsGdwYUpHtGLbzhg/edit</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 06:42</div><div class="msg">To make sure we are on the same page, could you detail the following concepts?
|
|
`joint accounts` , `context`</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 06:43</div><div class="msg">What exactly will be extensible in status is still open for discussion. Looking for your feedback on this!</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 06:47</div><div class="msg">Extensions will be stored in decentralized storage, ideally SWARM. They can also store data in those storages but that's up to each extension.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 12:54</div><div class="msg">Joint account was an example, it's an account managed by two or more people.
|
|
Context is where extension can be installed. For exmeple as a chat bot, in a profile menu, in wallet or etc</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 12:57</div><div class="msg">Ok. Not quite sure how joint account could fit but we should discuss more.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 12:57</div><div class="msg">About context: I call that hooks. See some examples here: <a href="https://docs.google.com/document/d/1ixyYDKKz_cMJd3TaeBLXLGKiUJRkGlq1AWTkm2dYYfk/edit#">https://docs.google.com/document/d/1ixyYDKKz_cMJd3TaeBLXLGKiUJRkGlq1AWTkm2dYYfk/edit#</a></div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 12:58</div><div class="msg">Very interested in hearing about your hooks ideas! But my opinion is that we want to be fairly flexible.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 14:29</div><div class="msg">Let's get many ideas of extensions we can build for Status, and design how all them would interact with Status.
|
|
This will help us design better API/hooks.
|
|
|
|
I will keep the Joint Account example, because its a fairly common usecase and Mist support it, but I will extend to others now:
|
|
|
|
- Joint Account
|
|
Alice and Bob are friends and share a house, they want an joint account contract for their house expanses, so every month or as possible Alice and Bob deposit a reserve. The contract they use is a Multisig Contract. How we can make an extension for Multisig that makes easy for Alice and Bob manage this account?
|
|
I suggest an extension that opens a *private chat group with a chatbot* between the participants of multisig, where they can communicate about the transactions and request or approve transactions to this multisig wallet
|
|
Also, we need to make a button to create a joint account, the + button in home screen could lead to some (more) options where user can create more of extensions listed by our democracy.
|
|
So Alice press +, search for joint account, see details of extension publisher, when it was added, other reputation info, comments, etc, and then it seems good to go, Alice clicks Create new "Joint Account" and then it goes to the extension specific setup, where it can select several addresses (pasted or not) and other Multisig configs.
|
|
|
|
- Identity:
|
|
Identity is added just like a joint account in the example above, but it dont have chat bot nor groupchat created.
|
|
Identity extension would be able to "capture" transaction requests from dapps/other extensions and pass them to the Identity Contract to execute by the contract address.
|
|
Users can have more then one identity and more then one key, so their keys/identities can be selected. Selecting a key enables selecting an identity this key have ACTION purpose, if selected some Identity, then the transaction would be sent through Identity.
|
|
|
|
- GasRelay:
|
|
Gas relay is an extension that works in top of other extensions.
|
|
Gas Relay extension would look if user is using Identity that supports Gas Relay, or it have a token that it contract supports Gas Relay. For this cases, it would supports choosing the Gas Token, and instead of making a direct call, it would use a signed message and broadcast it to whisper.
|
|
|
|
- Fungible Assets (ERC20)
|
|
Fungilbe assets should become extensions, the current behavior of tokens should be supported through extensions, but more if needed
|
|
|
|
- Non Fungible Assets (ERC721)
|
|
Just like ERC20, but slight different parameters of transfer, wallet and message rendering...</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 14:32</div><div class="msg">Cool thanks! Now we will have to translate this into hooks (contexts) that needs to be extensible.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 14:32</div><div class="msg">e.g. for ERC721 it can be done using extensible chat commands.
|
|
What about the others?</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 14:43</div><div class="msg">we need to think in wallet about ERC721..
|
|
I was thinking that we could have like this:
|
|
CryptoKitties 10 >
|
|
CryptoStrikers 5 >
|
|
|
|
And then when you tap on them it opens the extension dapp</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 14:45</div><div class="msg">The same could be done for ERC20
|
|
SNT 123532.23543 >
|
|
|
|
Then when you tap, if the extension have it, it can open a SNT specific tap, where you could manage specific SNT stuff (like Delegates, if we have it, in future)
|
|
|
|
All can be in the same view, user could reorganizate or "star" some of them...</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 14:46</div><div class="msg">Or we can have multiple tabs, where the extension could create a tab for placing itself on it, for example:
|
|
SNT would use a tab called "Tokens"
|
|
CryptoKitties and CryptoStrikers would use a tab called "Collectables"
|
|
Status Stikers would use a tab called "Stickers"
|
|
|
|
User could edit in settings what tabs it want to display.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 14:48</div><div class="msg">About translating everything into something more "organizated", I can try it in hackmd or google docs, and then we can put all together with an idea or discuss</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 14:48</div><div class="msg">We have some basic support for ERC721 in wallet now. And we plan to make it extensible in the future</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 14:48</div><div class="msg">Hackmd sounds good!</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 14:49</div><div class="msg">I think this extensions should refactor wallet, so this would be rewritten</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 14:49</div><div class="msg">The current support certainly good as training for extensions and I think most can be reused, but as an extension</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 14:57</div><div class="msg">Im thinking about ERC20 support, and how I could build another extension to impersonate a token send and fool people. Any idea?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 15:01</div><div class="msg">Like sending fake messages that mimic the ones `send` command creates?</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 15:02</div><div class="msg"><a href="https://hackmd.io/_ShLOsVTRY-wgxQmiGSiWQ#">https://hackmd.io/_ShLOsVTRY-wgxQmiGSiWQ#</a></div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 15:03</div><div class="msg">I'm thinking that...
|
|
|
|
I have an extension for some token, lets say DAI tokens..
|
|
Then I send this Token by chat command to other user.. This other user dont have DAI token extension.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 15:03</div><div class="msg">In this case, how the chat message should safely render in user that dont have the extension?</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 15:04</div><div class="msg">If we want to render anyway, if user have or not the extension, then I could make a fake SNT extension and make a fake token contract that looks like SNT, of course would be easy for an advanced user to spot the scam, but for newbie users would not be so obvious.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-07-05 15:07</div><div class="msg">Right it is very important to consider those things when adding new extensions hooks.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-07/237395147762_41041c5be71b2b3bc1d1_72.jpg" /><div class="message"><div class="username">3esmit</div><div class="time">2018-07-05 15:09</div><div class="msg">When I'm designing those stuff I always try to make a scam in top of it, its kind of automatic in my mind, but with white hat.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-09-12/240066984213_b35ca6f6b9658bf5cabb_72.jpg" /><div class="message"><div class="username">jonny.z</div><div class="time">2018-07-10 02:04</div><div class="msg">has joined #101-extensions</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-10-03/448433513781_35b198abdf960e874693_72.png" /><div class="message"><div class="username">jarradhope</div><div class="time">2018-08-03 21:42</div><div class="msg"><a href="https://agoric.com/2018/07/28/agoric-releases-ses.html">https://agoric.com/2018/07/28/agoric-releases-ses.html</a></div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-10-03/448433513781_35b198abdf960e874693_72.png" /><div class="message"><div class="username">jarradhope</div><div class="time">2018-08-03 21:42</div><div class="msg">> SES?s ability to keep information secure and hidden from other JavaScript programs executing in the same environment</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-10-03/448433513781_35b198abdf960e874693_72.png" /><div class="message"><div class="username">jarradhope</div><div class="time">2018-08-03 21:42</div><div class="msg">@jeluard would make a great extension language</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-08-06 07:04</div><div class="msg">@jarradhope Very interesting. Definitely something we want to leverage.</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-10-03/448433513781_35b198abdf960e874693_72.png" /><div class="message"><div class="username">jarradhope</div><div class="time">2018-09-28 07:03</div><div class="msg">@jeluard @janherich what do you think about a semi unsupported app-wide userscripts that allowed power user to paste agoric ses code, but then limiting access to wallet/tx signing screens (somehow magically) </div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2018-10-03/448433513781_35b198abdf960e874693_72.png" /><div class="message"><div class="username">jarradhope</div><div class="time">2018-09-28 07:05</div><div class="msg">Would be a great way for people to build dapp ideas ontop of Status as a base, while we don't officially support such unrestricted access, we can treat it like a way for users willing to risk their security as ideas market place for missing features</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-09-28 07:16</div><div class="msg">Definitely there is a need for this. You would still need a way to plug into status and access data/functions which is what `extensions` allow essentially.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-09-28 07:18</div><div class="msg">It's not fully fleshed out yet as we are still finishing the base layer but relying on jails running agoric JS flavor is the one of the best option.</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-09-28 07:18</div><div class="msg">> Would be a great way for people to build dapp
|
|
Are you thinking fullscreens DApps, as we have right now in the browser?</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-10-04/251566892466_e37667e6064fe542e7d7_72.jpg" /><div class="message"><div class="username">naghdy</div><div class="time">2018-10-10 08:12</div><div class="msg">Are we good to archive this channel? Is there a place to talk Extensions elsewhere (email/Status/Discuss)?</div></div></div><br/>
|
|
<div><img src="https://secure.gravatar.com/avatar/2674ec9e762bcd011c9542c1b787ce13.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F66f9%2Fimg%2Favatars%2Fava_0019-72.png" /><div class="message"><div class="username">jeluard</div><div class="time">2018-10-10 08:13</div><div class="msg">Yes please! #status-core-dapps in status is the new place</div></div></div><br/>
|
|
<div><img src="https://avatars.slack-edge.com/2017-10-04/251566892466_e37667e6064fe542e7d7_72.jpg" /><div class="message"><div class="username">naghdy</div><div class="time">2018-10-10 08:13</div><div class="msg">@naghdy archived the channel</div></div></div><br/>
|
|
</div></body></html> |