DEV Community

WangGithub0
WangGithub0

Posted on

Running Ruby Scripts in ChatCraft with Python-WASI

This week I began to integrate Python support into ChatCraftFunction, a feature that promised to enhance the platform's versatility and appeal. However, after careful consideration and exploration, we changed it.

The Initial Python Proposal
The idea to support Python in ChatCraftFunction was driven by the language's popularity and its wide range of applications, from web development to data analysis. Python's simplicity and readability made it an attractive option for our platform, aiming to empower users with the ability to run Python scripts seamlessly within ChatCraft. I tried to revise part of ChatCraftFunction and found I need create a package which is similar to typescript2openai and require user to add the parameter types into python comments also considered about adding a 'language' into function DB.

A Shift in Focus
As the development process unfolded, discussions among team members and feedback from the community prompted a reevaluation of our priorities. The niche nature of ChatCraft functions at the time, coupled with the desire to concentrate on other features such as custom OpenAI-compatible providers and sharing improvements, led to a strategic pivot. The decision was made to hold off on Python integration, opting instead to wait and see how demand for such functionality would evolve over time.

Embracing Ruby
In this period of reflection and exploration, I tested more wasi file and add Ruby into the run-code. Ruby, known for its elegance and productivity, offered a compelling alternative that aligned well with our platform's goals and the needs of our community. The journey of integrating Ruby into ChatCraftFunction has been similar to integrate Python I did last weel

Conclusion
The development of ChatCraftFunction is a continuous journey of learning, adapting, and evolving. As ChatCraft continues to grow and evolve, we remain excited about the possibilities that lie ahead and are committed to exploring new ways to empower our users.

Top comments (0)