Does a Crashlytics-like service for web app exists? - javascript

I am a web and iOS developer. On mobile we have famous tools to collect all the exceptions and errors that application thorws.
There's Crashlytics (and others) that with few lines of code to install the sdk, start tracking everything automatically. Then them display the error and useful informations on their website with priority and other stats.
Exists something like that for web applications? Or explicitly for php or js apps?
Thanks ;)

There's was a great discussion on this topic by Paul Irish on Google+ https://plus.google.com/+PaulIrish/posts/12BVL5exFJn (No longer available after Google+ closed). But here is the summary of that post.
Some of the services mentioned:
bugsense.com
jslogger.com
qbaka.com
muscula.com
errorception.com
exceptionhub.com
bugsnag.com
exceptional.io
airbrake.io
getsentry.com
github.com/Offbeatmammal/jsErrLog - open source
github.com/occ/TraceKit - most comprehensive stacktrace library

www.exceptional.io is exactly what you're asking for. It costs $9 per month after a free trial.
Integration with PHP is done by including a wrapper and a couple of lines of code:
https://github.com/ankane/exceptional-php/
It can also be integrated with javascript with a couple of lines:
<script type="text/javascript" src="http://js.exceptional.io/exceptional.js"></script>
<script type="text/javascript">
Exceptional.setKey('your_api_key');
</script>
Another option is New Relic, although it does a lot more than purely error logging - it provides all kinds of server monitoring metrics.
https://docs.newrelic.com/docs/applications-menu/errors-dashboard

Future users may find following useful.
Sentry is a Crashlytics like solution for lots of platforms
Web front-ends and their frameworks / libraries like React, Angular, Vue.
Back-ends languages and their runtimes / frameworks / libraries like Rails, Express, Lavarel.
Serverless platforms
IoT
Mobile clients including frameworks like React Native, Flutter.
Desktop platforms ex: MacOS, Windows, Linux
Gaming platforms ex: Unity, Unreal
Data
In addition to error reporting it also support performance monitoring.
More than anything it is a fully open sourced product including the both client and the server, not just opensource core. So it can be fully self hosted.
Note : I am not affiliated with Sentry in anyway.

Related

LOB Desktop applications using HTML5, CSS, Node.js, Chromium Embedded Browser

With the tremendous progress going on with web technologies, does it make sense to bring these to desktop and client-server applications.
We typically build our applications using winforms and wpf and the code base is like 100k+ lines of code.
Is it worth exploring the option of HTML5 UI and Node.js backend and use a framework like the chromium embedded framework or node-webkit.
The reason I am asking this is that the support from Microsoft for the desktop technologies is questionable (wpf, metro apps ...).
At least with the technologies I listed, it is easy to port to make the application work across all platforms and companies like microsoft and google are pushing for html5 and javascript.
A number of companies are using CEF and similar web-based technologies for desktop applications.
Steam from Valve is CEF based (https://developer.valvesoftware.com/wiki/Chromium_Embedded_Framework), as is
Spotify https://community.spotify.com/t5/Help-Desktop-Linux-Mac-Windows/Chromium-Embedded-Framework/td-p/912377 and
Adobe Creative Cloud (I believe using Adobe Brackets Shell over CEF and incorporating Node.js) https://github.com/adobe/brackets-shell
Advantages for them are that server side content can be delivered to the application, as can UI updates, and the client machine is fully accessible.
We are using it for product authorization and delivery, the advantages of CEF for us are dynamic update from the server of both UI and business logic in Javascript, and because CEF allows calls from Javascript to C++, we can access files on disk and Registry entries that pure Web code cannot.
So I would recommend looking into this.
For ordinary Line Of Business applications, I would suggest no, don't go half-way.
I used to do advanced UI development in WPF, and it was amazing for its time (a decade ago), but nowadays it is really amazing what can be done all within a modern web browser. And yes, Microsoft's support of full-powered desktop technologies is like a ghost town (I suspect they just want to get their 30% commission on apps in their store, so they've shifted focus to UWP).
Why do you need to create a hybrid desktop/web application? Unless you have a specific (and important) need to break out of the browser's sandbox, why not go all the way and create a web application? Modern browsers have a lot more capabilities now, and they keep getting better.
There are also many technologies and frameworks that really help to make large-scale web application development a lot easier than it used to be.

