Please describe your proposed solution.
Our proposed solution is to develop an open-source code runner that can execute code in various languages and Cardano smart contracts. This tool will serve as a valuable infrastructure for developers in the Cardano ecosystem, enabling them to test and verify their code in a streamlined and efficient manner.
The code runner will have the capability to run code in multiple programming languages, making it a versatile tool for developers working in different tech stacks. Furthermore, it will have the functionality to run smart contracts in the Cardano testnet, providing a practical tool for developers to test and refine their smart contracts before deploying them.
In addition to running code, the code runner will also have the ability to verify codes by checking outputs and verifying source code using REGEX. This feature will be particularly useful for educational purposes, as it will allow learners to check their code against predefined criteria and receive immediate feedback on their work.
Importantly, we will expose an API for the code runner, allowing other developers to easily integrate this tool into their own applications. This will further extend the utility of the code runner and encourage its widespread adoption in the Cardano developer community.
By providing this open-source tool to the Cardano community, we aim to foster a more robust and dynamic development environment, encourage learning and experimentation, and ultimately contribute to the growth and advancement of the Cardano ecosystem.
How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?
Our proposed solution addresses the challenge by providing an open-source, multi-language code runner that can execute and verify Cardano smart contracts. This tool will serve as a valuable infrastructure for developers in the Cardano ecosystem, enabling them to test and verify their code in a streamlined and efficient manner.
The benefits to the Cardano ecosystem are manifold:
- Fostering Development: By providing a tool that can run and verify code in various languages and Cardano smart contracts, we are removing a significant barrier to entry for developers. This will encourage more developers to build on Cardano, strengthening the ecosystem.
- Promoting Learning: The code runner will be particularly useful for educational purposes, as it will allow learners to check their code against predefined criteria and receive immediate feedback on their work. This will foster a culture of learning and experimentation in the Cardano community.
- Encouraging Integration: By exposing an API for the code runner, we are making it easy for other developers to integrate this tool into their own applications. This will further extend the utility of the code runner and encourage its widespread adoption in the Cardano developer community.
- Boosting Adoption: The availability of an open-source code runner specifically designed for Cardano will promote the Cardano blockchain to developers. This can lead to more developers choosing Cardano as their preferred blockchain for building applications, thereby boosting the adoption of Cardano.
In terms of impact, we believe our project will bring a significant number of developers and learners to the Cardano community.
How do you intend to measure the success of your project?
The success of our project will be measured through a combination of quantitative and qualitative metrics.
- Integration Metrics: We aim to have the code runner integrated into at least three applications within a year of its launch. This is a realistic goal given the utility of the code runner and the growing interest in Cardano development.
- Usage Metrics: We will track the number of code executions and verifications performed using the code runner. An increase in these numbers over time would indicate that the tool is being actively used and is providing value to the community.
- Community Feedback: We will actively seek feedback from the Cardano developer community. Positive feedback and constructive suggestions for improvement would indicate that our tool is meeting the needs of the community.
- Contributions to the Codebase: As an open-source project, another measure of success would be the number of contributions made to the codebase by other developers. This would indicate that the project has gained traction and is seen as valuable by the developer community.
In the short term, the code runner will enhance Cardano's productivity by providing a tool that simplifies the process of testing and verifying code. In the long term, it will contribute to Cardano's growth by attracting more developers to the ecosystem and fostering a culture of learning and experimentation.
Please describe your plans to share the outputs and results of your project?
Our plans to share the outputs and results of our project are as follows:
- Public Repository: We will host the codebase on GitHub, making it publicly accessible for anyone interested in the project. This will allow other developers to review our code, suggest improvements, and even contribute to the project.
- Releases: We will regularly release updates to the code runner, each time adding new features, fixing bugs, and improving performance. These releases will be documented and shared on GitHub.
- Documentation: We will provide comprehensive documentation on how to use and integrate the code runner. This will include a user guide, API documentation in OpenAPI format, and examples of how to use the code runner in various scenarios. The documentation will be hosted on GitHub and linked from the project's README file.
- Discord Server: We have a Discord server where we will share updates about the project, collaborate with other developers, and gather feedback from the community. This will serve as a hub for community engagement and collaboration.
- Further Research and Development: The results generated from the project will be used to guide further research and development activities. We will analyze usage data, feedback, and contributions to identify areas for improvement and new features to add. This will ensure that the code runner continues to evolve and meet the needs of the Cardano developer community.
By sharing our outputs and results in this way, we aim to foster a collaborative and transparent development process, engage with the community, and continuously improve the code runner based on user feedback and needs.