Hello everyone! Welcome to our first newsletter.
Under normal circumstances we would open this newsletter with running you through the progress we have made with developing Wildland. But as you very well know, these circumstances are far from usual.
The eyes of the whole world are currently on Ukraine. The invasion has deeply moved us all here at Wildland, as we have Ukrainian team members and close friends living in the areas that are currently under Russian attack. We are providing them with whatever help we can, and asking you to join in the efforts to stop the devastating war waged by Putin's forces.
The crypto community has quickly mobilized to organize a large-scale fundraising campaign to assist Ukrainians in a time of need. Donors from all around the world contributed more than 10 million USD in a matter of hours. And a few days later the crypto donations amounted to more than 50 million USD. However, more funds are still needed.
There are several ways in which we can take part in this international effort - there's the official crypto fundraiser by the Ukrainian government:
You can also find a crypto-native crowdsourcing campaign. To make it as easy as possible to donate ERC-20 tokens to the cause, Uniswap has created an interface that swaps any token for ETH and then sends it directly to the Ukrainian government in a single transaction.
Non-crypto payments, of course, are also possible, as well as encouraged. The Polish Effective Altruism Foundation has compiled a list of well-vetted organizations providing assistance to people in Ukraine and to Ukrainian refugees to which you can donate to using fiat.
Putin's war of conquest has been met with universal condemnation and major economic sanctions have been imposed on Russia. As a result the price of the ruble has sunk to new lows and ruble-denominated Bitcoin volumes have surged to new highs. The fear that Russia could use cryptocurrencies to evade sanctions has led the Ukrainian government to call for (centralized) crypto exchanges to block the addresses of all Russian and Belarusian users. So far, the major exchanges have agreed only to block accounts belonging to people targeted by sanctions. As Binance's spokesman has explained, "we are not going to unilaterally freeze millions of innocent users' accounts. Crypto was meant to provide greater financial freedom for people across the globe". This stance has lead to many discussions about the purpose of crypto, and how the community around it should respond to such calls. Here's an interesting thread:
While many important talking points are being raised online and with the Internet being used to help those in need, we have to remember about the dark side of the web during conflict: disinformation. We urge you (and ourselves!) to stay vigilant, use fact-checking tools and report false information.
Wildland Updates
Despite the circumstances we are trying to keep up with the development of Wildland. Our work is currently structured around two goals we are working towards simultaneously:
1. Building Cargo: a user-friendly replacement for popular cloud storage services
Cargo will be a user-friendly app that will allow users with no advanced skills to ditch their current cloud storage providers and replace them with an alternative which treats them as agents with interests that matter, and not as bits in a revenue stream.
The app is being built on top of the Wildland client, which we made available to the public last year. The client is a reference implementation of the Wildland protocol written in Python. The 0.2 version is available for download from our GitLab repository.
The Python client is currently being optimized for UX and overall performance but we're not adding any new features to it.
2. Writing a new Wildland core in Rust
Instead of further developing the current Wildland core, we decided to write it anew in Rust. There are several reasons behind this decision. We have learned a lot, not only through developing the Python core, but also by using the initial versions of the Wildland client in our day-to-day operations. This experience has enabled us to identify several ways in which we can improve upon our initial design, especially in terms of user experience, and the overall client functionality.
Additionally, Rust has better memory management than Python, and excellent cross-platform capabilities across Linux, macOS, Windows and other major operating systems. Writing the new Wildland core in Rust will thus make it easier for us to develop the Cargo app on different platforms.
Where we are now
We've tried to keep the information as simple and concise as possible, but if you'd like to have a more technical and in-depth look into our work, you can check out our progress on GitLab or get in touch with us on Discord.
Let's dig straight into what we've been up to over the past few weeks. Here's a round up.
Wildland DApp and Marketplace
Wildland is an open source project distributed under the GNU GPL 3.0 license. Anyone who has access to a vide range of suitable infrastructure can use it for free. Those lacking compatible backends or in need of extra storage space will be able to buy it on the Ethereum-based Wildland marketplace.
The recent progress in this area includes the completion of the API documentation for the integration of the dApp and the Wildland Client. Several wallets that can be used for onboarding with Ethereum (i.e. currently Metamask, as well as other built-in browser wallets like the Brave Browser Wallet, the Frame Wallet and the Trust Wallet) have been selected and implemented in the dApp. End-to-end testing written in Cypress has begun, and work on frontend refactoring continues.
Storage Controller
The storage controller is a piece of software to control quota and access to storage backends, most importantly, to S3 backends. While the controller is not a part of Wildland itself, it’s instrumental when it comes to the functioning of our future marketplace. You can read more about it in the Epic 77 on our GitLab.
Here, recent progress has included gaining access to the Google Cloud suite, in order to be able to deploy the first version of the service which will be the next task connected to this area of development.
Wildland macOS app
The macOS app has been extended by adding views for application preferences. Recent developments have also included a successful attempt at integrating the Core API: the methods for listing users and creating a user are now exposed to native Swift layers. There is also work in progress on onboarding UI flow. In the short term, the work on macOS will focus on:
- completing the user onboarding flow,
- making further progress in the area of Core API integration, possibly automating the process whenever possible,
- improving the overall quality of the app by addressing reported issues.
GUI/UX Design
Cargo: Here the work has been focused on the views for sharing, multi-path handling and backend swapping. There's also been some considering taking place on how to handle the UI & explain the difference between the simple sync folder and the more advanced mounted volume features.
Marketplace DApp: It this area, the focus has been the dApp UI & UX, working on a storage lease search & purchase flow designed to make it as easy as possible for users to purchase or extend existing storage leases.
There have also been some work on interactions in order to cleanly provide users with detailed information about storage lease metrics (free space, space used by files, space used by sharing, space used in total).
Regarding the general dApp UI there have been some developments in lease & history views, and expanding tiles for quick renewal purchases. They are not too far from completion, requiring some more views for the connect wallet handling, a consistency pass, and then the creation of the dark mode views.
Thank you for joining us for this first edition of our newsletter. As we're only at the beginning of our newslettering journey, we're very open to any feedback and would be happy to hear your thoughts on anything we've mentioned here. And regardless of where you are in the world, take care!