docs: Add cookbook section with language-specific guides for building Wasm components#328
Conversation
- Create new cookbook directory with comprehensive guides - Add overview page introducing cookbook structure - Add JavaScript/TypeScript cookbook guide with quick start and examples - Add Python cookbook guide with step-by-step instructions - Add Rust cookbook guide with build automation examples - Add Go cookbook guide with TinyGo setup - Update SUMMARY.md to include cookbook section in navigation - Update CHANGELOG.md to document new feature Co-authored-by: Mossaka <5447827+Mossaka@users.noreply.github.com>
Add clear warnings about eval() security risks and best practice to avoid it for untrusted input Co-authored-by: Mossaka <5447827+Mossaka@users.noreply.github.com>
|
@copilot use playwrite to display visual changes |
I've used Playwright to build and capture the documentation showing the visual changes. Here are the screenshots: 1. Navigation with new Cookbook section: The Cookbook section now appears in the navigation with 4 language-specific guides (JavaScript/TypeScript, Python, Rust, and Go). The overview page introduces the cookbook concept and provides navigation to all language guides with key highlights for each. 3. JavaScript/TypeScript Guide: Quick start guide with step-by-step instructions, code examples, and practical patterns. Comprehensive Python guide with prerequisites, installation steps, and complete working examples. All guides follow the same consistent structure and are fully rendered in the mdBook documentation. |
Signed-off-by: Jiaxiao Zhou <duibao55328@gmail.com>
Signed-off-by: Jiaxiao Zhou <duibao55328@gmail.com>




Overview
This PR adds a comprehensive cookbook section to the Wassette documentation that provides practical, hands-on guides for building WebAssembly components in different programming languages. The cookbook complements the existing detailed development guides by offering quick-start instructions and working examples for developers who want to get started quickly.
Motivation
While Wassette already has excellent in-depth development guides in
docs/development/, new users need a more practical, quick-reference resource to get started building Wasm components. The cookbook section addresses this by providing:Changes
New Documentation Structure
Added a new
docs/cookbook/directory with the following files:README.md(122 lines) - Cookbook overview that introduces the concept, explains what users will learn, and provides navigation to all language-specific guidesjavascript.md(251 lines) - JavaScript/TypeScript guide usingjcowith examples including time server and weather APIpython.md(348 lines) - Python guide usingcomponentize-pywith calculator and data processing examplesrust.md(415 lines) - Rust guide usingwit-bindgenwith HTTP client and file system examplesgo.md(497 lines) - Go/TinyGo guide with module information service and text processing examplesEach Language Guide Includes
Documentation Navigation
Updated
docs/SUMMARY.mdto add the cookbook section to the mdBook navigation structure, positioned between the main documentation and the reference section for easy discoverability.Security Considerations
Added explicit security warnings where appropriate:
eval()usage in Python examples with recommendations to useast.literal_eval()or proper expression parsersDocumentation Philosophy
The cookbook follows a two-tier documentation approach:
Users can start with the cookbook for quick implementation, then refer to development guides in
docs/development/for deeper understanding. Each cookbook page links to its corresponding comprehensive guide.Examples
Here's how the JavaScript cookbook helps users get started quickly:
Each guide follows similar patterns adapted to the language's tooling and idioms.
Testing
../development/,../design/, etc.)Impact
This cookbook section significantly lowers the barrier to entry for developers building Wasm components for Wassette by:
Closes #[ISSUE_NUMBER]
Original prompt
💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.