[GENERAL] Name and surname of main applicant
Angel Castillo
[GENERAL] Are you delivering this project as an individual or as an entity (whether formally incorporated or not)
Entity (Incorporated)
[GENERAL] Co-proposers and additional applicants
- Luis Daniel Bianchi Cordova
- Anledry Cobos
[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
No
[GENERAL] Summarize your solution to the problem (200-character limit including spaces)
Develop a MISRA-compliant C SDK for Blockfrost, complementing the Cardano C library to enable developers to build Cardano apps in C.
[GENERAL] Does your project have any dependencies on other organizations, technical or otherwise?
No
[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.”
No dependencies.
[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 project will be fully open source. The entire SDK, including all code, documentation, and associated tools, will be released under the Apache License 2.0.
[METADATA] SDG rating
Goal 9: Industry, Innovation, and Infrastructure - Our project supports SDG 9 by driving technological innovation and infrastructure in the digital and blockchain sphere.
[SOLUTION] Please describe your proposed solution
Understanding the Problem:
The absence of a C-compatible library for interacting with Blockfrost, the predominant API service for accessing blockchain data on Cardano, restricts developers who prefer or require C.
Our Approach:
We propose to develop a MISRA-compliant C SDK for Blockfrost that will integrate with the existing Cardano C library (https://github.com/Biglup/cardano-c). This approach is chosen for its potential to:
- Ensure Reliability and Safety: By adhering to MISRA guidelines, we guarantee that the SDK will meet high standards of code safety and maintainability.
- Facilitate Wide Accessibility: The SDK will enable C developers to easily interact with the Cardano blockchain, expanding the pool of developers who can build applications on Cardano.
Engagement and Beneficiaries:
The primary beneficiaries will be developers looking to build applications on Cardano using C. By lowering the technical barriers through a ready-to-use SDK, we also engage educational institutions, independent developers, and small enterprises, providing them with the tools to innovate and experiment freely.
Demonstrating Impact:
Impact will be demonstrated through:
- Adoption Metrics: Monitoring the download rates and active usage stats of the SDK.
- Community Feedback: Engaging with the developer community through forums and direct feedback to refine the SDK.
Uniqueness and Importance:
What sets our solution apart is its focus on combining high standards of software development with accessibility. The SDK not only opens up new possibilities for C developers but also contributes to the Cardano ecosystem by ensuring that applications built on its blockchain are secure, efficient, and reliable.
[IMPACT] Please define the positive impact your project will have on the wider Cardano community
Impact on the Wider Cardano Community
Enhancing Developer Resources and Accessibility:
Our project, by developing a MISRA-compliant C SDK for Blockfrost, directly impacts the Cardano community by vastly enhancing the resources available to developers. This SDK will enable developers proficient in C, to more easily create applications on the Cardano blockchain. By providing these critical tools, we lower the entry barrier and diversify the development landscape, inviting more innovation and participation.
Strengthening Cardano's Technological Foundation:
The integration of our SDK with the widely-used Blockfrost API will strengthen Cardano’s technological foundation, making it more appealing for enterprise-level applications and projects that require high reliability and performance. This enhancement is crucial for maintaining Cardano's competitiveness and appeal as a leading blockchain platform.
Promoting Best Practices and Security:
By adhering to MISRA standards, the SDK ensures that the applications built on it are not only effective but also secure. This focus on security is essential for promoting best practices among developers, which is particularly important in the blockchain space where security is paramount. Our efforts will help establish a standard of excellence that can contribute to the overall trust in and security of the Cardano ecosystem.
Quantitative and Qualitative Measures of Impact:
- Adoption Rate: We will track how many developers download and use the SDK, providing a clear metric of its reach and utility.
- Developer Engagement: Through online platforms, we will measure engagement levels and gather developer feedback to continuously improve the SDK.
- Innovation and Development: The number of new applications developed using the SDK and their impact on the ecosystem will be monitored.
Community Growth and Engagement:
By facilitating easier and more secure development practices, the project contributes to growing the Cardano community. This growth not only comes from increasing the number of developers who can actively participate in the ecosystem but also through fostering a community that is engaged, supported, and well-equipped to push the boundaries of what can be achieved with blockchain technology.
These impacts collectively contribute to a stronger, more diverse, and innovative Cardano community, underlining our project’s role in driving forward the platform’s mission to democratize finance through technology.
[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?
Project Delivery Capability:
I bring over a decade of experience in C and C++ programming in high-stakes fields such as democracy and elections technology, alongside a robust background in blockchain and Cardano in particular, I have been working professionally in the space for several years.
Team Expertise:
- Alendry Cobos: Alendry is a product owner with over 12 years of experience leading the Hardware Quality Departments. His skills in directing software testing lifecycles will be crucial for our project. Alendry will enhance our development process, ensuring efficient management and high-quality outputs.
- Luis Daniel Bianchi Cordova: Luis has extensive experience as a software engineer, working with C/C++ in the banking sector. His background in managing security vulnerabilities and implementing development pipelines provides a strong foundation for ensuring our library's security and reliability.
Validation of Approach:
- Technical Validation: Rigorous testing cycles including unit, integration, and system testing will validate the library's compliance with MISRA-C guidelines and functional requirements.
- Community Engagement: Feedback from the Cardano community will be instrumental in refining our solution, ensuring it meets the real-world needs of developers and users.
Risk Management:
We anticipate potential delays due to unforeseen updates in Blockfrost API.
[PROJECT MILESTONES] What are the key milestones you need to achieve in order to complete your project successfully?
Development of Core SDK Framework
A: Milestone Outputs
- Design and implementation of the core library architecture.
- Development of basic connection and communication functions with the Blockfrost API.
- Conduct initial tests to ensure core functionality performs as expected.
B: Acceptance Criteria
- Connection and communication functions must reliably interface with the Blockfrost API without errors.
- Initial tests must validate the functionality and stability of the core features.
C: Evidence of Milestone Completion
- Code repositories containing implemented functions and features.
- Documentation of testing procedures and outcomes, consolidated in a quality assurance report that includes testing outcomes and MISRA compliance.
Implementation of API Endpoints
A: Milestone Outputs
- Implementation of all Blockfrost API endpoints within the SDK.
- Comprehensive unit testing for each implemented endpoint.
- Detailed documentation for each API endpoint including example usage.
B: Acceptance Criteria
- All Blockfrost API endpoints must be implemented correctly and function according to specifications.
- Unit tests must cover all endpoints and pass with no critical failures.
- Documentation must be clear, accurate, and helpful for developers integrating the SDK.
C: Evidence of Milestone Completion
- GitHub or equivalent code repository links to implemented API endpoints.
- Documentation files or online docs demonstrating detailed API usage.
- Documentation of testing procedures and outcomes, consolidated in a quality assurance report that includes testing outcomes and MISRA compliance.
Testing and Quality Assurance
A: Milestone Outputs
- Execution of integration tests and system tests across the SDK.
- Identification and resolution of any issues or bugs discovered during testing.
B: Acceptance Criteria
- SDK must pass all integration and system tests without any critical failures.
- All identified bugs must be resolved, ensuring high reliability and security.
C: Evidence of Milestone Completion
- Documentation of testing procedures and outcomes, consolidated in a quality assurance report that includes testing outcomes and MISRA compliance.
Final Adjustments and Documentation
A: Milestone Outputs
- Final adjustments and feature enhancements based on testing feedback.
- Comprehensive SDK documentation and user guides for developers.
- Release notes and versioning details prepared for the official SDK release.
B: Acceptance Criteria
- Documentation must be complete, enabling developers to easily integrate and use the SDK.
- The SDK must be ready for release, with all features functioning as intended.
C: Evidence of Milestone Completion
- Final version of the SDK code in the repository, including all enhancements.
- Complete set of SDK documentation available online.
- Documentation of testing procedures and outcomes, consolidated in a quality assurance report that includes testing outcomes and MISRA compliance.
[RESOURCES] Who is in the project team and what are their roles?
To successfully deliver the MISRA-compliant C SDK for Blockfrost, our project team comprises individuals with specialized skills and roles, each contributing uniquely to the project's objectives:
1.- Angel Castillo - Project Lead and Primary Developer
- LinkedIn: https://www.linkedin.com/in/angelcastillob/
- GitHub: https://github.com/AngelCastilloB
- Role: Oversee project development, ensure adherence to MISRA standards, and lead the integration of the SDK with the Blockfrost API.
- Experience: Over a decade in C/C++ developing mission critical applications, extensive experience with Cardano building libraries and developer tools.
2.- Anledry Cobos - Quality Assurance and Documentation Lead
- LinkedIn Profile: https://www.linkedin.com/in/anledry/
- Role: Responsible for setting up testing frameworks, conducting all phases of testing (unit, integration, system), and ensuring the SDK meets all quality standards before release.
- Experience: Expert in hardware and software quality assurance, with a strong focus on compliance and safety standards.
3.- Luis Daniel Bianchi Cordova - Senior Software Engineer
- LinkedIn Profile: https://www.linkedin.com/in/luis-daniel-bianchi-cordova/
- GitHub: https://github.com/luisdbianchi
- Role: Assist in developing the SDK's core functionalities and support the implementation of Blockfrost API endpoints.
- Experience: Rich background in software engineering for banking systems, specializing in security and C/C++ development.
[BUDGET & COSTS] Please provide a cost breakdown of the proposed work and resources
All ADA calculations were made with an ADA price of $0.5 per ADA.
Milestone 1: Development of Core SDK Framework
- Duration: 1 month
- Budget Allocation: 15,000 ADA
- Angel Castillo: 10 days at $500/day ≈ 1,000 ADA/day = 10,000 ADA
- Anledyr Cobos: 5 days at $400/day ≈ 800 ADA/day = 4,000 ADA
- Luis Daniel Bianchi Cordova: 5 days at $300/day ≈ 600 ADA/day = 3,000 ADA
Milestone 2: Implementation of API Endpoints
- Duration: 2 months
- Budget Allocation: 20,000 ADA
- Angel Castillo: 10 days at $500/day ≈ 1,000 ADA/day = 10,000 ADA
- Anledyr Cobos: 10 days at $400/day ≈ 800 ADA/day = 8,000 ADA
- Luis Daniel Bianchi Cordova: 10 days at $300/day ≈ 600 ADA/day = 6,000 ADA
Milestone 3: Testing and Quality Assurance
- Duration: 2 months
- Budget Allocation: 20,000 ADA
- Angel Castillo: 10 days at $500/day ≈ 1,000 ADA/day = 10,000 ADA
- Anledyr Cobos: 5 days at $400/day ≈ 800 ADA/day = 4,000 ADA
- Luis Daniel Bianchi Cordova: 5 days at $300/day ≈ 600 ADA/day = 3,000 ADA
Milestone 4: Final Adjustments and Documentation
- Duration: 1 month
- Budget Allocation: 20,000 ADA
- Angel Castillo: 10 days at $500/day ≈ 1,000 ADA/day = 10,000 ADA
- Anledyr Cobos: 5 days at $400/day ≈ 800 ADA/day = 4,000 ADA
- Luis Daniel Bianchi Cordova: 5 days at $300/day ≈ 600 ADA/day = 3,000 ADA
[VALUE FOR MONEY] How does the cost of the project represent value for money for the Cardano ecosystem?
The SDK facilitates integration with Blockfrost, the most widely used data provider in the Cardano ecosystem, from C one of the most used programming languages globally. By providing standardized tools for accessing blockchain data in C.
By creating tools that adhere to the rigorous MISRA standards, the project ensures that developers can build safe, reliable applications on the Cardano Blockchain.
This in our opinion translates directly into tangible benefits for the Cardano ecosystem.