TideSDK - Code Obfuscate - tidesdk

Is there some guide line for obfuscating my code, especially php in TideSDK, What are the possible options ?

Google closure is available for JavaScript obfuscation by providing an option to the tidebuilder.py CLI utility while we work on a more permanent solution for all application Resources.

Related

What Javascript engine is used by Paw?

I've been trying my hand at writing some code generator extensions. Using "regular" Javascript these work fine so I decided to up the ante and convert them to ES2015 and/or TypeScript based projects. However the transpiled code cannot always be registered as a Paw extension. So this got me wondering: what Javascript engine is actually running under the hood? Should it be able to talk native ES6 code? Is this planned?
Paw links against Apple's official JavaScript Core framework, as it can be found in:
/System/Library/Frameworks/JavaScriptCore.framework/
And Safari is also linked against it. You can find the actual jsc binary here:
/System/Library/Frameworks/JavaScriptCore.framework/Versions/Current/Resources/jsc
It sounds like all ECMA-262 (=ES2015) tests pass except promises: test262/CONSOLE-RUNNER.md
My guess is as features are added on Safari, at each OS upgrade, they are also added to the JavaScript Core framework. So the exact ECMA compatibility probably depends on the OS version.

Which tool can I use to generate a .jshintrc file with default options?

I've being using JSLint for some time now and recently found JSHint. Reading the docs I learned that it can be configured using a .jshintrc file but I could not found if it's possible to generate this file using the CLI.
Is there a flag in the CLI to generate such file (preferably with all the options set) or another tool that allows me to do that?
Not really going to answer your question but I found the JShint I use on some article about code style guides, in a free HTML eBook SpeakingJS - Style guide.
They talk about Google's guideline, AirBNB's guideline, jQuery's guideline, and others, most of the time those links provide its a ready to use jshint file ... may be this could help you :).
If you want to generate your own JSHint, I don't know if you are familiar with Yeoman but this project is exactly what you re looking for : https://github.com/losingkeys/generator-jshint
After generating it, any text editor can be used to edit such a simple file.

single secure executable for tidesdk

I just started looking into TideSdk and noticed that when I "compile" (or package) a project (in Win-7), I get all of these dependecies which is actually the un-compiled source code for the app.
Is there any way to:
Have Tide SDK package a file to one executable
Not have the source code visible in any way, shape, or form in the final executable?
If none of those are possible, is there an alternative that can to these things?
We are working on a solution. There are a few possibilities. The only thing that is possible currently is to obfuscate your code using google closure library through a tidebuilder option.
I found this on google when trying to do something similar. It is annoying but seems to work.
http://coffeecone.com/post/36127491095/howto-single-exe-for-tidesdk
I use the application virtualization app Cameyo for this purpose. http://www.cameyo.com/

How to validate HTML/CSS files with grunt.js?

This is a noob question.
I would like to use grunt.js as a build tool for my web project. Can use grunt.js to validate my HTML/CSS files? Do you have an example of such a grunt.js file?
There is another plugin that seems to be updated more often and does not require java. grunt-html-validation. It has a number of options and has been working great for me. You can install and use it like this:
npm install grunt-html-validation --save-dev
Then put something like this in the initconfig of your Gruntfile.js
and this in appropriate places in your Gruntfile.js
grunt.loadNpmTasks('grunt-html-validation');
grunt.registerTask("default", ["validation"]);
There is also a number of useful options including the ability to relax errors based on a regular expression (could be useful for AngularJS for example) and the ability to save a report.
You can use the grunt plugin grunt-html. Beware, you will need Java on your computer to use it. It works well for me.
As of now there seem to be two popular HTML validation plugins:
grunt-html-validation
grunt-html
grunt-html-validation uses the W3C Markup Validation Service and grunt-html uses a local copy of the java-based The Nu HTML Checker.
They both work well and have very similar options so it comes down to whether you want to wait for an external service call or wait for a local java app.

Restrictions in creating a plugin

Recently tried the plugin example of Qt.
It didn't work at all and I was confused as to the reason. Then found the solution on one of the forums.
Qt, Application and plugin all three have to be built with the same configuration (Release/Debug)
This works for me as I can build all three in Debug/Release mode. But if I want users to extend my application using plugins I need to provide debug build of my application. (If I provide release build, users will not be able to trouble-shoot the plugin). Qt source is available so it can be built in any mode.
I don't want to provide debug build of my application to users. Is there any work around for this restriction on build mode for plugins?
P.S. I understand users can debug with logging statements, but not sure how many prefer that approach.
This is because Qt has a so called build key which is just a string containing some Qt configuration information, this is documented in the Qt plugin Howto.
So you should just go ahead and provide a debug build of your application for the best results.
You can build debug version (to have compiled in debug configuration) and strip it out of all symbols etc.

Resources