Commonly outside of the Haskell transaction builder, there have been weak testing & security practices, which are critical to the mission of a safe & secure blockchain.
This is the total amount allocated to Blaze: Maintenance, Security Improvements, Testing & Assurances for the Blaze SDK.
NB: Monthly reporting was deprecated from January 2024 and replaced fully by the Milestones Program framework. Learn more here
We are building a typescript SDK which we ambitiously intend to be the flagship developer tool of Cardano, we will invest these funds to appropriate improvements, test suites, code analysis of blaze.
No dependencies.
Blaze is an open source project and will remain open source for it's entirety, all work in this catalyst proposal will be open-source in the same repository at https://github.com/butaneprotocol/blaze-cardano
https://www.npmjs.com/package/@blaze-cardano/sdk
The necessity for Blaze comes from these requirements while building a DeFi web app:
How Blaze differs from other typescript apis is the low-level usage of cardano-js-sdk, which we use for types and serialisation, it's packaging, and it's manual control over various low-level transaction construction. Blaze is the only lucid-alternative with procedural-style construction to build in this way, taking great consideration of developer experience through the lens of decentralised finance.
By having dedicated funding to make various improvements in this area we can make Blaze a production-ready system (indicated by a 1.0.0 semver release), where it can be used in serious DeFi projects.
DeFi applications will heavily consider security among other aspects, if there is major adoption of the SDK for development of smart contracts and then also for deployment of frontends, this will be a win for the ecosystem because of the saved resources. When the library is used, projects should be relying on it for testing purposes as well as runtime.
The Butane team has demonstrated itself as one of the top development teams in Cardano, producing a highly well-received protocol testnet and yellowpaper which has encouraged community and developer confidence in their technical merit. Blaze, in its current state, already offers a clean and efficient transaction building SDK and emulator that is being integrated within Butane to be used as the protocol's off-chain component.
Given the project is open source and has utility to effectively all developers on Cardano, the intention is to gather feedback from the developer community to shape Blaze into a highly efficient and usable platform for building applications on.
Milestone 1: Comprehensive and Polished Base SDK
A: Milestone Outputs
B: Acceptance criteria
The milestone will be accepted when Blaze has implemented functionality in a manner satisfactory for a first major release
C: Evidence of milestone completion
The evidence of milestone may be analysed by reading the codebase at the GitHub link or by reading through the documentation page at https://blaze.butane.dev, which will have relevant examples. Users can also examine Blaze's various published packages.
Milestone 2: Checks & Tests Regarding Transaction Construction with In-Build Safety Features
A: Milestone Outputs
There will be checks added to transaction construction and/or analysis of code to give assurances that:
There will additionally be tests around transaction construction which attempt to:
From a developer experience standpoint, literate error messages should accompany the checks. Where code is analysed, logical explanations will be attached in comments / documentation to show where consideration has been placed. Other various additional tests/criteria may be identified & added to this milestone, within the general topic.
At the end of this milestone, version 1.0.0 of Blaze packages should be ready to publish and release.
B: Acceptance criteria
There are new documentation around the milestone outputs, such as comments, there are new branches for the aforementioned assurances in the code, and there are new test files. General basic use of the API shouldn't be vulnerable to the problems addressed.
C: Evidence of milestone completion
Will require reading the published codebase on GitHub and published packages.
Final Milestone: First Full Release and Repository Set Up for Longevity
A: Milestone Outputs
B: Acceptance criteria
C: Evidence of milestone completion
The Blaze GitHub repository will be where most activity occurs, so users and developers are encouraged to monitor progress there.
Micah Kendall - programmer, initiated blaze project.
Jay Taylor - programmer
We will take this project as the team of butane (https://butane.dev), recruiting more developers where appropriate using the budget.
All costs of the project go towards manpower costs (contracted / employed developers) and other relevant costs for hosting and maintaining a public GitHub repository.
We are asking for significantly less than a full time developer would cost us, for approximately a year, to build & maintain a tool that will likely require more than one single developer, and which we expect to maintain for longer.