MaidSafe Dev Update - October 4, 2016 – TEST 10

Today we are releasing the second dev tutorial :tada: The new API functionalities of SAFE Launcher enable developers to build apps with dynamic content. To showcase these features we are providing a tutorial (again) that enables users to comment on content using their public name. This tutorial uses Public Appendable Data as opposed to the previous tutorial which was using Private Appendable Data.

The comments plugin we built can be added to any HTML page. In addition to letting people add comments, it also enables the website owner to delete comments and block/unblock users. The ability to block users is enabled by the filter field of Appendable Data. For this tutorial, we use a blacklist (as opposed to a whitelist). Everyone except the public keys (people) listed in the filter will be allowed to comment (append data).

We are releasing this new tutorial as part of TEST 10. We had to start a new test network because the data that was stored with TEST 9 is incompatible with the new version of SAFE Launcher (this is caused by a few changes from safe-mail-tutorial and safe-demo-app). We are planning to bring TEST 9 down tomorrow.

SAFE Launcher now supports the APIs needed for functionality such as a comments plugin. We also had to update the SAFE Mail Tutorial app in order to make it compatible with this new version of SAFE Launcher.

SAFE Launcher v0.9.1

Each client account is limited to 500 PUTs. A PUT is a request to store a single chunk on the network (a file may contain many chunks). The maximum chunk size is 1 MB.

Please be aware that this test network will be reset periodically, wiping all data that is stored on it. We will announce this in a Dev Update (when possible) prior to taking it down.




  • Requires safe_core 0.21.2
  • Web proxy removed
  • Low level api updated to match one to one with safe_core

Known limitations

  • Only Rust logs are created. UI logs are currently disabled.

Website Comments Plugin v0.1.0

Enable comments on your SAFE website!



SAFE Demo App v0.6.1

When uploading files using SAFE Demo App, the maximum file size is 25 MB per file.




  • Reverse DNS specifier updated in package.json
  • Updated service links on UI to safe:// scheme

SAFE Browser v0.2.11

You need to use SAFE Browser in order to interact with the SAFE Blog example. The web proxy has been removed from SAFE Launcher.



SAFE Mail Tutorial v0.1.1

An example of an email app skeleton to allow developers to pick it up and add some basic functionality for a fully working email MVP. Then add further functionality using the APIs described in this tutorial, to make amazing communication tools in SAFE. We have tried very hard to not make a user-facing app as we want developers to see this as a tutorial and know they have everything they need for communications apps in SAFE and a bit more.




  • Updated to work with launcher v0.9.1


If you need help with anything related to SAFE Launcher or SAFE Demo App, please use the #support category on the forum.

If you need help with anything related to the Website Comments Plugin or the SAFE Mail Tutorial, please use the #support category of the SAFE Dev Forum.

Where should I report issues?

GitHub is the best place to report issues and bugs. Using GitHub will help us (MaidSafe) manage issues and prioritise work within the Dev team faster.


We have started with the async overhaul of safe_core using futures. This of course affects self_encryption too and that crate has been updated to use futures and the async paradigm. Since futures is a very recent introduction in rust and is going through stabilization phase, we had to study the breaking changes and general design direction of it. With that we have coded a few proof of concepts and will evaluate and start implementation this week.

Routing & Vault

Disjoint Groups is underway. Fraser has started to integrate the new routing table code with the routing library.

Bart is the newest member of the MaidSafe team. He started working with the routing team this week, looking deeper into various consensus mechanisms and becoming familiar with our code and style. Welcome @bart!

The routing team is also starting to discuss RFC 45 – Node Ageing.

This is an RFC to prevent collusion and group targeting attacks and more. This also brings rank into the heart of the routing library and will make great use of data chains to allow the network to confirm node activities and behaviour. A slight addition is the ability to measure a node against a minimum resource requirement on joining and every relocation event. This takes us closer to handling less capable nodes. It does not address re-publishing data though, that is data chains.


As the team is growing and new people are “bedding in” we are continuing to receive and act on some very good resumes and the new funding will enable us to continue to aggressively recruit across all areas of the company. Engineering and developer outreach will experience growth, and we will also look to start building a channel management team (in time) to assist in fostering relationships with the company’s partners.

