How do I setup an angularjs app on karma and nodejs - angularjs

I would like to have a workflow for an angularjs app that uses mocha,chai instead of jasmine
I'm fine with setting up the bare project
npm init
npm install karma-mocha etc..
Is there a node way to install angularjs with a bare bones web project structure ? I'm not sold on yeoman yet...and looking for a leaner system
Thanks

Related

Angularjs 2 installation Methods

I have one angularjs 2 UI (without node modules) which i have to integrate with my backend. After installing Angular cli, Can i simply do npm install in the angularjs 2 directory folder as it have package.json or create a new app after installing angular cli and then do npm install for some node modules specific to my angularjs project.
Will the first approach Work successfully as it is easier
If your backendend and frontend repos are in same package.json just serve your app. You can separate these ( in the future it will be more effective ) . So just search your starting command and run the app.

How to upload and run Angular applications on Firebase?

Firebase Hosting doesn't support Node.js but to install Angular, one has to use npm
npm install -g #angular/cli
Without npm, angular can't install and without Node.js, Angular app can't run. But because Firebase Hosting doesn't support Node.js, we can't upload Angular apps? This also means we can't run npm packages like lodash, underscore etc..
Now there's also AngularFire 2 which is installed using npm!
npm install firebase angularfire2 --save
So to use Angular with Firebase, I've to use npm but the apps created using Angular + Firebase cannot be uploaded on Firebase Hosting because it doesn't supports npm!
Is there any workaround to host Angular apps on Firebase?
Firebase hosting is designated for delivery of static files, i.e. it does not "support Node.js" in the sence that you cannot implement custom server-side code (on Firebase Hosting at least - see Firebase Cloud Functions for this).
Of course you can fully develop your app with NPM as long as its just a full client web-app. You then upload your build result (i.e. compiled JavaScript / TypeScript + HTML + Assets + ...) to Firebase Hosting.
You just cannot run server side code with Firebase Hosting.

How to use Ionic Cloud with Angular 1.5

I've reached a bit of a dead-end and I am not sure how to proceed. I have developed my Web Application on Angular 1.5.9. I have just now ported over my web app to the Ionic App using ionic start app_name. Everything is working as it should. However, my next step is to set-up the deploy and ionic services. At first I tried adding ionic add ionic-platform-web-client. But since its deprecated and from reading the recent docs, I understood I should now use ionic cloud. So I installed ionic cloud using npm install #ionic/cloud-angular --save. I then got the dependency error saying that:
├── UNMET PEER DEPENDENCY #angular/core#^2.1.1 || ^4.0.0
So looking into it further, I realised that I need to have Angular 2 for it and also to complete the ionic cloud configuration, I also need to update the src/app/app.module.ts file. My questions are:
How can I use Angular 2 when I am using Angular 1.5.6 for my Web App? Rewriting my Angular 1.5 app to Angular 2 is not feasible. Can I use both simultaneously? If so, how? How can I resolve this?
Any help will be great since I cannot find any info on using the latest ionic cloud with Angular 1.5. My current set-up is:
Cordova CLI: 6.5.0
Ionic CLI Version: 2.2.2
Ionic App Lib Version: 2.2.1
ios-deploy version: 1.9.1
ios-sim version: 5.0.13
OS: macOS Sierra
Node Version: v7.9.0
Xcode version: Xcode 8.3.2 Build version 8E2002
Angular: 1.5.9
Ionic Cloud Client can be used with Ionic 1 / Angular 1.5. This is what I did:
Install Ionic Cloud:
npm install #ionic/cloud --save
Copy the files to www/lib directory:
cp node_modules/#ionic/cloud/dist/bundle/ionic.cloud.min.js www/lib
Include the link in your project’s index.html:
<script src="lib/ionic.cloud.min.js"></script>
Set the Platform to assign your app a unique app id and api key:
ionic io init
Install Caodova's deploy plugin:
cordova plugin add ionic-plugin-deploy --save
Inject Deploy dependency ionic.cloud to the Angular module:
angular.module('application', ['ionic.cloud']) ...
Do the Deploy Check using $ionicDeploy inside the .run Block of the Angular 1.5 config file.
.run(function($ionicDeploy) {
$ionicDeploy.check().then(function(snapshotAvailable) {
if (snapshotAvailable) {
// When snapshotAvailable is true, you can apply the snapshot
$ionicDeploy.download().then(function() {
$ionicDeploy.extract().then(function() {
$ionicDeploy.load();
});
});
}
}); // end deploy check
};
Thats it! It was simpler than I though. Here is the link to the Docs for more info: http://docs.ionic.io/setup.html#installation

Where can I find systemjs.config in Ionic 2 Project?

I create an pure Ionic 2 project with the command.
ionic start myIonic --v2
The pure project work great, but when I compared the project structure with angularJS 2, I found the "systemjs.config.js" is missing.
My question is could "systemjs.config.js" file be replaceable?
If the answer is positive, what is the alternative file in Ionic2 based project ?
i have created a angularjs 2 based poject using angular2-cli using below command.
ng new PROJECT_NAME
when i create the project using angular2 cli, then also its not creating systemjs.config.js file.
link for angular2 cli new app .
And Systemjs.config.js file is creating in angular2 project only if i create quick start application, that too we are only creating manually. as given in official quick start document.
link for angular2 quick start app.
So using this 2 examples we can believe that systemjs.config.js file can be replaceable.
The angular-cli and ionic moved the build system from SystemJS to Webpack.
For angular
npm uninstall -g angular-cli
npm cache clean
npm install -g angular-cli#latest
Full angular-cli migrate docs: https://github.com/angular/angular-cli/wiki/Upgrading-from-Beta.10-to-Beta.14

Pushwoosh Web SDK not working in ES5

I am using Pushwoosh Web SDK 2.0^ to register my device (Browser) Id. and to get it token, However the Object doesnt get constructed, because Pushwoosh is using ES6 and promises while I am using ES5 in my project. is there a way to get PushWoosh Object so I can use the other APIs in their SDK?
I was following Web Push SDK 2.0, but this didn't worked out for me.
PS: I am using Angular 1.5 on front end.
Thanks
All browsers that support web pushes also support promises.
You can use compiled source:
git clone git#github.com:Pushwoosh/web-push-notifications.git
cd web-push-notifications && npm install
npm run build:lib
take source from lib/ directory and copy to your project

Resources