Ivan Bandaryk (ivan at protofire dot io)
Protofire has been collaborating with the CoW Protocol team for some time already, as well as we have been a partner of several Gnosis-related projects, since before the DAO was launched. We are proposing to the CoW Swap team and ecosystem the idea of developing a wallet that contains specific features that align with the project’s and users’ specific needs. Examples of projects that we have worked together on the previous years are:
CoW Swap DEX: Our team worked alongside the CoW Protocol team on the rebranding, development, and testing of a web trading interface built on top of the CoW Protocol. Protofire has assisted in the development of the SDK, the Explorer, the Batch Viewer integration, UI & UX improvements, and The Graph integration.
We have also developed wallets for other projects, such as the Ocean Marketplace wallet - which has been finalized, yet not published by their team. We are currently working on the DAA wallet, which is an app that allows investment advisors to manage the account of their investors by making multisig transactions through Gnosis Safe.
Whitelabel solution: We have developed a whitelabel wallet - ProtoWallet, which will be used in order to reduce the costs of the development of the CoW Swap wallet (Protofire Wallet on the App Store).
We will add CoW Swap functionalities to it and customize the UI. In the link below there is a video of the mobile prototype, in which it was recorded a swap made on the Goerli network, totally through CoW Swap functionality. So we are pretty confident in the estimations and feasibility for developing a fully-functional wallet for CoW Swap.
Team of specialists: We have a team of blockchain specialists that have been working only on wallet projects for a few years already, which also reduces the time that could be required on R&D, since we already have the necessary experience to make the development happen.
In a nutshell, this is a proposal to develop a mobile wallet for CoW Swap DEX. We aim to provide value for CoW Swap DEX by promoting greater accessibility for users, who will be able to easily use the decentralized exchange in their phones easily, anywhere and at any time. That may promote a greater usage of the CoW Swap DEX, which is expected to translate into a growth in the transaction volume within the DEX.
This proposal should be the first of several phases to develop a high-quality mobile wallet made up of all the features that the CoW Swap application may need.
The first phase is to focus on the Swap feature. Later we will add the profile and the affiliate program, then solvers and transactions information, and then we will implement new improvements based on the website version and maintenance.
We intend on adding new features based on the mobile possibilities such as:
- User recognition.
- Notifications connected with the website activities.
- Website synchronization.
Our motivation for the development of the CoW Swap wallet comes from knowing the needs of the CoW Swap DEX and believing that mobile wallet can provide value for the protocol by allowing users to access the DEX unique functionalities from their phones. We know the protocol needs since we have been working with the team for a long time on the development of several aspects of the CoW Swap DEX. We have been working with Gnosis Safe for several years - from development to deployment, upgrades and maintenance, as well as we have developed wallets such as the Ocean Protocol wallet, DAA wallet, etc.
The wallet can promote:
- Convenience, since users will be able to access their funds and make transactions on the DEX from their wallets.
- Accessibility, since users will be able to access their funds and information in just one place that they trust.
- Security, since data is encrypted and the wallet will be developed in accordance with CoW Swap’s own features. Private keys will be stored on the user’s phone in the secure enclave.
- Upgradability, since functionalities will be able to be extended, given CoW Swap’s users needs, and provided by us given our expertise on wallets.
The code will be open source and will be hosted on Cowswap GitHub.
- Prototyping (Protofire investments) - already done.
- Officially published iOS and Android applications in the Apple store and Play market, after the cycle of testing and bug fixing.
|Tasks||Inital Estimate||Current Estimate (with whitelabel solution)|
|[Project] Set up project (32 hrs):||32||done|
|- Create project (2x2 hrs)||4||✓|
|- Set up packages (4x2 hrs)||8||✓|
|- Resolve dependencies (4x2 hrs)||8||✓|
|- Set up code signing (app id/certificates/provision) (4x2 hrs)||8||✓|
|- Run & check correct launch on devices/simulators (2x2 hrs)||4||✓|
|[Development] Base development (36 hrs):||36||done|
|- Add storage controller (2x2 hrs)||4||✓|
|- Add wallet controller (key management) (2x2 hrs)||4||✓|
|- Add biometrics (4x2 hrs)||8||✓|
|- Add network (2x2 hrs)||4||✓|
|- Add blockchain controller (4x2 hrs)||8||✓|
|- Add multiple networks support (4x2 hrs)||8||✓|
|[Development] UI/Storyboard (180 hrs):||180||48|
|- Set up UI structure, navigation (TabBar, switch from initial scene, etc) (16x2 hrs)||32||✓|
|- Add initial scene (2x2 hrs)||4||✓|
|- Add “Create account” scene (4x2 hrs)||8||8|
|- Add “Import account” scene (2x2 hrs)||4||4|
|- Add “Main wallet” scene (assets, transactions, QR, scan) (16x2 hrs)||32||✓|
|- Add “Multiple wallets” option (24x2 hrs)||48||✓|
|- Add “Send assets” + “Review fee” scene (4x2 hrs)||8||8|
|- Add “Transaction” scene (4x2 hrs)||8||✓|
|- Add “Backup” scene (2x2 hrs)||4||4|
|- Add “Networks” scene (4x2 hrs)||8||✓|
|- Dark mode support/fixes (8x2 hrs)||16||16|
|- Add “No internet connection” scene and trigger across the app (4x2 hrs)||8||✓|
|- Add “Wallets management” scene (list of wallets like in ProtoWallet) (8 hrs)||8||8|
|[Development] Network controller (32 hrs):||32||16|
|- Implement CowSwap API calls (16x2 hrs)||32||16|
|[Development] Remote config + controller (48 hrs):||48||16|
|- Create remote config for CowSwap (8x2 hrs)||16||16|
|- Create remote config controller for CowSwap (16x2 hrs)||32||✓|
|[Development] CowSwap functionality + UI (192 hrs):||192||96|
|- Add “Swap” scene + controller (32x2 hrs)||64||32|
|- Add “Orders” scene + controller (32x2 hrs)||64||32|
|- Add “Order details” + controller scene (32x2 hrs)||64||32|
|[Development] Firebase SDK integration (8 hrs):||8||done|
|- Add Firebase/Analytics (2x2 hrs)||4||✓|
|- Add Crashlytics (2x2 hrs)||4||✓|
|[Publishing] (~32 hrs):||32||32|
|- Documentation preparation.||8||8|
|- Legal research.||8||8|
|- Apple store & Googe play applications.||8||8|
|[QA Testing] (40 hrs):||40||40|
|[Marketing] (~16 hrs):||16||16|
|- Marketing material preparation for Cowswap and Protofire blogs.||8||8|
|- News distribution and announces.||8||8|
|Total development hours||528||176|
|Total dev days (8 hrs/day/dev)||39||17|
|Dev weeks (5 working days / week)||10-12||4-5|
We are requesting a total of around U$30,760 (23,760 for development hours + 7000 reserve, which can be consumed in case of any significant issues or further updates) for the project.
The hourly rate of our team members is U$90.00.
So, since we require around 264 hours to complete the milestones - that have been thoroughly described above -, we request a total of around U$23,760 and an extra U$7,000.00 as reserve to cover all the expenses and potential risks.
Protofire works on Cowswap JS SDK, so we know the team pretty well.
Ivan Bandaryk, Field CTO (firstname.lastname@example.org, TG: @ivand3v)