[Ribbit-Developers] Rattlegram Test PWA

Rich Clingman richclingman at gmail.com
Thu Aug 17 14:14:44 PDT 2023


Hi, Pierre!
Thanks for the welcome. And kudos for the great Ribbit presentations. You've convinced me. And it seems like a great challenge to join in the early stages.
I think you're right about the positives of a PWA. I believe it'll also be much easier to support forms and other distant objectives. 
I'm available most any time (CDT). I've got a paid Zoom, if you want to go that way.
It'd be awesome to get Ahmed's help by creating a WASM rapper for Ribbit listen and send similar to his DSP Example1-8 code. I could probably figure it out from his Modem code, but I figure he'll probably snap it together if he doesn't have it already. I'd love to try basic messaging in the PWA.
BTW: If you want to register "ribbit.radio", I just checked, and it's currently available. They have a $25 rate for non-commercial/non-profits. The TLD agency is out of Switzerland. I've registered bandplan.radio with the hope of getting something on there soon.
Rich Clingman, K0OZK
www.k0ozk.com <http://www.k0ozk.com> 
https://rattlegram.k0ozk.com <https://rattlegram.k0ozk.com> 
W4CKX wrote:
Hello Rich!!
Welcome to the Ribbit developers mailing list.
What a nice surprise!
Thank you for starting a PWA application demo.
It's definitely a direction that we want to explore to see if it would be a good fit for the project.
I am starting to believe that conventional mobile app development is expensive and maintaining a codebase across platforms is resource intensive.
My hope is that relying on web standards will allow for a lighter/lightweight approach more in line with the resources that we have as an open source project.
I also hope that by relying on web standards, we will have a stability and not require the constant code updates needed in conventional app development to keep up with operating systems version upgrades over time.
Welcome to the team.
Would you be available for a call to talk, get to know you and exchange about the future of Ribbit.
Pierre W4CKX 
On Thu, Aug 17, 2023, 4:22 PM Rich Clingman via Ribbit-Developers <ribbit-developers at lists.openresearch.institute> wrote:
About This Rattlegram Test PWA
Thursday, August 17, 2023
<h3 id="m_8166811082624253157gmail-install-the-web-app" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">Install the Web App <https://rattlegram.k0ozk.com/blog/about#install-the-web-app> </h3>
This test Rattlegram Web App is available at Rattlegram.K0OZK.com <https://rattlegram.k0ozk.com/> .
If you're using a compatible browser, you should see an install icon in the browser address bar or a prompt at the bottom of your mobile screen. It's very likely we'll find problems with this test PWA. I did only minimal wrapping of Ahmet Inan's Example 3 JS code. (I just noticed that in Airplane Mode, hitting Refresh will break the installed app. I'm sure that I just need to configure the Service Worker correctly.)
<h3 id="m_8166811082624253157gmail-dsp-wasm-pwa" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">DSP, WASM, PWA <https://rattlegram.k0ozk.com/blog/about#dsp-wasm-pwa> </h3>
I've published this basic Progressive Web Application using Example 3 from Ahmet Inan's 2019 Digital Signal Processing Library/Web Assembly work <https://www.aicodix.de/example3/> .
This basic app will allow us to test the PWA, DSP, WASM, and access to audio and GPS on various devices to see if pursuing a device-agnostic/single codebase PWA could be beneficial. I've tested the PWA on Windows and Android 11. It should work on all PWA and Web Assembly-compliant browsers. It should be "installable" on those devices as well.
<h3 id="m_8166811082624253157gmail-why-pwa" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">Why PWA? <https://rattlegram.k0ozk.com/blog/about#why-pwa> </h3>
In addition to watching all available presentations on Ribbit, I read the emails archived in the ORI mailing lists. Josh Datko raised the issue of a PWA in the July discussion. I think a PWA will speed up development and adoption. It'll also allow us to deploy Windows/Mac/Linux support at the same time as mobile. There'd be no need for device-specific apps. No app store. The PWA should run–and be installable–on IOS, Android, Windows, Mac, Chrome, Linux, Arduino?—virtually anything with a browser that supports the necessary features.
<h3 id="m_8166811082624253157gmail-in-an-emergency-situation" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">In an Emergency Situation <https://rattlegram.k0ozk.com/blog/about#in-an-emergency-situation> </h3>
No Internet. The App Store and Play Store are inaccessible. No one can use Ribbit if they've not already installed it.
But a PWA could be distributed via an ad-hoc web server at the EOC or even one running on your smartphone.
<h3 id="m_8166811082624253157gmail-imagine" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">Imagine... <https://rattlegram.k0ozk.com/blog/about#imagine> </h3>
No internet. I join your phone's hotspot. I scan the QR code on your phone. My browser loads the Ribbit PWA and asks if I want to install it. Of course! Then I turn on my hotspot and offer the PWA to the next ham. I think this could be done.
<h3 id="m_8166811082624253157gmail-development-and-deployment" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">Development and Deployment <https://rattlegram.k0ozk.com/blog/about#development-and-deployment> </h3>
This test PWA is set up with CI/CD. The latest release is built and deployed to the production site within a couple minutes of code being pushed to the repository. By using Pull Requests, a preview website is automatically created. We can use the preview to test and approve the latest release. Then, with one click, we release the latest awesomeness.
<h3 id="m_8166811082624253157gmail-update-the-app-on-all-your-devices" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">Update the App on All Your Devices <https://rattlegram.k0ozk.com/blog/about#update-the-app-on-all-your-devices> </h3>
No need to reinstall the app. My experience is that if you right-click/refresh or close/open the app, your device is instantly updated to the latest release. This is not simply "a cached webpage." This is a full-blown installed application on par with every other app. When properly configured, it should continue to run without Internet access indefinitely. And we can add message caching so they'll be uploaded once the Internet is accessible.
<h3 id="m_8166811082624253157gmail-under-the-hood" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">Under the Hood <https://rattlegram.k0ozk.com/blog/about#under-the-hood> </h3>
Public Repository for this PWA <https://github.com/richclingman/rattlegram-pwa> .
This PWA is built using Nuxt3/VueJs3 with its Content module (see the simple blog pages), and Bulma CSS/SASS. It's currently hosted on my paid Netlify account. Netlify offers free accounts that should support the Ribbit development and full deployment.
<h3 id="m_8166811082624253157gmail-how-i-discovered-ribbit" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">How I Discovered Ribbit <https://rattlegram.k0ozk.com/blog/about#how-i-discovered-ribbit> </h3>
Just this past weekend, I came across the Ribbit presentation in the RATPAC videos <https://www.youtube.com/watch?v=TGzgIjEt9wA> and have watched "every" Ribbit video and tried out the Android Rattlegram app. Awesome! Great work on the concept, algorithm, and app. Great presentations! I decided to try Ahmet Inan's DSP functions in a PWA to see if it's a viable concept. I've worked with Web Audio API, but never combined C++ and Javascript to get Web Assembly apps. This is my first real attempt at a PWA, so I'm sure there are a lot of things to be enhanced.
<h3 id="m_8166811082624253157gmail-_73" style="box-sizing:inherit;margin:1.3333em 0px 0.6666em;padding:0px;font-size:1.5em;color:rgb(54,54,54);line-height:1.125;font-family:BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif">73 <https://rattlegram.k0ozk.com/blog/about#_73> </h3>
I'm a software engineer -- full-stack, back-end, and cloud. And I'm an Extra Class Amateur (without much actual radio experience other than 2m).
Rich Clingman, K0OZK <https://k0ozk.com/> 
Ozark, Missouri, USA
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openresearch.institute/pipermail/ribbit-developers-openresearch.institute/attachments/20230817/1f906cf8/attachment-0001.htm>


More information about the Ribbit-Developers mailing list