My suggestions so far

Take these for what you will. I like the basic things really.

AJAX working in both WebApp and APK should be seamless
Basically just a few more helpful comments added to the AJAX sample would suffice, such as 'You MUST add CORS headers to your webserver before APKs will be able to fetch data."

Cordova Plug-in activation is not obvious.
It might be a good idea to have a Checkbox style list somewhere that simplifies enabling/disabling the NPM/Cordova plugins

Easy access to the Manifest.json file, perhaps on the ‘Projects Properties’ list somewhere.
I had a few instances where I forgot that one needs to modify the Manifest.json file to update icons. I didn’t see anywhere in the IDE to access this file even though its important.

IDE SHORTCUTS AND BUTTONS

  • Top bar button - The block comment / uncomment would be nice if it had buttons along the top bar
  • Top bar button - The Deploy to FTP/SFT or Deploy to volt should have buttons on the top bar, could also have F9 or other - shortcut button that triggers deployment
  • Could have F7 toggle between Code/GUI editor, its nice to not have to leave the keyboard.

DUPLICATE FUNCTION NAME HIGHLIGHTING
-Search all function names defined in code, If two functions have the same name, throw a popup alert. There is currently no warning. Results appear to be random when trying to run code in this state. This could be optioned for those who don’t like it.

BASIC SYNTAX ERROR HIGHLIGHTING
If there is a syntax error, such as one detected by the code editor. There is currently no notification before proceeding
to Deploy. Perhaps it should run (or have an option to) a full code syntax check prior to Deploy and popup a dialog.

CODE NAVIGATION Quality of life
-Needs Fwd/Back navigation buttons

TEXT BOX and LABEL WORDWRAPPING
-Needs ‘Word Wrap’ property option that could just set the ‘Style’ Propery to ‘white-space:pre;’… right now one must look this up to do what really should just be a ‘built-in’ feature.

IDE PROPERTIES AREA Quality of life
-When clicking on a Property item in the Properties box, the cursor should always
change focus into the value portion of the box, and if you start typing, it should clear the box
then take over input. Currently, its tedious as I often have to click several times to get into the actual
editable portion of the property box, then several more key strokes to clear it out so I can start.

IDE INTELLICODE-like feature
-Nice to have: If when you start typing, a floating popup list of all your vars and objects can be shown for quick reference.
The search operation should not be limited to starting left first chars, but any where in the object or var name.
Word completion would be really nice but just having that list would be most helpful.

IDE - SIMPLE OBJECT NOT FOUND HIGHLIGHTING LOGIC
-Search the code for ‘objects not found’ before uploading / deploying or running. Basically, if a var has a ‘.’ on the end
you should see if there is a matching Object in your object table. If no object found, jump to that line with a warning.

IDE PROJECT VIEW

  • Nice to have a way to ‘Collapse all’ or atleast, have an option in settings which causes the PROJECT view to
    stay collapsed except for the form you are actually working on.

I’m sure many of these aren’t new and I apologize for that.

These are my humble suggestions. Thank you for building such a great product!!!

Thanks for the suggestions - we’ll share them with the team.

I’ve added some comments to your points…

AJAX working in both WebApp and APK should be seamless
Basically just a few more helpful comments added to the AJAX sample would suffice, such as 'You MUST add CORS headers to your webserver before APKs will be able to fetch data."

This is a shifting landscape and tough to keep up with. CORS headers are sometimes needed on the webserver as well to your app.

Cordova Plug-in activation is not obvious.
It might be a good idea to have a Checkbox style list somewhere that simplifies enabling/disabling the NPM/Cordova plugins

This might be tough to do. There are over 1000 plugins that we know of which people are using.

Easy access to the Manifest.json file, perhaps on the ‘Projects Properties’ list somewhere.
I had a few instances where I forgot that one needs to modify the Manifest.json file to update icons. I didn’t see anywhere in the IDE to access this file even though its important.

I think that’s there already. See Project Properties, under Progressive Web Apps.

IDE SHORTCUTS AND BUTTONS

  • Top bar button - The block comment / uncomment would be nice if it had buttons along the top bar
  • Top bar button - The Deploy to FTP/SFT or Deploy to volt should have buttons on the top bar, could also have F9 or other - shortcut button that triggers deployment
  • Could have F7 toggle between Code/GUI editor, its nice to not have to leave the keyboard.

By Top bar, do you mean this?
Screenshot 2024-04-29 at 10.48.14 AM
For deployment, we already have this above the “Top bar”;
Screenshot 2024-04-29 at 10.52.50 AM
I’ve added your function key to toggle between views to our list.

DUPLICATE FUNCTION NAME HIGHLIGHTING
-Search all function names defined in code, If two functions have the same name, throw a popup alert. There is currently no warning. Results appear to be random when trying to run code in this state. This could be optioned for those who don’t like it.

