As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I am new to Javascript frameworks and nodejs. Recently, I came across a requirement which made me think if I can use them.
Requirements:
--A lightweight website which can be run off a usb stick (kind of portable webapp) without a need to install a complete webserver on client machine.
--The website should be available to users on the local network. The webapp will be maily used for (a)capturing user responses to a questionnaire (b) showing graphs, data, reports (c) showing clickable diagrams
I want to build a very responsive, rich-client kind of webapp.
From whatever I searched on the Internet, I think I should use node.js (as webserver) + express.js (MVC framework) + Twitter Bootstrap (for building nice UI).
I am not sure, if my choices of frameworks/tools is correct, so want to know what experts recommend.
Thanks.
The only requirement is to download a portable version of node.js. For example, windows x64 v0.8.18. All the distributables are located here.
That's all. All your modules need to be installed locally.
I have just downloaded and compiled node.js to evaluate. Great tool, builds and runs nice also under Ubuntu and is also supported on Mac OS and Windows. Very interesting possibilities. Surely can be recommended.
To have it really cross platform, you can simply drop several nodejs executables for different platforms into NTFS formatted USB stick. Linux guys may need to tweak mounting permissions but they are used to.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I've been reading that some companies have been moving their mobile platforms to node.js servers. Just wondering what the advantages of building responsive or mobile websites on node.js would be.
Just trying to determine if node.js would be the best choice of server tech in my situation - where i build responsive websites with front end scripting for ui elements, as well as some server/db driven functionality such as blogs.
No, if you are just talking about front end development, it doesn't matter what is actually serving your assets. In fact according to a few stackoverflow posts(here, here) nginx and apache perform better for serving static assets.
A plus side to node would be to have your stack all use the same language, javascript. There are all sorts of nifty javascript build tools that are built on and distributed through npm
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I've just finished a little application using node.js and socket.io. I would like to put it on the Web and I don't know which server to take. I am searching for a free one. I've already found appfog, nodester and pusher but I do not know if we can use them with socket.io and the use seems complicated.
If you know a simple or well-documented one it would be cool.
If you are new to Amazon Web services, you can get a micro.t1 ECS instance free for a year.
More details here. I am hosting a node.js/socket.io app on one myself currently atop Ubuntu.
You're going to need a host that either gives you system-level access to build/deploy software, or you'll need a host that provides a compatible environment for you.
I personally have used Slicehost for years, but am switching to Linode soon. I prefer having complete control over my installations.
You could look at running an EC2 instance from Amazon, http://aws.amazon.com/ec2/. Lots of instance sizes to pick from, tons of pre-configured AMI's to pick from. Or just pick a basic one and setup whatever server you need.
Some other solutions are like Heroku and nodester. Socket.io works fine with all of these.
In general, you pay less for servers you configure yourself and you have more flexibility with what you can do. If you're less interested in that, then spend more money and try finding someone else's platform that does what you need.
You could try signing up for a Windows azure account.
They have nodejs support and you get up to 10 free websites (limited in some way by resources)
This should sort you out till you are ready to pay (hopefully when you have more traffic).
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I need to make a desktop application using CSS/HTML5/JavaScript. This application should work cross-platform (Linux/Mac/Windows) and will be distributed as a simple executable (not an installer), where the user simply opens it and can start using it right away. It also needs to work offline, on machines where internet is not accessible.
So I thought WebKit would be the perfect choice. In fact I went ahead, installed Xcode, and in little time I had an executable that opened a window and loaded some CSS/HTML/JavaScript.
However, my issue is that I don't have Linux/Windows machines. I can't afford buying a Windows copy and I don't want to go through the effort of having to install the OS and installing the Visual Studio or whatever thing, and trying to make an executable for those platforms as well.
I was wondering if there was a pre-built executable for each platform that comes with WebKit. So that all I have to do is change the icon of the application, the name and tell it where to get the html/css/javascript and it would make an executable for the platforms I need.
Is this possible? What are my best alternatives?
You can use node-webkit.
It uses webkit to render the webpage and execute the Javascript, and you will have access to all the Node.js javascript API (reading/writing files, …)
Update: Titanium Desktop is an open sourced project nowadays and named "TideSDK"
http://www.tidesdk.org/
You may try both of below. I have used Titanium Desktop: It is webkit based and also becoming an open source project.
http://www.appcelerator.com/products/titanium-desktop-application-development/
You can also use Embedded Chromium project, but this might require some knowledge on other then HTML/CSS/JS
http://code.google.com/p/chromiumembedded/
There is certainly some way to do this with Qt / QtWebkit / QWebview. But, it is certainly involved.
There is also a Gtk Webkit.
You would still need an installer, but you can look into Adobe Air. You can build apps that even leverage AS3 libraries as well as make them entirely with HTML5/CSS3 and your flavor of Javascript. Best of luck to you.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm wanting to create a web app where people can collaborate with a specified image.
For example, if you take a look at this basketball app
https://market.android.com/details?id=com.canica.apps.basket&hl=en
I'm envisioning something similar where people can log in, draw plays etc,
I want updates to happen in real time, so that other people logged in as a team see what others are 'drawing'.
I was thinking of extending a html canvas drawing app and adding network communication, but I'm not sure where to start looking.
My question is - What technologies should I be looking at for pushing the data out to the users?
Does anyone have suggestions?
You've almost answered your own question, especially with your use of HTML5 and JavaScript tag.
You should take a look at WebSockets (what, what and why).
WebSockets allow for bi-directional communication between any client and server. Originally only available in web browsers via JavaScript but there are now a number of WebSocket client libraries available which mean that whilst you can develop with browsers in mind there's no reason why you client can't be any device.
A quick search came up with this example. There is also this iPad/iPhone application.
There also appears to be a video tutorial that uses node.js and socket.io here:
http://wesbos.com/html5-canvas-websockets-nodejs/
If you don't want to worry about installing and maintaining your own realtime infrastructure that also deals with fallback techniques for older web browsers then you might consider using a hosted realtime web service.
XMPP might be something to look into. A great book about interacting with XMPP servers from the browser is Professional XMPP Programming With JavaScript and jQuery.
It's a pretty soft introduction and I think there might even be a chapter in there that covers implementing something similar.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I'm currently develloping a Chrome Extension and i'm searching for more ergonomy by finding a good IDE who can manage javascript and also Chrome Extension API.
Thanks in advance.
Use Aptana Studio and add the following scripts to File references.
chrome_extensions.js
webkit_dom.js
Congratulations! You now have a very capable javascript editor with autocomplete support for chrome APIs
EDIT
You can have the same functionality in Visual Studio, which has (in my opinion) even better support for javascript. In fact I think it's the best javascript editor around (quiet an achievement for microsoft :))
Just add the following comment to your js files:
/// <reference path="MyExternalFile.js" />
And you get:
I got this to work on IntelliJ by using this API stub (to make the chrome object appear in auto completion)
https://github.com/linux-china/chrome_js_api_stub
In combination with the chrome extension.js
https://code.google.com/p/closure-compiler/source/browse/contrib/externs/chrome_extensions.js
I then added the stub chrome_js_api_stub library and the chrome extension library by following the below directions
http://www.jetbrains.com/idea/webhelp/configuring-javascript-libraries.html
It's not for everyone, but if by ergonomy you mean moving your hands around as little as possible, not reaching for the mouse, VIM is very much designed to keep your fingers on the keyboard and as close to the asdf/jkl; positions as much as possible. It's a pretty steep learning curve, but the payoff is extremely quick workflow.
With the right addons, it's a very decent javascript editor, with syntax highlighting (including jsdoc comments), code completion, jslint integration, etc
For Aptana Studio 3: (plugin for Eclipse tested)
Find a library you are interested in...Save it to your disk, and then drag it into your project. It does not matter where in the project it sits, so you can create a new folder for files like this if you like.
!! The project must be some type of web project: Web, PHP, Python, Ruby, Rails.
http://wiki.appcelerator.org/display/tis/Using+JavaScript+Libraries