Of course the community and continuous improvements all help here, both in getting the name out and also helping us test incremental improvements.


As you are all aware the BnkToTheFuture round has just over a week to go and we are over the minimum requirement. Your continued effort in raising awareness of the campaign in the last 7 days would be very much appreciated. While it looks like we will fall short of our target, we should still do everything we can to maximise the effort and work put into this funding round. The recent news regarding joint ventures shows our intent to “partner to grow”. This is a lot of work, but we believe that it is a very effective route to market and one we will be spending a lot of our efforts on in the medium term.

Thanks you to all that invested, supported and helped out with this round. As usual we are humbled by the selfless time and effort that so many of you gave, it is noticed and very much appreciated!


Much appreciation to everybody’s hard work!


Great update! You guys have been busy!

It is good to see another piece of the safe app puzzle clicking into place too, with the public appendable type tutorial - I look forward to playing with this!

Public appendable data… hmm, that sounds a bit like what a block chain does! :wink:


Nice, and welcome @bart!


Does it means that safe sites will only be accessible only within the safe browser ? now and in production also ?

Test comments: safe://blog.chris



For us at the moment, yes, but always open to change and for others to have their own proxy etc. So it’s not a limitation we enforce in any way on the network.


Great stuff. Thanks all.

1 Like

The new comment feature will help out @edapa team that’s working on a YouTube like site :smile: should make coding up comments under videos a bit easier. Hope it’s okay I mention you here @edapa. As for the core team keep it comin!!! I can’t believe how quick things are happening here, very excited about team expansion. Although if the new devs could add themselves or be added under maidsafe orginisation on github so we could stalk them, @polpolrene and I would really appreciate that :yum:


Is there a way to have an individual comment section to different divs/blogposts?

Edit: nevermind, its derived from url, so a seperate page/url should solve the problem

:+1: Don’t forget to update the photos at About Us | MaidSafe :wink:


Very nice update.

Mail me at: polpolrene

Welcome on board @bart!

Great choice. Supporting several browsers and a proxy means less security due to trackers and cookies and more work for the team. let external devs build some plugin if they want. I don’t miss it at the moment.

@joshuef That’s one hell of a speedy browser! Loads faster than chrome and firefox on my system :+1:


Was not expecting that demo!!!

It’s funny how easily these bits are falling into place. I have heard a few people say that the project has not delivered this or that yet, but the devs seem to be knocking them out very quickly now that the core is starting to get locked in.

I think the deliverables will increase exponentially as more and more of the network gets gift wrapped and delivered!!

Such a great update! Congrats everyone!


Ha, awesome. Not really my doing, I’m just SAFE modding it (due props to electron and @PaulFrazee there!), but thanks nonetheless :smiley:


Select a page where you added the comments plugin and enable the option to allow comments for that page by clicking on the Enable Comments button. This button is only visible for the website owner.

I can’t see the Enable Comments… and wonder how the browser would know I’m owner as its not requested app authorisation… though perhaps its preferred in some way.

Edit: … the .zip works… initially had tried the example
Edit2: example has been fixed


Thank you for the warm welcome :slight_smile: I only just started working for MaidSafe and I’m already learning a lot, which to me is awesome :smiley:

If you want to drop a comment or an email somewhere, you can check safe://blog.ebvalaim (I’m actually taking this opportunity to shamelessly advertise a side project of mine there :p) or send a mail to ebvalaim :wink:


DIY SAFE10 website list =>

I notice that beaker seems to have some form of incline to caching and so updates to a page are not always seen. I proved that by linking the same directory to another DNS… the one not visited shows correctly, where the url already visited remained old.


So as far as I can gather. With whats currently available one should be able to create a reddit like site for instance?

One wouldh have to let users create posts as Appendable Data, and the appendable data needs to create a new html so that a new comment field can be generated per post? (edit 2: and for subreddit basically the same with posts put inside this again?)

Trying to wrap my absolutely no-programmer brain around it and I must say the dev tutorials are quite understandable for someone with very basic knowledge of html/css/js.


Someone’s added hyperlink to a comment on safe://diy.yvette/ which has me wonder the limit of code that a user can add into a page. If html is allowed, then is that limited to anchor links and other normal comment functions the like that discourse offers?