Campaign
Campaign overview
CashScript is a popular high level language used to develop smart contracts on Bitcoin Cash. For the last two years CashScript has been crowdfunded through flipstarter, the previous Flipstarter took place little over a year ago. Since last year we have released two major versions of CashScript: v0.9.0 and the recent v0.10.0. In these updates we added support for 'Smart Contract Interactions' through the advanced transaction builder, and with the initiative from mainnet-pat we added debugging tooling to CashScript. Now that those items are finished, we want to raise the funds to continue developing CashScript for the coming year.
CashScript is growing in popularity over the past years. With recent network upgrades it is also clear that the BCH community is taking smart contracts more seriously. CashScript is a crucial piece of tooling for smart contract developers on Bitcoin Cash, so we want to make sure that it continues to grow and has the resources it needs to continue doing so.
Overview
With the initiative from Pat we implemented debug tooling for the 'Simple Transaction Builder'. We wanted to release this functionality as soon as possible as we believe it is a very powerful tool for all CashScript developers. Now that it is released for the 'Simple Transaction Builder', our highest priority is to extend these debugging capabilities to the 'Advanced Transaction Builder' as well.
During the last year, we've also received interest from an outside contributor to integrate generic typing for Contract Arguments. This will make working with the CashScript SDK safer and less error prone. We want to dedicate time and resources to finish this integration and support this contributor in their work.
In our previous flipstarter we planned to add 'reusable functions' to CashScript. This feature turned out to be much less useful than having proper debug tooling. This is why we have decided to push the idea of 'reusable functions' lower on the list of priorities, albeit still on our longer term roadmap. This also means that a full release of CashScript '1.0' will not be reached for some time yet.
There is also work for continued maintenance and upgrading CashScript for the CHIPs being planned to be activated on Bitcoin Cash in the 2025 network upgrade and beyond. Lastly, with the growing interest in CashScript from the community we want to dedicate time towards eductaion and support. This includes creating more guides and documentation, as well as other forms of educational material.
Deliverables
Over the course of the next year we plan to make 2 new releases v0.11.0 and v0.12.0 over the course of oct 2024 - oct 2025, incorporating some of the new features discussed above. As per usual we plan to release a prerelease first that can be tested by the community, before publishing the final release. There will be a CashScript version upgraded for the new CHIPs well before those activate on mainnet allowing developers to get started with development months in advance.
Scope
We're looking for funding for the development work and maintenance for the next year (oct 2024 - oct 2025). We don't want to commit to a full list of specific deliverables, so we can adapt to the needs of CashScript's users and so we are flexible to leverage outsiders' contributions.
Some of the work we're looking to do is:
Major Items
- Extend Debugging Tooling to the 'Advanced Transaction Builder'
- Improve Typings to Contract Arguments
Minor Items
- Update the CashScript plugin
- Expand the example testing suite
- Fix scientific notation & allow underscores
- Tuple redefinements
- Renaming tx.age
Maintenance
- Refactor last outstanding items of existing debug tooling
- Changes to support new CHIPs (VM limits & BigInts)
- Ongoing bug fixes
Education
- YouTube Tutorials
- Telegram Support
- BCH Bliss Conference Workshop + Talks
- Docs, Guides & Blog Posts
Compensation
Our requested compensation for this flipstarter is 140 BCH.
Our previous fundraiser was for 120 BCH, but we ended up shifting priorities and working on items that were not part of this fundraiser, which led to more work than anticipated. We anticipate that we will run into similar situations going forward, so to be able to dedicate the time needed to CashScript we need to increase our requested compensation to 140 BCH. We also want to create a budget to compensate outside contributors for their work on CashScript.
The requested compensation is split between the following team members and will be used to fund their development time for the duration of the project:
- Rosco Kalis (Lead Developer): 65 BCH
- Mathieu Geukens (Developer): 65 BCH
- Outside Contributors Fund: 10 BCH
Building The Future
Over the last year we have added a number of applications to the CashScript showcase, where you can see the projects enabled by this tooling. We get requests for new features and improvements on a continuous basis, and we want to make CashScript the best tool it can be for BCH contract developers. We have put great work into making CashScript more accesible for new developers and exerienced devs alike. We want to see CashScript tooling help a thriving smart contract ecosystem to develop on Bitcoin Cash.
Thank you
Thanks to everyone pledging to this flipstarter and sharing it with others. Also a thank you to everyone developing with CashScript or simply being an enthusiastic supporter. We hope this fundraiser is successful so we have the finances to dedicate our time to it!