Last active
September 4, 2025 17:15
-
-
Save kenwebb/99e975b0be0219ce2500a54016112b77 to your computer and use it in GitHub Desktop.
Progressive Web Application (PWA) - 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!--Xholon Workbook http://www.primordion.com/Xholon/gwt/ MIT License, Copyright (C) Ken Webb, Thu Sep 04 2025 13:14:38 GMT-0400 (Eastern Daylight Time)--> | |
| <XholonWorkbook> | |
| <Notes><![CDATA[ | |
| Xholon | |
| ------ | |
| Title: Progressive Web Application (PWA) - 2025 | |
| Description: | |
| Url: http://www.primordion.com/Xholon/gwt/ | |
| InternalName: 99e975b0be0219ce2500a54016112b77 | |
| Keywords: | |
| My Notes | |
| -------- | |
| 2025 Sept 4 | |
| This workbook is a fresh look at progressive web applications (PWA) as of September 2025. | |
| ## References | |
| (1) search: web app pwa | |
| (2) https://learn.microsoft.com/en-us/microsoft-edge/progressive-web-apps/ | |
| (3) https://github.com/MicrosoftEdge/Demos | |
| (4) https://github.com/MicrosoftEdge/Demos/tree/main/pwa-getting-started | |
| Temperature converter - PWA getting started demo app | |
| (5) https://microsoftedge.github.io/Demos/pwa-getting-started/ | |
| sample web app, ready to be installed and run | |
| (6) https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Guides/What_is_a_progressive_web_app | |
| (7) https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Tutorials/CycleTracker | |
| (8) https://web.dev/learn/pwa/getting-started | |
| (9) https://en.wikipedia.org/wiki/Progressive_web_app | |
| (10) https://www.w3.org/groups/wg/webapps/publications/ | |
| (11) search: web app pwa react | |
| (12) search: web app pwa react native | |
| ]]></Notes> | |
| <_-.XholonClass> | |
| <!-- domain objects --> | |
| <PhysicalSystem/> | |
| <Block/> | |
| <Brick/> | |
| <!-- quantities --> | |
| <Height superClass="Quantity"/> | |
| </_-.XholonClass> | |
| <xholonClassDetails> | |
| <Block> | |
| <port name="height" connector="Height"/> | |
| </Block> | |
| </xholonClassDetails> | |
| <PhysicalSystem> | |
| <Block> | |
| <Height>0.1 m</Height> | |
| </Block> | |
| <Brick multiplicity="2"/> | |
| </PhysicalSystem> | |
| <Blockbehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[ | |
| var a = 123; | |
| var b = 456; | |
| var c = a * b; | |
| if (console) { | |
| console.log(c); | |
| } | |
| //# sourceURL=Blockbehavior.js | |
| ]]></Blockbehavior> | |
| <Heightbehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[ | |
| var myHeight, testing; | |
| var beh = { | |
| postConfigure: function() { | |
| testing = Math.floor(Math.random() * 10); | |
| myHeight = this.cnode.parent(); | |
| }, | |
| act: function() { | |
| myHeight.println(this.toString()); | |
| }, | |
| toString: function() { | |
| return "testing:" + testing; | |
| } | |
| } | |
| //# sourceURL=Heightbehavior.js | |
| ]]></Heightbehavior> | |
| <Brickbehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[ | |
| $wnd.xh.Brickbehavior = function Brickbehavior() {} | |
| $wnd.xh.Brickbehavior.prototype.postConfigure = function() { | |
| this.brick = this.cnode.parent(); | |
| this.iam = " red brick"; | |
| }; | |
| $wnd.xh.Brickbehavior.prototype.act = function() { | |
| this.brick.println("I am a" + this.iam); | |
| }; | |
| //# sourceURL=Brickbehavior.js | |
| ]]></Brickbehavior> | |
| <Brickbehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[ | |
| console.log("I'm another brick behavior"); | |
| ]]></Brickbehavior> | |
| <SvgClient><Attribute_String roleName="svgUri"><![CDATA[data:image/svg+xml, | |
| <svg width="100" height="50" xmlns="http://www.w3.org/2000/svg"> | |
| <g> | |
| <title>Block</title> | |
| <rect id="PhysicalSystem/Block" fill="#98FB98" height="50" width="50" x="25" y="0"/> | |
| <g> | |
| <title>Height</title> | |
| <rect id="PhysicalSystem/Block/Height" fill="#6AB06A" height="50" width="10" x="80" y="0"/> | |
| </g> | |
| </g> | |
| </svg> | |
| ]]></Attribute_String><Attribute_String roleName="setup">${MODELNAME_DEFAULT},${SVGURI_DEFAULT}</Attribute_String></SvgClient> | |
| </XholonWorkbook> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment