[GENERAL] Name and surname of main applicant
Yohann Hagneré
[GENERAL] Are you delivering this project as an individual or as an entity (whether formally incorporated or not)
Entity (Incorporated)
[GENERAL] Please specify how many months you expect your project to last (from 2-12 months)
6
[GENERAL] Please indicate if your proposal has been auto-translated into English from another language.
Yes
[GENERAL] Summarize your solution to the problem (200-character limit including spaces)
Our goal is to provide an open-source set of tools (SDK) with code sample, that include:
- wallet creation
- transactions
- minting NFTs
- DApp connectivity
- etc...
functions already used & tested in Mantium Wallet
[GENERAL] Does your project have any dependencies on other organizations, technical or otherwise?
Yes
[GENERAL] If YES, please describe what the dependency is and why you believe it is essential for your projectâs delivery. If NO, please write âNo dependencies.â
BlockFrost.io => All cardano interactions (read / send / receive) related to the blockchain.
Emurgo => Open sourced Cardano serialization lib
[GENERAL] Will your projectâs output/s be fully open source?
Yes
[GENERAL] Please provide here more information on the open source status of your project outputs
The Swift library & server code will be fully open source under MIT Licence.
[SOLUTION] Please describe your proposed solution.
While developing Mantium Wallet in 2022, we faced a notable lack of resources for Cardano in mobile development, particularly in Swift & SwiftUI for iPhone, iPad, or Mac applications.
A considerable amount of our time was dedicated to translate some javascript (web-only) functionalities into Swift/SwiftUI usable code, allowing us to embed as much as possible operational logic into the application client-side, leaving only the Rust/JS library code for building transaction server-side.
In order to help mobile app developers to launch their own product integrating the Cardano Blockchain, we'd like to provide a comprehensive, refined set of tools and libraries, fully open-source, that will handle all the hard part of the foundational coding and necessary functions to interact with the blockchain and simplify it as much as possible. This will streamline the development process, making it faster and more user-friendly.
Quick set of examples functions that our SDK will support:
- Account creation
- Account import
- Transaction of Native token
- Transactions Analysis
- Assets Separation (Tokens / NFTs)
- NFT minting
- NFT collection creation
- DApp Connector (Webview)
[IMPACT] Please define the positive impact your project will have on the wider Cardano community.
By opening up the Cardano ecosystem to mobile developers with ready-to-use code covering all areas of Cardano blockchain, we hope to encourage more mobile developers to join us in creating applications in a wide variety of categories.
[CAPABILITY & FEASIBILITY] What is your capability to deliver your project with high levels of trust and accountability? How do you intend to validate if your approach is feasible?
Mantium Wallet has been operational on the AppStore for iPhone and iPad since January 2023.
It currently incorporates all of the Swift functions necessary to the development of this library, but these are right now closely tied to the wallet itself.
The main objective of this project will consist of extracting the already existing subset of functions that are utilized in our wallet and refined them into a brand new standalone, dev-friendly and open-source library, easily usable in any Swift/SwiftUI project.
Our team members consist of at least 3 iOS & Android mobile senior developers, with between 12 to 15 years experience in native mobile app development including expertise in Swift, SwiftUI, Java, Kotlin.Â
Our technical expertise is also backed by a substantial portfolio of over 200 mobile applications developed for major international clients across various sectors.
There is no roadblock ahead for this project. Additionally, we will provide ready-to-use server-side codebase (JavaScript) to ensure that this library is fully open-source and accessible to all.
[Project Milestones] What are the key milestones you need to achieve in order to complete your project successfully?
M1. Analysis and Structure
Task:
- Code Analysis for the client side in Swift and server side in Javascript.
- Listing of all functions that will need to be support by the library in Swift and Javascript.Â
- Detailed approach of the relations and interactions between these library.
- Architecture of the libraries (naming, parameters, returns, etc...)
Acceptance Criteria:
- Deliver a specification sheet of the whole project with each SDK, its functions, parameters, return values and what will be usable and how it could be integrated by other developers once completed.
M2. Development of the Server-Side Library (Javascript)
Task:
- Develop utility functions related to the Cardano Serialization lib
- Develop helpers functions related to Blockfrost.io API
- Develop essential functions and features as outlined in Milestone 1
Acceptance Criteria:
- Publicly release the code for the Javascript SDK on a git
M3. Documentation of the Server-Side Library (Javascript)
Task:
- Detailed descriptions of each public functions available, parameters, return values, in JS.
- Provide practical examples and best practices for implementation in TS/JS projects.
Acceptance Criteria:
- Write down the entire documentation for each usable functions of the Javascript SDK on a public git
M4. Development of the Client-Side Library (Swift/SwiftUI)
Task:
- Develop helpers functions related to Blockfrost.io API in Swift
- Develop utility and optional functions
- Develop essential functions and features as outlined in Milestone 1
Acceptance Criteria:
- Publicly release the code for the Swift/SwiftUI SDK on a git
M5. Documentation of the Client-Side Library (Swift/SwiftUI)
Task:
- Outline the functionalities and usage of the Swift library.
- Provide practical examples and best practices for implementation in SwiftUI projects.
Acceptance Criteria:
- Write down the entire documentation for each usable functions of the Swift/SwiftUI SDK on a public git
MF. Deployment and Code integration (Examples, etc...)
Task:
- write examples of use case
- small open-source project demonstrating how to integrate and use the libraries
Acceptance Criteria:
- Successfully deploy the whole SDK, code, documentation and a usable example project for the community on a public github
[RESOURCES] Who is in the project team and what are their roles?
Yohann Hagneré
- CEO of Symbyoz
- iOS expert developer with 15 years experience on mobile and 22 years on Web.
- https://www.linkedin.com/in/yohann-hagnere/
Maxime Filippi
- iOS and Android senior developer with 12 years experience
- https://www.linkedin.com/in/maxime-f-88b90548/
- https://github.com/MaximeFILIPPI
Marc Bounthong
- iOS and Flutter senior developer with 15 years experience
- https://www.linkedin.com/in/mbounth/
Damien Matabon
- Developer Web senior with 23 years experience
- AWS server architect and administrator.
- https://www.linkedin.com/in/damienmatabon/
[BUDGET & COSTS] Please provide a cost breakdown of the proposed work and resources.
Price base on 400 euros by day.
Ressources :
- Write librairies : 1 dev iOS full-time for 4 month => 8 000 x 6 = 48 000 EUR
- Review code and try : 1 dev iOS part-time (5 days) => 2 000 x 6 = 12 000 EUR
- TOTAL BUDGET : 60 000 EUR (176 000 ADA)
[VALUE FOR MONEY] How does the cost of the project represent value for money for the Cardano ecosystem?
Swift is the primary language used for iOS / MacOS development and has about 2.8 million active developers.
According to Analytics Insight and Stack Overflow Developer Survey from 2023, Swift is among the top 10 best programming languages for profits and prospects and rank at the 8th most popular programming language among professional developers globally.
[IMPORTANT NOTE] The Applicant agrees to Fund Rules and also that data in the submission form and other data provided by the project team during the course of the project will be publicly available.
I Accept