This is probably possible if the two functions are in the same code module. It gets tough if they are in two differently modules, especially if one of them is only pulled in at runtime.

BASIC SYNTAX ERROR HIGHLIGHTING
If there is a syntax error, such as one detected by the code editor. There is currently no notification before proceeding to Deploy. Perhaps it should run (or have an option to) a full code syntax check prior to Deploy and popup a dialog.

This is possible, but may not be practical on large projects with lots of modules.

CODE NAVIGATION Quality of life
-Needs Fwd/Back navigation buttons

Can you explain a bit more?

TEXT BOX and LABEL WORDWRAPPING
-Needs ‘Word Wrap’ property option that could just set the ‘Style’ Propery to ‘white-space:pre;’… right now one must look this up to do what really should just be a ‘built-in’ feature.

This was a conscious choice by us. There are well over 300 style properties we could have included - it would have been impractical to include them all.

IDE PROPERTIES AREA Quality of life
-When clicking on a Property item in the Properties box, the cursor should always
change focus into the value portion of the box, and if you start typing, it should clear the box
then take over input. Currently, its tedious as I often have to click several times to get into the actual
editable portion of the property box, then several more key strokes to clear it out so I can start.

Great suggestion - this is controlled by an underlying library. We have to see if this is controllable in it.

IDE INTELLICODE-like feature
-Nice to have: If when you start typing, a floating popup list of all your vars and objects can be shown for quick reference.
The search operation should not be limited to starting left first chars, but any where in the object or var name.
Word completion would be really nice but just having that list would be most helpful.

I agree - this would be nice. It would also be a lot of work to implement.

IDE - SIMPLE OBJECT NOT FOUND HIGHLIGHTING LOGIC
-Search the code for ‘objects not found’ before uploading / deploying or running. Basically, if a var has a ‘.’ on the end
you should see if there is a matching Object in your object table. If no object found, jump to that line with a warning.

Here we run into the problem of objects defined in other modules. BTW, have you checked out the EsLint button on the “Top bar”?

IDE PROJECT VIEW

  • Nice to have a way to ‘Collapse all’ or at least, have an option in settings which causes the PROJECT view to
    stay collapsed except for the form you are actually working on.

Would this be a button in the “Project Explorer” bar?
Screenshot 2024-04-29 at 11.20.55 AM

For the AJAX comments, I suspected that was the case with things moving fast. Thats why I think just adding more comments to the sample that points the user in the right direction would really helpful. From what I could tell, the CORS headers are required if your app is to communicate with a webserver, which is basically every app I’m ever going to make, thus I thought it reasonable to include those notes in there. The premise I’m going on is that if the user has to search the web just to demonstrate the example… I’m not done with my example :slight_smile:

For the Cordova plug-in list, I realize the list may be huge. If I’d suggest something, pick a few of the common ones such as splashscreen, camera, ect for the checkbox list and just use an ‘Add Custom’ button for the rest. Maybe even include a link to the online list of all of the rest. Basically just get people started.

For the Manifest, sorry about that, I saw that later on, just disregard the ones I miss out of negligence :stuck_out_tongue:

For the Top Bar, yes I was referring to the tool bar like thingge that contains the GPT button and yes I totally spaced it on the Deploy thing.

For the Syntax and search vars functions, I think the only practical way to do this is to have a separate background application that is actively scanning the project files and not try to do it in the IDE. That background worker could then forward alerts to the IDE so the IDE can build a ‘Warnings’ list. Just a thought. It will probably lag behind the user a little, but that would be fine.

For the code navigation, I mean that it would be nice if you could keep track of the Window that is open and the cursor position (line / pos) like an undo buffer. So just like a webbrowser, the user can press a BACK button and the IDE will jump to the previous window and cursor position. Viceversa if the user presses Forward. A common problem for me is that I have 20 or 30 forms, so it gets tedious to jump around where sometimes I’m popping between two forms for a particular part of the application.

For the Text box word wrapping, thats just a nice to have. If I had to ask for a compromise, perhaps a drop down with a few the ‘common’ types, but otherwise you can just type whatever in (freeform like you have it now). Although I dont always do it, I think it an ‘offense’ to update my software and have added more steps to do what was previously done with less steps. The word wrapping is one of those in my mind.

For the Intellicode like feature, yes thats a complex one. I’d do it with a background worker app that is dedicated to making that var list. I’d run it ‘slow’ so it doesn’t tax the PC much, so it might update only once every few seconds, thats usually enough. The user doesn’t forget var names they just created, its the ones they made weeks / months ago :slight_smile:

For the Object not found, I have not checked out the EsLint, I will do that.

For the Collapse on the Project Explorer, yes that one. To keep clutter down, this could be one of those options to keep in the Options panel instead of out front.

Thank you guys for the awesome product!