Alternative to Node js for Win CE - node.js

My requirement is run an embedded HTML\JS Web applications on a Win CE-ARM device.
We also have a Linux-ARM device for which we used Node js to run any Javascript app that also uses node modules like require,express and such.
Basically, we would like start a node server inside the device that serves HTML/JS pages as in when requested.
Since Win CE -ARM doesn't support node js and porting of node js to Win CE is an humongous task, we are looking for alternatives to node js in Win CE.
I looked up online and found very little on this front.
Basically we want to have a server running inside the device that serves html/js pages as in when requested( Imitate the node behaviour).
Is there any framework available for Win CE?
Any kind of comments or help is appreciated.
Thanks

I am not aware of any frameworks that implement server-side Javascript on Windows CE (you can always serve html/js pages though, if that's what you're after).
Unless you do manage to find a third-party alternative, your options are limited to:
ISAPI extensions
ASP (note: not ASP.NET)
ISAPI extensions are written in C/C++, and are a comparatively primitive environment. This does not necessarily mean a bad environment - whether that's the case really depends on your requirements. We've used ISAPI extensions successfully in a number of products.
The ASP implementation in Windows CE is only a subset of what desktop IIS supports; the linked MSDN pages have all the details about this.

If you don't want to use HTTPD WinCe webserver and to study how primitive and user unfriendly C++ ISAPI environment works, you could implement an extensible web-server in C# for example with RESTFUL webservices.
Refer to this.
You can than use JQuery instead of ASP to create dynamic pages.
If you need also the browser on the device you can use the IESample bundled with WinCE.

Related

Node-webkit: using the same codebase for web- and desktop application

I was given the following to consider:
Develop desktop application using Nodeweb kit.
Also develop web application using the same code base.
Applications should look identical.
Both apps must use the same code base. The reason for this is to cut down development expenses.
If it was up to me I would not even consider using node-webkit for desktop. There are far better desktop solutions for Win platforms. For web application using Node is certanly viable.
But people who plan the project somehow think Node is a way to go for both apps.
After lots of thinking, I came to the conclusion that doing what they want will only increase dev and maintenance costs.
I consider using express (maybe even Sails.js) for web application. I made some tests where I used express on node-webkit and it run just fine.
Certanly NW is powerfull platform (popcorn). Just in my case I fail to see how can it cut down the dev expense
Am I right to be against this solution? Is this a plausible decision and I am not seeing another solution?
Any opinion is very welcome
I have actually done exactly this, and it worked very well. The trick was to write some Node Webkit code that will "detect" that it's running as a desktop application, instead of a web app, and thus integrate with desktop notifications etc.
Yes, it was more work than just writing a web app, but it was also less work (and maintenance) than developing separate applications. You get to use a lot of common code, because of the fact that you are running in a browser already, that I feel the project saved a lot of time.
In fact, I am currently working on another application that requires some desktop features (file access, notifications) but the same functionality as the web application, and I'm proposing that the development happens in Node Webkit.
The important criteria here for me is that both applications are 90% the same, the desktop just adds things you don't normally have on the web. So the core of the application is exactly the same AngularJS application, with some JavaScript injected by the Node Webkit startup page to add the required desktop behaviour.
You haven't presented reasons why you think node-webkit is not a suitable option for desktop application.
On the other hand I think client's opinion that development in node and node-webkit will be able to cut down costs is not ungrounded.
nw.js (formerly node-webkit) is basically a Chromium browser with intergrated node.js engine. So if you develop a web-application using node.js (and any of its frameworks) then you will be able to reuse it in nw.js fairly easy.

How to execute local files on embedded chrome using Awesomium.NET or CefSharp

I have used several solutions like Berkelium project, CEfSharp, awesomium.net, The Web application i built constitutes of Javascipts, xml, CSS. When I used these solutions for files published on server they properly work out but when i give path like (file:///path) it stops responding.
Depending on your needs as alternatives to file:// maybe look at either:
Implementing a SchemeHandler as showcased by both the CefSharp.WinForms.Example and WPF ditto.
Maybe even an OWIN married with CEF implementation, like Harley
or see this other answer: Ajax not working in CefSharp based WebView with local files

What backend can I use to setup breeze properly on a mac?

I would like to develop an AngularJS app with Breeze. I usually use NodeJS with Express but I hear it wont work with Breeze. All the example on breezejs.com use ASP.Net but i am on a mac and you can't run visual studio... What are my options ?
We are releasing a sample later today (in breeze v1.3.0) that shows Breeze talking to an arbitrary web service that could have been written on any platform using any technology.
Obviously, we need more of these examples and as importantly we need to show server side implementations of how one might write these web servivces to best leverage Breeze. But... this is all definitely on our roadmap, and we are actively looking for partners in this process.

Embed node.js website in exe

I want to build desktop application that will use node.js and express to "render" the gui in a browser.
Since the client will have access to my application, is there any easy method to embed everything in my exe ?
I don't like the idea of having so many folders in my application folder, this makes it easy for everyone to modify and steal the source code.
The two popular solutions for delivering web-based cross-platform applications are:
NW.js
Electron
I prefer NW.js because it has better backward compatibility, particularly on OS X. They have different feature sets, so you may want to play around with both to see which one meets your needs.

Profiling a classic ASP application using AQTime

We have developed a large number of websites using ASP (jscript flavour), talking to the underlying intelligence layer (written in Delphi) through COM. These websites are running on IIS (5 and 6).
Over the years this ASP layer has grown into something quite heavy (no business logic, but lots of controller/scenario/view/ajax/etc handling), and we'd like to do a bit of performance tuning on it. According to the creator, AQTime (we have the latest version) can be used for this purpose (profiling both the serverside script and the underlying com objects in one go), but I simply can't figure out how to get it to work.
The help files explain how to profile COM dll's, ISAPI dll's and even client-side scripting, but not a word on how to profile the server-side script running on the ASP pages. Can't select .asp files as a "profiling module". Google is not helpful either.
Any word of advice on how to accomplish this? Alternative suggestions for profiling classic asp pages is welcome, too.
Well, as it turns out, this isn't possible (according to Official Support). Of the tree layers in our application,
Delphi code running on the server
ASP code (jscript) running on the server
Client-side jscript running on the client (ajax, etc)
AQTime can only profile (1) and (3). Although it can perfectly well profile windows scripting host .js files on the server, it will not profile .asp code. Which I was really hoping it would, seeing how both are executed through the same jscript.dll.

Resources