How to use Chrome Lighthouse to analyze a Node.js / backend code? - node.js

Lighthouse, a part of the Chrome Developer Tools, provides great reports and analytics for the app frontend code.
I'm curious to know, is it possible to apply Lighthouse on a code, running on Node.js, in other words, is it possible to use a power of Lighthouse for analyzing a backend?

Lighthouse wouldn't work for NodeJS. There a lot of things in lighthouse that wouldn't be applicable to backend code, such as SEO improvements etc.

Related

Nodejs and/or PHP mobile detection

Is there a good and reliable library or method, or whatever, that can detect if the request is coming from a mobile environment?
I found a few packages, but non seems to work properly. I am looking for a basic/simple one that is able to detect just this: isMobile; isDesktop. Needs to be reliable, up to date and working.
If there is none free, even payed solutions would be acceptable. I am not looking for 100% detection, but I expect that top most popular devices to be detected without problem.
I am looking for a nodejs (express) solution, and/or a PHP one.
For PHP you can use Mobile-detect. According to its official description in Github, Mobile_Detect is a lightweight PHP class for detecting mobile devices.
For node.js you can use mobile-detect.js. It's a port of Mobile-detect to javascript.
DeviceAtlas has a good article:
How to detect a mobile browser by Pawel Piejko.
They have examples with PHP, Java and Python and they have API to use. It is a a paid service but with free trial.
Mobile detection is a complicated problem. Of course it's easy to detect an iPhone with some client-side JavaScript, but mobile devices are not only iPhones or Android phones. And if you want to detect it before running client-side JavaScript like you need here then you cannot rely only on client-side JavaScript.
More options
General options:
WURFL, 51Degrees, OpenDDR, MobileESP, ua-parser, Detect Mobile Browsers.
Node modules:
mobile-detect,
device-detect,
detect-mobile-browser,
sniffr,
dagent,
device-detective,
ismobilejs.

How can we use Node.js with Html/Bootstrap to develop Mobile App

I want to develop Mobile App using Node.js and Html5/Bootstrap as frontend?
I searched the web , but not getting any proper source of look. I am New in Node.js , but i Know HTML5 / Bootstrap.
Can anyone Guide me through to Develop Mobile App using these two?
While this is an opinionated question/answer and shouldn't be on SO, I'll share my experience as I was in the same boat recently:
For the front-end (The app): Look up PhoneGap (Apache Cordova) to get an idea about building cross-platform mobile apps using HTML5/CSS/JS. Keep in mind that you can use a good amount of front-end frameworks to ease your workload (AngularJS, Framework7, jQuery, etc.)
For the back-end (Server): Node.js is a great start, however you'll need to code your backend almost from scratch this way. I suggest looking up "Parse Server" to use it for your backend. It's an open-source solution for mobile apps backends (MBaaS). If you still decide to code your own full backend, then I highly recommend learning MEAN stack (MonogoDB, Express.js, AngularJS, Node.js), it might take you a while, but the portable experience you'll get is huge.
Either way, if you want to make high performing apps, it's always recommended to go native (Android apps using Java and Android Studio, iOS apps using XCode and Swift)
I hope this helps,
Best of luck

How to build Restful API without using frontend javascript

I have been searching all over for a tutorial that could make a RESTFul API without using any frontend javascript to no avail. I am very new to Javascript/ web-development and have been doing many tutorials and mini projects to get myself acquainted with it.
This is a test for a job at a startup as they looking for an entry level developer. Their requirements are much different as they want me to use their in house build APIs.
What I am looking for is some help on how to get started building a RESTful API using node.js, express, Mongo and without using any frontend javascript. Thanks.
Recommendations for tutorials usually don't make good questions for Stack Overflow, but you might want to take a look at the following books. They helped me out quite a bit when getting started with Node:
Express Web Application Development
Advanced Express Web Application Development
RESTful Web API Design with Node.js
As others have commented, a REpresentational State Transfer API is implemented server-side. You could consume such an API from the client-side using JavaScript, but not build one on the client-side.
Express is a very popular web framework for Node, and you can certainly use it to build APIs, but you might also take a look at Restify. Hope that helps you out.

Analytics for nodejs + extjs webkit application

I am developing nodejs webkit application. I am using extjs for UI. Application will be installed by anyone, we would like to track application usage using some analytics system, may be google analytics or any opensource tracker.I know google analytics does not support usage tracking for desktop apps. Since app is developed on nodejs webkit it will run on tablets and smart phone too.
Please guide on possible solutions.
We created pages on server and requested same from app. We used piwik to track pages.
It worked.

Is it possible to develop Google Chrome extensions using node.js?

I'd like to start developing Google Chrome extension using node.js (since I've already written a "text-to-song" script in node.js, and I'd like to turn it into a Chrome extension.) What would be the most straightforward way of approaching this problem?
Actually it is. Look at this Developers Live-cast. This is something I've been looking for as well, and this would help you.
This brings your node applications bundled to your browser.
Here is the repo!
EDIT:
I've noticed that this old answer of mine keeps getting upvotes now and then (thank you all).
But nowadays I'm more an advocate of using web apps instead of bundling your application into many platforms like the chrome store or whatever.
You can check the google's post here and here indicating some directions.
In practice I advise for you to start building a progressive web app (PWA) with offline capabilities using service worker and progressive stuff.
There are plenty of resources around the web nowadays and you can offer a much richer application that may achieve a much broader audience if you do it the right way.
Thanks again, and good coding.
Simple answer is NO, unless you can find a way to install node.js with an extension using NPAPI.
Nodejs and a Google Chrome Extension do have a couple things in common i.e they both understand javascript and they both use the v8 javascript engine.
Google Chrome Extension
"Google Chrome Extensions are small software programs that can modify and enhance the functionality of the Chrome browser".
To develop a Google Chrome Extension you should write some javascript and or html/css.
Then you can run the extension in your browser.
If you wish for others to download your extension you will have to provide config.json file that describes you extension sets permissions etc.
Nodejs
"Node.js is a platform built on Google Chrome's JavaScript runtime for easily building fast, scalable network applications".
To develop applications in nodejs you write some javascript and or html/css for web applications.
If wish for others to use you application you start you nodejs server and listen for incoming requests.
Summary
Despite some of the similarities a Google Chrome Extension and Nodejs have nothing to with each other. You cannot use them together in some special way outside of the normal client/server communication.
You can use a WebPack (GitHub) or Browserify (see handbook) to build web-browser extension based on the node.js code.
With Browserify, to convert your code, you can simply run:
browserify node-code.js -o node-code-out.js
Read more:
Browserify vs Webpack.
Build a Chrome Extension with Preact and Webpack (see: Preact Chrome Extension Starter).

Resources