stacksgov / grants-program

Welcome to the Stacks Foundation Grant Program. Community members interested in submitting a grant proposal may do so by opening an issue in this repository and filling out the grant application.
140 stars 36 forks source link

Parse Comments to Unit test #827

Closed yourmercury closed 1 year ago

yourmercury commented 1 year ago

APPLICANT

Type:                                                                        Direct Application

Email:                                                                    momohpolycarp@gmail.com

Discord:                                                    yourmercury#8205

Twitter:                                                        @yourmercury_

Stacks Forum:           

GRANT BASICS

Grant Name:                                        Parse Comments to Unit test

Total Budget:                              22,000

Total Duration:                 288

Grant Type:                                               Open Source Dev 1st time Grantees

Grant Track:                                          Stacks Developer Experience

Grant Goal:                                               Integrate Between Technologies

Grant Audience:             Developers

Specific Audience:         Clarity developers. especially the ones who are not JS devs

Grant Team:                                       yourmercury,teen0809

Previous Grants:                      Clarinet GUI - grant 505 on the former dashboard

Ecosystem Programs:      

GRANT MISSION, IMPACT, RISKS & REFERENCE

Grant Mission:         Unit testing allows for consistent, repeatable, and efficient testing of smart contract code. Due to the immutable nature of smart contracts, it helps to identify bugs and issues early in the dev process, making it easier to fix them before they become critical.

To write and run Units Tests for Clarity contracts, we use the test framework shipped with Deno which is a javascript runtime. it is pretty easy to use when you are a javascript developer but the small issue is that it is as time consuming or more time consuming than actually writing the contracts.

Also, as Clarity being one of my favorite languages because it is super easy to assimilate or learn, it won't be alien for someone's first language to be clarity. This would pose a little problem in terms of writing Unit tests.

Also, Unit test from function to function are usually very alike in terms of processes. This makes it possible to break and or map these processes to simple understandable comments on our clarity codes that would be easily parsed to output javascript unit test snippets.

We pledge to solve these listed problems by Creating this command line application that takes a line of comment on our clarity code and parses a corresponding Javascript test for clarinet to run. Hereby reducing the development time and greatly reducing the need to write test in Javascript to maybe for some really technically heavy test processes. Developers would not need to be Javascript savvy to write the all important Unit testing.

The application does not run the Unit tests. All it does is parse them to Javascript. The developer would still need to call clarinet test which would run the derived Javascript tests

Grant Impact:               Usability. There would definitely be some manual testing of the application by developers in the community to give their sincere opinions about the usability of the CLI. these feedback would be documented and reported.

Grant Risks:                          There is a risk of defining too much commands for the comments that it would not help users who already know JS and those who don't will need to memorize a whole lot of commands. But we decided to go with what we call the 'process-mapping' approach. This would enable the app have less commands.

Support Link:                                     Above is a short illustration of the concept that is to be implemented

GRANT ROADMAP & DELIVERABLES

MILESTONE 1:

Deliverable:                   We would deliver and demonstrate the completed CLI application and Documentation

FINAL DELIVERABLE

Deliverable:                   CLI app and documentation to parse comments to JS unit test for clarity

stacks-foundation commented 1 year ago

👋 @yourmercury
Thanks for your application! We will do a pre-review and let you know if we have any immediate questions. In the mean time please refer to our review schedule here for a detailed timeline and response dates.
Best, Will

will-corcoran commented 1 year ago

Hi @yourmercury

Thanks for your patience, but unfortunately, we will need to deny your application at this time. Funding tooling needed around the sBTC protocol is still our top priority and the list of identified needs is poised to receive the majority of the available grants budget for the next 2-3 quarters. I would encourage you to keep an eye on the Critical Bounties though! We would love your participation on that front.

Thanks for your understanding.

Best, Will