In the dynamic digital landscape, the demand for accessible, efficient, and robust computational tools for civil engineers is at its peak. However, the power of traditional desktop-based applications is often overshadowed by a significant drawback-platform dependency, a particularly pressing issue in civil engineering. This limitation, coupled with challenges like real-time collaboration, version control, and updates, underscores the need for a solution. Though a complex task, the shift from desktop to web applications is necessary. This is especially true for many existing tools, including those used by civil engineers, written in Python, a language not natively supported in the browser environment. This poses a significant hurdle to the transition, necessitating substantial re-engineering of these tools. WebAssembly ( https://webassembly.org/ ) and Pyodide ( https://pyodide.org/en/stable/ ) are instrumental in facilitating the transition. WebAssembly offers a binary instruction format for a stack-based virtual machine, enabling high-performance applications on web pages. Pyodide, conversely, brings the Python runtime to the browser via WebAssembly, enabling Python scripts to run directly in the browser. Leveraging WebAssembly and Pyodide, we can seamlessly port existing Python-based computational tools for civil engineers to web applications without significant rewrites. This approach ensures the robustness and efficiency of the original Python code and brings the advantages of web applications, such as accessibility, collaboration, and seamless updates, to the forefront.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Overcoming Platform Dependency: The Role of WebAssembly and Pyodide in Civil Engineering Tools Transition

  • Christodoulos Fragkoudakis,
  • Markos Karampatsis,
  • Nikolaos Lagaros

摘要

In the dynamic digital landscape, the demand for accessible, efficient, and robust computational tools for civil engineers is at its peak. However, the power of traditional desktop-based applications is often overshadowed by a significant drawback-platform dependency, a particularly pressing issue in civil engineering. This limitation, coupled with challenges like real-time collaboration, version control, and updates, underscores the need for a solution. Though a complex task, the shift from desktop to web applications is necessary. This is especially true for many existing tools, including those used by civil engineers, written in Python, a language not natively supported in the browser environment. This poses a significant hurdle to the transition, necessitating substantial re-engineering of these tools. WebAssembly ( https://webassembly.org/ ) and Pyodide ( https://pyodide.org/en/stable/ ) are instrumental in facilitating the transition. WebAssembly offers a binary instruction format for a stack-based virtual machine, enabling high-performance applications on web pages. Pyodide, conversely, brings the Python runtime to the browser via WebAssembly, enabling Python scripts to run directly in the browser. Leveraging WebAssembly and Pyodide, we can seamlessly port existing Python-based computational tools for civil engineers to web applications without significant rewrites. This approach ensures the robustness and efficiency of the original Python code and brings the advantages of web applications, such as accessibility, collaboration, and seamless updates, to the forefront.