Buildfire: Debugging on IOS Test Flight - buildfire

I can't seem to figure out why my plugin works fine on the Web App mode, versus the IOS Test Flight.
It seems like an angularjs dependency is not loading correctly, but I have no way of knowing.

Not sure what your app/plugin situation is precisely. However, a good place to start would be here https://github.com/BuildFire/sdk/wiki/App-Developer-Mode this will allow you to test your code live on the device without publishing. It hijacks the plugin and loads your localhost version so that you can test on the fly changes.
Also, you may want to try shipping logs with http://debug.buildfire.com this will allow you to read console logs remotely

Related

Debugging a node.js project in Visual Studio 2022

I'm trying to expand a sudoku web application that I've checked out locally with visual studio 2022, namely this one: https://github.com/michel-kraemer/sudocle
My goal is to implement additional functionality and I'm using this as a learning experience in frontend development since I'm currently only doing backend. I can get the application to run in my localhost using node.js as detailed in the readme and I can modify some very basic things (e.g. changing texts) but to really get started, I would like to debug the application as it's running on my local server. The expectation is that I could set breakpoints in function that I want to modify to see the state of variables at runtime.
This is where I'm stuck. I've tried attaching the debugger to various processes and I can get it started from the next.config.js file, however I think it's not connected to my localhost then and I'm not sure how to trigger any functions from that point. Maybe I'm also misunderstanding the functions of a debugger in a web application.
For what it's worth, those are the sites I've been reading trying to solve my issue, so far with no luck:
https://github.com/Microsoft/nodejstools/wiki/Debugging
https://learn.microsoft.com/en-us/visualstudio/debugger/troubleshooting-breakpoints?view=vs-2022
https://code.visualstudio.com/docs/nodejs/nodejs-debugging#_auto-attach
F5 or Start Debugging Button is Greyed Out for Winform application?
https://learn.microsoft.com/en-us/visualstudio/debugger/debugger-feature-tour?view=vs-2022
I hope a more experienced dev can help me out here.

Buildfire - Load custom plugin on offline mode

Our app is composed of several custom plugins. We would want our app to still work offline so our users will be able to navigate within the app even without internet connection.
The problem is when offline, we cannot switch to another plugin. It doesn't load and only displays the image below.
What's the best approach to this?
Assuming your app configuration has offline mode turned on
The builtin offline support is for the Datastore and ImageLib.
so if you use datastore to save your content then it should work in offline mode.
As for ImageLib as long as you use buildfire.imageLib.local that should support offline mode as well see docs here https://github.com/BuildFire/sdk/wiki/How-to-use-ImageLib

Retroarch js emulator not working on webpage

I am trying to develop a simple web page that allows a user to play a retro game (like Mario) using his browser. For this I have decided to use the js emulators that have been compiled from retroarch using emscripten. I have been told that some of the js emulators available on libretro website currently (https://buildbot.libretro.com/stable/1.7.0/emscripten/) do not work properly (example: n64 js emulator). So, I am trying to use the older version available on play-roms.com but I have not been able to make it work even after a lot of work.
The problem
I am trying to just replicate this game page to work locally on my machine: https://play-roms.com/nintendo-64/super-mario-64 Since, it is mostly dependent on HTML, CSS and JS, I simply copied all the HTML,CSS, JS files and also the emulator and .mem files. When I tried to make them work locally, they simply do not work. I get a constant warning in console in infinite loop:
"RetroArch [libretro INFO] :: mupen64plus: Memory initialized"
This warning does not allow the game to load. Please note that I do not get any other warning or errors on the console which are not already happening on the original mario page of play-roms from which I copied the files.
I assume that the problem is happening because of some issue with .mem file. Next, I tried to fetch the mem file from play-roms server itself (just for testing purpose) but that also did not help. (Please note that I am aware of CORS and know how to handle it). I still get the same error even when mem file is fetched from play-roms
I talked to someone who has worked in this area before and he confirmed that he too faced the exact same issue of "Memory initialized" in infinite loop when he tried it. He too could not solve it.
Please note that copying some other website is not my goal. I am just trying to make the retroarch js emulators work for my website.

Debugging React/Node back-end

So, here's the situation. I've recently "inherited" a decent sized web application, built using React (and Redux) and compiled using webpack/babel. Two files are generated, app.js and server.js, both of which run on Node.
The original developer of the project was mostly "winging it" on the back-end (server.jsx and so on -> server.js), using console.log to figure out what was going on, and then just gut feeling the fix. That works on a smaller scale, but will be problematic in time.
I can debug both of the actual files, but only app.js is ever mapped properly, meaning I can debug the source code. This also affects hot loading. Any breakpoints related to server.js will only trigger in the actual server.js file in IntelliJ, which is a completely unreadable mesh, so that's not really an option.
I'm using IntelliJ (WebStorm for those of you who only use the web version), and I've tried to use every single guide I've come across to set it up, which usually comes down to babel-node, babel watchers or webpack-dev-server. The current app.js is run using webpack-dev-middleware, and debugging it in Chrome works like a charm, but for some reason it always just bundles in server.js and then fires when ready (in these Star Wars times).
I understand that it's hard for Chrome to get access to server.jsx, but surely there must be some way of setting up IntelliJ (or WebStorm) to do so? I'm more used to a Java or C# server side, so I'm a bit baffled that this isn't a straight forward, out-of-the-box option. Or maybe it is, and the initial setup is lacking?
PS. When using React (and Redux) as both the front and back end on Node, is it meant to be virtually impossible to distinguish between the two? Server.jsx is fairly obvious, but there are quite a few duplicated javascript files and dependancies, especially related to handling/building the Redux store.

Get desktop notifications from application

I've created a NodeJS application which scrapes and parses the contents of a web page at regular intervals, checking if certain things on the web page have been updated since the last time it was parsed. The application runs locally, in the background.
I need the application to be able to provide me with some sort of a notification for when these things are updated. Is there any way that the application can show a tooltip in the Windows tray area, or provide any other sort of notification to me?
The only thing I can find is node-notify (https://github.com/olalonde/node-notify), but that appears to be for Ubuntu. As a last resort, I could have the application run a local web server and update the contents of a page based on whether anything on the scraped web page has been updated, then use something else entirely (e.g. an AutoHotkey script) which checks the page on the local web server to see if anything has changed, and use that to display the tooltips. Obviously, it would be much easier if the application itself could notify me in some way.
There is a node-growl module from visionmedia.
You just need to install Growl and growlnotify manually and then the node module with:
npm install growl
Then, it's as easy as doing:
var growl = require('growl');
growl('Hello World!');
There are more examples (including use of images) on the projects' site.
While Growl is definitely the more visually appealing option, I'd like to propose Notifu as an alternative for future readers of this question.
Fair warning: it has not been updated since Feb 2010, but still...
It does still work on Win7.
It does not require any additional software to be installed on the computer.
It can be packaged with the Node.js app.
Can be easily integrated using any of the numerous Node modules for running system commands.

Resources