What is the Difference between Xamarin and Telerik Platform

This is going to be quite a hectic question and im hoping that you can all Bear with me.
Im having difficulty fully understanding some things about mobile App development.
So my Main question is : What is the difference between Telerik Platform and Xamarin ? Dose it just depending on what you are more comestible with, Like if you are a c# developer and know the .Net framwork, Then use Xamarin or is it alot more complex than that ? As i know that Telerik uses Javascript, so is it more of an open dev based mobile app ?
Which is better for the future of mobile development as i want to move in the right direction.
As an Extra: Has anyone heard of Dart ? i found out about it last week and haven't had much time to Read up on it, but it looks like a web based solution from google.
Dartlang
In Xamarin you can build native applications for Android and iOS system.
It is also possible to write them for Windows Phone.
Xamarin uses C# language.
Apps are created natively using Xamarin wrappers.
There are two options for creating apps in Xamarin:
1) Xamarin.Forms is best for:
Data entry apps
Prototypes and proofs-of-concept
Apps that require little platform-specific functionality
Apps where code sharing is more important than custom UI
2) Xamarin.iOS & Xamarin.Android are best for:
Apps that require specialized interactions
Apps with highly polished design
Apps that use many platform-specific APIs
Apps where custom UI is more important than code sharing
Telerik Platform is good for web developers who want to create mobile apps:
Here you can write html and javascript.
Remember also that your apps on iOS and Android will be displayed in WebView (browser). Only Windows Phone apps can be written in html and javascript natively.
Hope this will help.
Please also see this (I asked about Xamarin and Apache Cordova):
http://www.codeproject.com/Forums/13695/Mobile.aspx
All of the mentioned framework do the same thing in different ways, its totally depends upon your skillset and interest which framework you find easy to understand or find interesting.
Each of those have their market in which you can grow. below are some links may help you.
http://www.telerik.com/campaigns/build-mobile-apps-with-dotnet
https://forums.xamarin.com/discussion/13686/the-future-benefits-of-xamarin-over-other-options-and-mobile-apps-replacing-websites
Dart is a modern open source programming language that allows to write concise code
built-in support for async/await, Future (Promise), Stream (Observable), ...
Supports lots of platforms
Server with the Dart-VM (Windows, OSX, Linux)
in the browser after to-JS transpilation
Android and iOS by Flutter https://flutter.io/
embedded systems by Dartino https://dartino.org/
Dart can be transpiled to JavaScript (to-TypeScript is work in progress)
extensive high-quality standard libraries
dart:html library that for browser abstraction that makes most polyfills redundant
shipped with lots of tools
package manager
analyzer/linter
debugger and profiling tools
test runner
Dartium development browser
...
IDE support
easy integration using the IDE services the analyzer provides
Atom plugin
WebStorm/IntelliJ plugin
...

Protecting Apps with Apache Cordova MS VS Extension on App Stores

Just have a question about apps that are uploaded on the Windows Store, Andriod Store, and Apple Store. I have never built an App before for any of the three stores, but the Multi Hybrid Extension for Visual Studio seems to be a great start to cover all three Platforms.
How do I protect my code for apps that are uploaded to the three stores? The core development for the Apache Cordova extension is done in HTML5 and Javascript. On a regular HTML / Javascript website, the end user can simply right click and View Source of the page and see all the code I've written.
My question is, how is this protected for apps that are uploaded to the app store? Will someone be able to reverse engineer my application and get the code and simply re-sell it?
Thank you all for your time
You want to, develop once, deploy many. Then, you’ll want to use HTML5 to do it.
You can use Apache Cordova directly, but you’ll want to use a service like Telerik AppBuilder, Adobe Phonegap or Intel XDK.
Regarding your question, your best bet is to use a good JavaScript source code obfuscation service to protect your sources before publishing. There is no such thing as a 100% full proof solution when it comes to JavaScript obfuscation, but professional tools such as JScrambler can take you a long way. At least JScrambler I know that it supports Mobile and HTML5, which is good because they make sure the resulting code is compliant.
There are other tools, even free ones. But be careful though, there are tons of other tools that do obfuscation, encoding/packing or minfication that seem to provide protection, but are reversed in a few minutes. So, unless you really know how to tell the difference, I recommend that you rely on a professional service.

