Funding the Virto team
Proposal Summary (updated)
Feliz año nuevo! 🎆 I'm Daniel, long time builder in the ecosystem, Senior ambassador,
humble fellow of the Polkadot fellowship and team lead of the Virto team of the
Virto Network.
This proposal is about supporting us the Virto team(more than a roadmap or specific project), we are a
creative and very capable group of individuals with great track record building multiple projects in the ecosystem
with funds from the treasuries and Web3 foundation(piggy bank too):
Sube
+Scales
: 20,000 EUR https://kusama.polkassembly.io/post/616orml-payments
: 36,000 kUSD https://github.com/w3f/Grants-Program/blob/master/applications/lip_payments.mdlibwallet
: 28,800 USD https://polkadot.polkassembly.io/post/825- Fido PoC: 69,750 USD https://polkadot.polkassembly.io/motion/246
It hasn't been the easiest building this way but we believe developing with the ecosystem
funds for the ecosystem is the right way to go specially when creating out of the box solutions in the best Kusama style.
We have several exiting projects lined up for 2023 ready for development with the
main theme theme of making blockchain technology extremely accessible to the
non-crypto-native 99% of the population.
2023 Projects overview
- Summa: Substrate Meets Matrix, a lightweight multi-chain capable node extensible with
WebAssemply plugins, integrated with Matrix(decentralized communications protocol that powers Element)
to interact with Substrate blockchains via the messaging protocol.- Summa pallet: A blockchain module to create a tighter integration with Substrate,
take on-chain actions based on Matrix events, control Matrix rooms/communities on-chain or
seamlessly use Matrix accounts and multiple devices with your blockchain.
- Summa pallet: A blockchain module to create a tighter integration with Substrate,
- Hardware prototyping: A limited edition handcrafted wood-leather key ring prototype of
a hardware wallet you can lose without fear of losing your funds. - Valor: Virto's async lightweight open runtime, the plugin system and developer platform
that powers Summa, our super app and hardware wallets. - FiDOS Super app: Web application(no special installation needed) extensible with WASM applets,
it integrates with merchant's web sites for example and it would include apps to manage your summa node and hardware wallets. - Further development and improvements to Sube, Scales, Libwallet and other related projects.
- Kreivo Parathread: The tokenless sister chain of Virto Network for payments of real-world
products and services that empowers local communities with its tax collection system.- SwapCash: An initial use-case of a real world marketplace for decentralized on&off-ramps.
- The Federation: A Fellowship-like ranked collective, an extract of the Local Incentives Protocol
that attempts to bring the ambassador program on-chain and turn its members into local leaders that can better represent the interests of KSM/DOT holders.
- Dot.Builders(new - extra credits assignment): PoC of a ranked collective that would allow teams that
are committed to bring long term value to Kusama and Polkadot to have easier
recurrent access to treasury funds in an automated way based on their reputation
level and previous accomplishments to avoid going through the somewhat inefficient
and clumsy process of individual proposals, referenda and the micromanagement culture
that results from this kind of process :)
The highlights and priorities for 2023 are Summa and the Hardware wallet as they can have a
bigger impact short term. Before rushing out a blockchain with no utility into
existence we want to focus on experimenting with different forms of user interaction that result
familiar and intuitive to the broad audience.
We have been laying down the foundations of a technology stack we believe can tackle
the many issues the industry is facing to attract mass adoption without
compromising decentralization, trying to make the technology extremely accessible,
simple to use, cheap and overall remove as many entry barriers as possible, such as:
- Abstract blockchain protocols. The average Moe doesn't care about them.
- Hide away cryptography. i.e. say goodbye to seed phrases.
- Be familiar. Metaverses, NFTs, Staking, etc. are cool new concepts but
intimidating for the 99% of non-crypto savvy population which is our focus(let's first grow the pie!). - Speak our users language. Avoid new jargon and words that need explanation.
- Universal and cheap, don't assume everyone has capable smartphone, knows how
to install a browser extension or has good(or any?) internet connectivity. - Fear of the unknown. Regardless of the intrinsic security of blockchain,
trusting your life's savings to new technology is scary.
The Virto Stack(projects detail)
To serve the use cases we aim for we've gone a long way creating a technology stack from scratch that
puts a lot of focus on user/developer experience and very lightweight, simple, power/memory efficient, WASM friendly libraries
that can run everywhere, this aids in our long term vision to really bringing blockchain technology to the masses, specially empowering regular users in areas where digitization and technology penetration is low and people might have never heard the word blockchain, there is an opportunity to provide inexpensive hardware and efficient software to connect people to Web3 services.
ℹ️ Road-map is subject to change, estimates of times and human resources(engineering, design, user research, etc.)
are approximate and team members(12+ people) will be dynamically allocated to the right project on a need basis.
Valor
github.com/virto-network/valor
Virto's async lightweight open runtime, is a WebAssembly runtime abstraction that based on a target platform selects an appropriate WASM compiler(e.g. Wasm3 in embedded devices, Wasmtime for servers, etc). Using the upcoming "Web Assembly component model" we define or make use of existing host interfaces to expose different capabilities to the plugins that are loaded on an internal registry and are supervised in case plugins were to fail.
An important aspect of Valor is to be developer friendly, have enough tooling and define easy to use interfaces so developers can create new plugins in no time without complications.
Summa
github.com/virto-network/summa-node
Substrate meets Matrix is the implementation of a Matrix homeserver and Smoldot based node developed in Rust that can compile to WebAssembly to run in the browser. The Matrix and blockchain functionality are developed as WASM components running on top of Valor, WASM runtime and message broker that routes incoming messages to the blockchain component and other user provided plugins.
The node is distributed as a lightweight single binary easy to deploy with support for multiple blockchains(thanks to Sube). It is great as a personal cloud and easy entry point for users to the Kusama/Polkadot ecosystems as users only need simple WebAuthN or phone number authentication, it provides encrypted communications out of the box including access to any public Matrix channels(all official communication channels in the ecosystem that are hosted by Parity and the Web3 foundation use this protocol).
Building on top of the Matrix account and device management system means users only ever need a friendly MXID(e.g. @olanod:virto.community
) to send funds to a friend, multiple devices are supported and even multiparty signature support in case you want to require transactions to be confirmed with a different device or a hardware wallet.
With Matrix built-in Secure Secret Storage and Sharing protocol there is also an out-of-the-box solution for secure account backups and arbitrary user secrets.
Finally more functionalities are available when installing different plugins that can turn your node into a decentralized notification system or a personal bot assistant that can sign transactions on your behalf.
Hardware wallet prototype
Hardware development is hard and designing crypto wallets to keep in a cold storage with your life's savings makes things even harder as there are a lot of security considerations in their fabrication that increase their price, but it doesn't have to be that way. At Virto we think there is need for a new category of wallets, small cheap devices that are meant to be carried around without the fear that losing them means losing our funds.
As part of our previous work on the Fido prototype we added support for new kinds of back-ends to libwallet and created a simple device that can be used to confirm and sign transactions with the push of a button. Continuing with this idea, we want bring the Virto Stack to inexpensive and commonly available hardware modules, keeping the "artistic" style(wood+leather for the next experiment) and assemble a limited amount of devices to be given away later this year.
The next iteration of the software would be more complex as we will make several optimizations across the stack to fit Valor and other plugins that effectively turn the device into a Matrix client so it can respond to messages in a chat room(e.g. "please sign this transaction"), we would add support for multi-party signatures, a kind of multi-sig that doesn't require sending transactions to the blockchain, so your device can serve as second confirmation factor or the only factor when transacting with small amounts.
Lastly we want to include, at least in a few prototypes, a LoRaWAN capable chip that allows transmitting small amounts of data over long distances that we would use to test the design of an accurate-enough proof of location protocol useful for location sensitive protocols like LIP(or Encointer). This technology is good in places with bad connectivity where users could broadcast a signed transaction to a nearby station(e.g. kiosk,point of sale,neighbor) that submits the transaction on their behalf.
(We promise next prototypes will be prettier than Fido Primero)
Kreivo
github.com/virto-network/virto-node
Kreivo means creativity, the best virto(virtue) of Kusama 😉 It's the first implementation of the Local Incentives Protocol, our initial effort to bring the the ecosystem closer to a more general non technical audience by providing a place where people can easily form/join communities to conduct real world economic activities that create utility for the ecosystem tokens, such as setting up marketplaces where local merchants or service providers can make a fair living transacting in KSM, or with stable coins.
LIP focuses on making decentralized local businesses be socially responsible without compromising their profitability, a dynamic tax system enables the collection of resources that empower local communities to become their own autonomous micro-economies as well as the fair usage of collected resources for other common good causes like addressing climate change or inequality among others.
From the start LIP was designed for a token-less, yet sustainable blockchain. We prefer this design as governance is not in the hands of a few VCs or team members and it can bring more value to Kusama and to the commercial communities that struggle to attract value to their tokens. The real value of the network will come from the real world use cases that find their home in Kreivo(and later Virto) that will have the incentive to develop and sustain the common shared infrastructure.
A parachain powered by orml-payments
In practice Kreivo would work in a similar way as Statemine which is built
around the pallet-assets
and pallet-uniques
. Our parachain instead has
orml-payments
as its core functionality, we built the pallet with the support
of a Web3 grant and later brought to a wider audience by successfully merging to
the well known ORML community repository. This Substrate module is what makes
possible to securely pay for products and services thanks to its built-in
escrow-like system with refunds, disputes among other features that also include
the dynamic fee collection system that communities will use to generate local
and global impact.
Governance
Kreivo/Virto's governance would be delegated to the Collectives parachain in the future
where we wish to launch the Trade Association and The Federation, a ranked collective
formed by local/regional leaders that serve as delegates of the many DOT holders spread around the globe.
Together with the relay-chain's governance the three bodies can dictate the fate of different
aspects of the chain.
Some use cases
Decentralized on/off-ramps
Current experience for attracting new users is very poor in the ecosystem as most people
have to resort to centralized exchanges that are not easily available in every
part of the world and require cumbersome verification processes.
Virto team's first show case for the technology is swap.cash, a fiat-to-crypto
marketplace that benefits from the payments pallet and built-in decentralized
communications to offer a seamless Uniswap-like experience and embeddable
Swap API for developers that want to on-board new users to the ecosystem by
for example allowing fiat payments to merchants that are payed in a stable
coin.
d-commerce
The most compelling use case for Kreivo and Virto in the long term is likely
decentralized commerce, which is not just traditional e-commerce plus crypto
payments, we see d-commerce as a way to put together under the same roof a
universe of composable real-world economies where people trade in a more
transparent and fair way that puts users and communities in control, where
there are clearly defined rules(in the form of code) on how wealth is responsibly
distributed for the overall community's sake, for common good causes and
ultimately for the users themselves that are owners of the very same products
the use.
FiDOS Super APP
A decentralized chat-centric super-app for the Web(not an extension), desktop and mobile. It's the go-to graphical interface for "Virto products", same as the hardware wallets it is a Matrix client in disguise with the ability to extend its features with WebAssembly plugins. One can install new applets or teach new tricks(mini overlay applets) from repositories maintained by the community.
Over time we will add more official applets and UI components to make it very simple for other users to develop new functionality.
Scales
github.com/virto-network/scales
Making use of type information this library allows conversion to/from SCALE encoded data without allocating an intermediate representation, specially useful when conversion is for dynamic types like JSON.
Sube
A client library and CLI for Substrate chains with reduced API(one sube
function) and a big focus on size and portability so it can run in constrained environments like the browser.
Making use of the type information in a chain's metadata(powered by Scales), Sube allows automatic conversion between the SCALE binary format used by the blockchain with a human-readable representation like JSON without having to hardcode types for each network. When submitting extrinsics Sube delegates the responsibility of signing the payload of a transaction to an external tool(e.g. libwallet).
Sube supports multiple backends under different feature flags like http, http-web or ws/wss, with the planned support for smoldot.
When paired with Valor, Sube can be exposed as an HTTP API that runs both in the server and the browser and be composed with other plugins to create higher level APIs that a client application can use from any platform thanks to the ubiquitousness of HTTP. We imagine existing centralized projects easily integrating with Substrate blockchains in the server with the option to progressively migrate to a decentralized set-up with the whole back-end later running in the user device(e.g. web browser). More interestingly it can be used for progressive decentralization to give users the the best user experience, a Sube powered application can start being served from a server to have an immediate response and 0 start-up time and since plugins can be hot-swapped, the blockchain back-end can be switched from HTTP to light node transparently without the application code ever realizing, giving our users with bad connectivity and slower devices the opportunity to enjoy the best possible user experience without compromising decentralization.
Libwallet
github.com/virto-network/libwallet
A lightweight and very portable library with simple to understand and use abstractions that allow creating chain-agnostic crypto wallets able to run in all kinds of environments like native applications, hosted wallets, the browser or even embedded hardware.
We have been adding support for multiple backends and will continue to do so specially for different hardware modules with varying interfaces and architectures.
After adding EVM and Bitcoin accounts support and thanks to the ability of a libwallet client to queue transactions before signing, we imagine
interesting cross chain use cases like sending BTC to a bridge and sign a Substrate transaction at the same to avoid the problem of using multiple wallets and multiple confirmations.
Team and costs
The Virto team has been working on an ad-hoc basis in a not very sustainable way, with concurrent members ranging
anywhere from 2 to 8 depending on availability of resources. However the pool of team members ready to jump full time in the
project to deliver milestones on time is around 12+ people assuming economic stability is guaranteed.
We can count on:
- 1 team lead (Daniel)
- 4 Senior software engineers (David, Pablo, Jorge, Stanly*)
- 1 Expert Devops engineer (Nicolas)
- 1 Embedded engineer (Johan)
- 2 Mid-level engineers (Bryan, Gabi*)
- 1 Junior engineer (Manuel)
- 1 All in one senior designer (Roberto)
- 1 User researcher (Edith)
- 1 Economist (Q.C.)
- 1 Content creator (Camila)
* needs confirmation.
ℹ️ More virtuous members can join our next phase of development with enough work for everyone but for now this is a size we are comfortable with given the limited amount of funds requested.
The average monthly cost per person is around 3,000+ USD, a 9 months budget for the team ranges from 324,000 to 378,000 USD.
With the requested 20,000 KSM at a price of 23.5USD/KSM(EMA7) that would equal 470,000 USD, minus 10K of operational costs(infrastructure, hardware wallet materials and equipment) and leaving a 20% buffer to account for price fluctuations, missed deadlines and other (un)expected circumstances we are left with 368,000 USD. Worst case scenario if things don't go as bad as usual, there will be extra funds to bring some more awesomeness to Kusama.
EDIT: more info on the team budget and how it compares to market salaries in this spreadsheet.
A note from experience, since we are in the wild west I think exact budgets don't work(hence the beautiful rounded 20K KSM), we have always lost money, sometimes more than 30% of received funds, we made mistakes and learned a lot but it hasn't been because of financial ineptitude but because building in the crypto space is tricky, a lot of times it's crazy price fluctuations but it can also be due to swapping funds to a not-so-stable stable coin for example, a lot can happen! ... a few thoughts on the topic.
Hopefully Kreivo can make payments for projects and services more convenient 🤞
Comments (14)
Requested

Proposal Failed
Summary
0%
Aye
0%
Nay
Aye (124)0.0 DOT
Support0.0 DOT
Nay (140)0.0 DOT
Is there another discussion page for your request somewhere? I'm having trouble understanding the text above and I don't see a link to a proposal anywhere. Edit: I can understand your frustration, that you're trying to secure funding for your team for a period of time, without creating many individual proposals for each smaller project. I would suggest you create a comprehensive proposal detailing your team members, links to their bios, salary requested, and then go into detail on the sub projects (I'm not familiar with any of them) along with linking team members to the projects they're working on and what their commitments to those projects is. I think your proposal is very light weight for the amount of funds that you're requesting. I would expect a more formal document. I'm abstaining for the moment.
Hi! Kreivo's post would be the initial discussion, sorry we were missing the projects summary in the initial post. We will be adding more details soon but I'm glad to answer any questions in the meantime :)
The amount you're asking seems obscured by leaving it in planck. Are you asking for 20,000 KSM? (GBP 375,000)
Correct! 20,000 KSM to sustain a team of 10+ people(mostly developers) for almost a year ;) There doesn't seem to be a way to tell Polkassembly to show amounts in KSM instead of plancks, it would definitely be a nice to have feature 🤔