30 August 2023

XaoS in WebAssembly


In this post I humbly announce the current state of the XaoS in WebAssembly project. The project was financially supported by Google (in the Google Summer of Code 2023 programme). The code was improved by Abhishek Tiwari, a university student from India. His work was quite difficult: he had to use bleeding edge technologies like Qt 6.5.2, emscripten 3.1.25, and other exotic tools!

As a mentor on behalf of GNU I helped him to make some substantial changes to get XaoS work in a web environment, including mobile phones. Our project has not yet been fully finished, but great results have already been achieved, and the new version works quite nicely in the recent web browsers. My co-mentor Anurag Aggarwal (a former student in the same programme in 2020, also a great supporter of XaoS) helped to get all these things work.

I will not go in the very technical details. If you are interested, please have a look at Abhishek's summary. I forked his final version and did some minor additions to support file loading and saving. Now most features of XaoS nicely work in the web environment, today's version can be tried here. The official version will hopefully be regularly updated at matek.hu/kovzol/xaos.

These are the most important features that already work: Some minor features like modifiyng the font, fine tuning the color palette, setting perturbation are missing yet. Some enhancements should be done to speed up the computation in certain cases. Also, the user interface could be enhanced in many ways.



Entries on topic technical developments

  1. Embedding realgeom in GeoGebra (9 July 2021)
  2. Web version of Tarski (1 October 2021)
  3. Developing Giac with Qt Creator on Windows (24 January 2022)
  4. Compiling Giac via MSYS2/CLANG32 (2 April 2022)
  5. Terminals on the web (28 June 2022)
  6. Torus puzzle (15 April 2023)
  7. Tube amoeba (16 April 2023)
  8. XaoS in WebAssembly (30 August 2023)
  9. Debut of GNU Aris in WebAssembly (11 November 2023)
  10. JGEX 0.81 (in Hungarian) (10 December 2023)
  11. xaos.app (2 January 2024)
  12. Compiling and running bibref-qt on Wine (22 August 2024)

Zoltán Kovács
Linz School of Education
Johannes Kepler University
Altenberger Strasse 69
A-4040 Linz