HTML5 desktop frameworks (relaxed) browser security

I have a question regarding the (relaxed) browser security of app.js as i have read somewhere in documentation (i tried searching for it but could not find it). I do see that there is an option that can be set here:
https://github.com/appjs/appjs/blob/master/docs/index.md
I have started building a desktop application using adobe AIR using Starling and Feathers UI because the service i am building the app for (Pinboard) does not have CORS enabled and will not do so in the future (see this google group chat about it). However, i would like to start with (node-webkit / App.js / similar HTML5 desktop framework) as well, just to see how that goes (and also i believe that building good transitional interfaces is a lot easier and faster in HTML5 nowadays).
My generalized question is: will app.js and other HTML5 desktop application frameworks allow me to circumvent CORS requirements? I am trying to find more concrete information about the browser security settings but i can not find it. Any pointer to such information (of different desktop application frameworks) will be greatly appreciated!
Michael
On the "server" side of your app, you are running Node.js, which does not enforce any CORS restrictions. That's a browser thing, Node.js is just a JavaScript runtime.
On the client side of your app though, you might suffer from CORS, that depends on the runtime/framework and I couldn't find anything about App.js either. But you could simply proxy requests to Pinboard through the server side, which would work around all CORS issues. There are a quite a few proxy servers for Node.js that could be used for this purpose, like node-http-proxy.

Windows 8 Metro and Google Analytics

Will it be possible to use the Google Analytics JavaScript library (https://developers.google.com/analytics/devguides/collection/gajs/) for the Windows Metro JavaScript based application to trace views accessed by user?
In general, if a JavaScript library you want to use is on a CDN or a server external to your app, the answer is no, as Windows apps written with HTML/JavaScript cannot load external JavaScript libraries...if you try, a security exception will occur.
Many libraries will work fine if you copy the JS file into your project and run it locally. For example, jQuery works just fine this way. I have not tried the Google Analytics library, so you might just want to test it out and see if it will work with a local copy.
Something else to consider, however, is that unlike a web site, a Windows app written in HTML/JavaScript may occasionally be offline, in which case, a library written with the assumption of network connectivity would likely not work. So in this particular case, you might not get the data that you're hoping for.
Hope that helps.
we tried http://w8ga.codeplex.com/ (w8ga) to work with GA in our win8 js app.
Currently W8GA seems doesn't support html/js. Also I have no idea why developer didn't mension it( it's supports only c#/xaml metro app )
So, we found another way to do it; Look for cobra Tab 's answer at the bottom of this page: http://social.msdn.microsoft.com/Forums/en-US/winappswithhtml5/thread/f81ebbb9-d711-40f1-8a82-9aed44e2d8fe/
And finally, we are waiting Adobe's Omniture sdk:
http://microsite.omniture.com/t2/help/en_US/sc/appmeasurement/winrt/index.html#Developer_Quick_Start
Hope these answers helps...
We're using the free version of markedup in our applications with great success. In addition to simple page views it shows you some app specific numbers like number of installs, exception details, etc.
I'd recommend using the Google Analytics SDK for Windows 8 and Windows Phone. It is built as a WinRT component and therefore supports both JS & Xaml Win8 apps.
Full disclosure: I am the author of this SDK; I built it for my own app and decided to open source it. There are other frameworks out there but AFAIK, none of them support the new GA universal analytics protocol so they only work with older GA properties and don't support all the cool new features GA recently added just for apps.

Categories

Resources