
Show HN: Angular Starter Kit – Typescript, WebPack, Karma - nerazzuri
https://github.com/alamgird/angular-next-starter-kit
======
programminggeek
That's a lot of pieces just to build web apps with JS.

It wasn't that long that we didn't need any of this stuff and I'm not sure
that anything people are building with Angular/Ember/etc. is sufficiently more
advanced than what came before it.

~~~
grumblestumble
Actually, when 'we didn't need any of this stuff', most of the heavy lifting
was with server-side frameworks(Struts, Razor, Rails, etc). The rise of web
applications, and in particular single page applications, which are expected
to behave very much like desktop apps, initially led to insanely complicated
jQuery monstrosities that quickly became unmaintainable. This created the need
for front-end frameworks, which led to a lot of churn as people tried to
figure out the right approach. Something like Dojo is not all that different
from Angular/Ember in concept, it's just an order of magnitude more difficult
to work with, or scale an application with.

There's nothing here that seems superfluous when creating a web application.
If you want to take advantage of advances to the Javascript language, you're
going to have to go either with Babel/Traceur or some other kind of ES6
transpiler, or Typescript, which while ostensibly is it's own language, seems
more and more headed to becoming defacto ES7.

If you work with a team of developers and want a modular structure for
developing components as opposed to 10,000 line js files, you're going to need
some kind of module system / bundler. This is hardly new, it's baked into .Net
web projects (forget the name), and stuff like require.js has been around for
ages. Webpack is just the latest iteration of that concept.

If you're building an app of any complexity, you're probably going to want to
do some unit testing. For that, you'll need a test runner. Karma's a decent
choice.

~~~
weinbee
For a .NET package manager, are you referencing Nuget?

~~~
grumblestumble
yes, sorry, that's the one. It's been a good 5 years since I left .Net-land.

------
dimgl
I've had a lot of success using System.js and JSPM to transpile and bundle my
Javascript code. I've dropped Karma altogether and I am just using the Mocha
CLI for testing. Testing Angular 1.x was such a nightmare that I kind of just
gave up. I'm having a lot more success with other frameworks that are a bit
smaller and do less.

~~~
1971genocide
I have been seeing a lot of talk about JSPM.

How is it different from NPM ? since I just use it to do everything.

~~~
theodorton
From what I've come to understand, JSPM works a lot like NPM, except you can
pull packages both from npm and git(hub). We're using it at our startup, and
it works quite well. Had to do make a custom build script to make it fit into
our Rails application.

Edit: JSPM biggest strength is possibly that it supports a vast set of module
loaders (AMD, CommonJS and ES6 modules).

~~~
Bahamut
JSPM also normalizes importing in ES6 from AMD, CommonJS, and ES6 (not sure
about TypeScript, probably though). It is built on top of System.js, which
lets you import modules and allows you to configure the local global
namespace.

Edit: Looks like there was a ninja edit since I started typing :)

------
highmastdon
For reference:
[https://github.com/mgechev/angular2-seed](https://github.com/mgechev/angular2-seed)
A very nice project which goal is the same as this project, to relief the dev
from unnecessary hassle.

------
brakmic
A really nice project!

It's now in my AngularJS list:
[https://angularjs.zeef.com/harris.brakmic](https://angularjs.zeef.com/harris.brakmic)

Thanks for sharing!

~~~
tholford
wow, this is a great list! thanks

