Suche senden
Hochladen
Java2day 2013 : Modern workflows for javascript integration
•
1 gefällt mir
•
2,254 views
Mite Mitreski
Folgen
Technologie
Melden
Teilen
Melden
Teilen
1 von 25
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Intro to sbt-web
Intro to sbt-web
Marius Soutier
JHipster, modern web application development made easy
JHipster, modern web application development made easy
Raphaël Brugier
Continuous delivery@LesFurets - DC Continuous delivery meetup
Continuous delivery@LesFurets - DC Continuous delivery meetup
Raphaël Brugier
JHipster
JHipster
Yuen-Kuei Hsueh
React vs-angular-mobile
React vs-angular-mobile
Michael Haberman
React.js - and how it changed our thinking about UI
React.js - and how it changed our thinking about UI
Marcin Grzywaczewski
The Art of AngularJS - DeRailed 2014
The Art of AngularJS - DeRailed 2014
Matt Raible
Starting with Reactjs
Starting with Reactjs
Thinh VoXuan
Empfohlen
Intro to sbt-web
Intro to sbt-web
Marius Soutier
JHipster, modern web application development made easy
JHipster, modern web application development made easy
Raphaël Brugier
Continuous delivery@LesFurets - DC Continuous delivery meetup
Continuous delivery@LesFurets - DC Continuous delivery meetup
Raphaël Brugier
JHipster
JHipster
Yuen-Kuei Hsueh
React vs-angular-mobile
React vs-angular-mobile
Michael Haberman
React.js - and how it changed our thinking about UI
React.js - and how it changed our thinking about UI
Marcin Grzywaczewski
The Art of AngularJS - DeRailed 2014
The Art of AngularJS - DeRailed 2014
Matt Raible
Starting with Reactjs
Starting with Reactjs
Thinh VoXuan
Introduction to ReactJs & fundamentals
Introduction to ReactJs & fundamentals
websyndicate
React vs Angular: ups & downs (speaker Oleksandr Kovalov, Binary Studio)
React vs Angular: ups & downs (speaker Oleksandr Kovalov, Binary Studio)
Binary Studio
intro to Angular js
intro to Angular js
Brian Atkins
007. Redux middlewares
007. Redux middlewares
Binh Quan Duc
JS Chicago Meetup 2/23/16 - Redux & Routes
JS Chicago Meetup 2/23/16 - Redux & Routes
Nick Dreckshage
React vs angular (mobile first battle)
React vs angular (mobile first battle)
Michael Haberman
Grunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous Integration
David Amend
GWTcon 2015 - Best development practices for GWT web applications
GWTcon 2015 - Best development practices for GWT web applications
Arcbees
AWS Lambda with ClaudiaJS
AWS Lambda with ClaudiaJS
Riza Fahmi
Front end microservices - October 2019
Front end microservices - October 2019
Mikhail Kuznetcov
Decoupled drupal + vue.js
Decoupled drupal + vue.js
Eugene Vozniuk
Angular 2 vs React
Angular 2 vs React
Iran Reyes Fleitas
Pre rendering media sites with nuxt.js & netlify
Pre rendering media sites with nuxt.js & netlify
nuppla
Grails Connecting to MySQL
Grails Connecting to MySQL
ashishkirpan
An Overview on Nuxt.js
An Overview on Nuxt.js
Squash Apps Pvt Ltd
Web view
Web view
YAMANE Toshiaki
Vue.jsをはじめる
Vue.jsをはじめる
Reo Mori
Lazy angular w/ webpack
Lazy angular w/ webpack
Rich Snapp
A Brief Introduction to React.js
A Brief Introduction to React.js
Doug Neiner
The Art of Angular in 2016 - Devoxx France 2016
The Art of Angular in 2016 - Devoxx France 2016
Matt Raible
Hetklasjevancircusnirkus
Hetklasjevancircusnirkus
Webredactie_Zwijsen
Adultlrngarticle2 110322082122-phpapp02 (2)
Adultlrngarticle2 110322082122-phpapp02 (2)
IMiera
Weitere ähnliche Inhalte
Was ist angesagt?
Introduction to ReactJs & fundamentals
Introduction to ReactJs & fundamentals
websyndicate
React vs Angular: ups & downs (speaker Oleksandr Kovalov, Binary Studio)
React vs Angular: ups & downs (speaker Oleksandr Kovalov, Binary Studio)
Binary Studio
intro to Angular js
intro to Angular js
Brian Atkins
007. Redux middlewares
007. Redux middlewares
Binh Quan Duc
JS Chicago Meetup 2/23/16 - Redux & Routes
JS Chicago Meetup 2/23/16 - Redux & Routes
Nick Dreckshage
React vs angular (mobile first battle)
React vs angular (mobile first battle)
Michael Haberman
Grunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous Integration
David Amend
GWTcon 2015 - Best development practices for GWT web applications
GWTcon 2015 - Best development practices for GWT web applications
Arcbees
AWS Lambda with ClaudiaJS
AWS Lambda with ClaudiaJS
Riza Fahmi
Front end microservices - October 2019
Front end microservices - October 2019
Mikhail Kuznetcov
Decoupled drupal + vue.js
Decoupled drupal + vue.js
Eugene Vozniuk
Angular 2 vs React
Angular 2 vs React
Iran Reyes Fleitas
Pre rendering media sites with nuxt.js & netlify
Pre rendering media sites with nuxt.js & netlify
nuppla
Grails Connecting to MySQL
Grails Connecting to MySQL
ashishkirpan
An Overview on Nuxt.js
An Overview on Nuxt.js
Squash Apps Pvt Ltd
Web view
Web view
YAMANE Toshiaki
Vue.jsをはじめる
Vue.jsをはじめる
Reo Mori
Lazy angular w/ webpack
Lazy angular w/ webpack
Rich Snapp
A Brief Introduction to React.js
A Brief Introduction to React.js
Doug Neiner
The Art of Angular in 2016 - Devoxx France 2016
The Art of Angular in 2016 - Devoxx France 2016
Matt Raible
Was ist angesagt?
(20)
Introduction to ReactJs & fundamentals
Introduction to ReactJs & fundamentals
React vs Angular: ups & downs (speaker Oleksandr Kovalov, Binary Studio)
React vs Angular: ups & downs (speaker Oleksandr Kovalov, Binary Studio)
intro to Angular js
intro to Angular js
007. Redux middlewares
007. Redux middlewares
JS Chicago Meetup 2/23/16 - Redux & Routes
JS Chicago Meetup 2/23/16 - Redux & Routes
React vs angular (mobile first battle)
React vs angular (mobile first battle)
Grunt.js and Yeoman, Continous Integration
Grunt.js and Yeoman, Continous Integration
GWTcon 2015 - Best development practices for GWT web applications
GWTcon 2015 - Best development practices for GWT web applications
AWS Lambda with ClaudiaJS
AWS Lambda with ClaudiaJS
Front end microservices - October 2019
Front end microservices - October 2019
Decoupled drupal + vue.js
Decoupled drupal + vue.js
Angular 2 vs React
Angular 2 vs React
Pre rendering media sites with nuxt.js & netlify
Pre rendering media sites with nuxt.js & netlify
Grails Connecting to MySQL
Grails Connecting to MySQL
An Overview on Nuxt.js
An Overview on Nuxt.js
Web view
Web view
Vue.jsをはじめる
Vue.jsをはじめる
Lazy angular w/ webpack
Lazy angular w/ webpack
A Brief Introduction to React.js
A Brief Introduction to React.js
The Art of Angular in 2016 - Devoxx France 2016
The Art of Angular in 2016 - Devoxx France 2016
Andere mochten auch
Hetklasjevancircusnirkus
Hetklasjevancircusnirkus
Webredactie_Zwijsen
Adultlrngarticle2 110322082122-phpapp02 (2)
Adultlrngarticle2 110322082122-phpapp02 (2)
IMiera
Voorleeskwartierklasjecircus
Voorleeskwartierklasjecircus
Webredactie_Zwijsen
istSOS: an extended Sensor Observation Service implementation for Environment...
istSOS: an extended Sensor Observation Service implementation for Environment...
Massimiliano Cannata
LESS CSS Processor
LESS CSS Processor
sdhoman
Inchiesta risparmiare-in-tempo-di-crisi (1)
Inchiesta risparmiare-in-tempo-di-crisi (1)
Cagliostro Puntodue
Ur2016
Ur2016
Massimiliano Cannata
Engineers, 3D Objects, and Rhetoric
Engineers, 3D Objects, and Rhetoric
Tom Burns
Lcf building life
Lcf building life
vinod kumar
Curricularesprimerainf
Curricularesprimerainf
Carlos Soto
Zone-S
Zone-S
Ellen Holleman
F 3-2011-1-110623082754-phpapp01
F 3-2011-1-110623082754-phpapp01
cepmaio
Croche1
Croche1
rosemere12
Deep sec talk - Addressing the skills gap
Deep sec talk - Addressing the skills gap
Colin McLean
ITS Corporate Introduction - HQ in Simi Valley, the heart of Southern Califo...
ITS Corporate Introduction - HQ in Simi Valley, the heart of Southern Califo...
ITS - Integrated Telemanagement Services, Inc.
Arquivo 2004 de a a z
Arquivo 2004 de a a z
cepmaio
Episode 3(1): Cognitive tools for the individual - Meetup session 9
Episode 3(1): Cognitive tools for the individual - Meetup session 9
William Hall
Me n pia
Me n pia
Shweta Chaturvedi
Tugas Psikologi Sosial Terapan, Htmansystem: From Lossy to Glossy
Tugas Psikologi Sosial Terapan, Htmansystem: From Lossy to Glossy
vj_brian
Archivo de-educacion
Archivo de-educacion
Cornelio Ramos Mondragon
Andere mochten auch
(20)
Hetklasjevancircusnirkus
Hetklasjevancircusnirkus
Adultlrngarticle2 110322082122-phpapp02 (2)
Adultlrngarticle2 110322082122-phpapp02 (2)
Voorleeskwartierklasjecircus
Voorleeskwartierklasjecircus
istSOS: an extended Sensor Observation Service implementation for Environment...
istSOS: an extended Sensor Observation Service implementation for Environment...
LESS CSS Processor
LESS CSS Processor
Inchiesta risparmiare-in-tempo-di-crisi (1)
Inchiesta risparmiare-in-tempo-di-crisi (1)
Ur2016
Ur2016
Engineers, 3D Objects, and Rhetoric
Engineers, 3D Objects, and Rhetoric
Lcf building life
Lcf building life
Curricularesprimerainf
Curricularesprimerainf
Zone-S
Zone-S
F 3-2011-1-110623082754-phpapp01
F 3-2011-1-110623082754-phpapp01
Croche1
Croche1
Deep sec talk - Addressing the skills gap
Deep sec talk - Addressing the skills gap
ITS Corporate Introduction - HQ in Simi Valley, the heart of Southern Califo...
ITS Corporate Introduction - HQ in Simi Valley, the heart of Southern Califo...
Arquivo 2004 de a a z
Arquivo 2004 de a a z
Episode 3(1): Cognitive tools for the individual - Meetup session 9
Episode 3(1): Cognitive tools for the individual - Meetup session 9
Me n pia
Me n pia
Tugas Psikologi Sosial Terapan, Htmansystem: From Lossy to Glossy
Tugas Psikologi Sosial Terapan, Htmansystem: From Lossy to Glossy
Archivo de-educacion
Archivo de-educacion
Ähnlich wie Java2day 2013 : Modern workflows for javascript integration
Full Stack React Workshop [CSSC x GDSC]
Full Stack React Workshop [CSSC x GDSC]
GDSC UofT Mississauga
Android Jump Start
Android Jump Start
Haim Michael
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
Fred Sauer
Starting with jQuery
Starting with jQuery
Anil Kumar
Android Made Simple
Android Made Simple
Gabriel Dogaru
Pain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr Sugak
Sigma Software
An overview of node.js
An overview of node.js
valuebound
jQuery and_drupal
jQuery and_drupal
BlackCatWeb
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWT
Manuel Carrasco Moñino
Web summit.pptx
Web summit.pptx
171SagnikRoy
Delegating user tasks in applications
Delegating user tasks in applications
Friedger Müffke
Google Web Toolkit
Google Web Toolkit
Michael Angelo Rivera
Android workshop material
Android workshop material
Reza Yogaswara
Integrate Shindig with Joomla
Integrate Shindig with Joomla
Anand Sharma
jQuery - the world's most popular java script library comes to XPages
jQuery - the world's most popular java script library comes to XPages
Mark Roden
Real time web
Real time web
Medhat Dawoud
jQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPages
Teamstudio
jQuery Conference Austin Sept 2013
jQuery Conference Austin Sept 2013
dmethvin
Using WordPress for Rapid Prototyping
Using WordPress for Rapid Prototyping
Drew Morris
How to create high scalable JavaScript apps for Java Portals
How to create high scalable JavaScript apps for Java Portals
Zeno Rocha
Ähnlich wie Java2day 2013 : Modern workflows for javascript integration
(20)
Full Stack React Workshop [CSSC x GDSC]
Full Stack React Workshop [CSSC x GDSC]
Android Jump Start
Android Jump Start
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
SF JUG - GWT Can Help You Create Amazing Apps - 2009-10-13
Starting with jQuery
Starting with jQuery
Android Made Simple
Android Made Simple
Pain Driven Development by Alexandr Sugak
Pain Driven Development by Alexandr Sugak
An overview of node.js
An overview of node.js
jQuery and_drupal
jQuery and_drupal
Rapid and Reliable Developing with HTML5 & GWT
Rapid and Reliable Developing with HTML5 & GWT
Web summit.pptx
Web summit.pptx
Delegating user tasks in applications
Delegating user tasks in applications
Google Web Toolkit
Google Web Toolkit
Android workshop material
Android workshop material
Integrate Shindig with Joomla
Integrate Shindig with Joomla
jQuery - the world's most popular java script library comes to XPages
jQuery - the world's most popular java script library comes to XPages
Real time web
Real time web
jQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery: The World's Most Popular JavaScript Library Comes to XPages
jQuery Conference Austin Sept 2013
jQuery Conference Austin Sept 2013
Using WordPress for Rapid Prototyping
Using WordPress for Rapid Prototyping
How to create high scalable JavaScript apps for Java Portals
How to create high scalable JavaScript apps for Java Portals
Mehr von Mite Mitreski
Getting all the 99.99(9) you always wanted
Getting all the 99.99(9) you always wanted
Mite Mitreski
The core libraries you always wanted - Google Guava
The core libraries you always wanted - Google Guava
Mite Mitreski
Micro service pitfalls voxxed days istanbul 2015
Micro service pitfalls voxxed days istanbul 2015
Mite Mitreski
Devoxx 2014 : Sparky guide to bug free JavaScirpt
Devoxx 2014 : Sparky guide to bug free JavaScirpt
Mite Mitreski
Microservice pitfalls
Microservice pitfalls
Mite Mitreski
Unix for developers
Unix for developers
Mite Mitreski
State of the lambda
State of the lambda
Mite Mitreski
Google Guava for cleaner code
Google Guava for cleaner code
Mite Mitreski
Eclipse 10 years Party
Eclipse 10 years Party
Mite Mitreski
Mehr von Mite Mitreski
(9)
Getting all the 99.99(9) you always wanted
Getting all the 99.99(9) you always wanted
The core libraries you always wanted - Google Guava
The core libraries you always wanted - Google Guava
Micro service pitfalls voxxed days istanbul 2015
Micro service pitfalls voxxed days istanbul 2015
Devoxx 2014 : Sparky guide to bug free JavaScirpt
Devoxx 2014 : Sparky guide to bug free JavaScirpt
Microservice pitfalls
Microservice pitfalls
Unix for developers
Unix for developers
State of the lambda
State of the lambda
Google Guava for cleaner code
Google Guava for cleaner code
Eclipse 10 years Party
Eclipse 10 years Party
Kürzlich hochgeladen
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
hariprasad279825
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Slibray Presentation
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
RankYa
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
charlottematthew16
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
Miki Katsuragi
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Zilliz
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Mattias Andersson
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
Zilliz
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
The Digital Insurer
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Manik S Magar
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
NavinnSomaal
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
Enterprise Knowledge
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Dubai Multi Commodity Centre
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
Alfredo García Lavilla
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Fwdays
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
gvaughan
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
Addepto
Kürzlich hochgeladen
(20)
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
Java2day 2013 : Modern workflows for javascript integration
1.
Modern workflows for
JavaScript integration x @mitemitreski blog.mitemitreski.com
2.
Application that can
be written in JavaScript, will eventually be written in JavaScript. - Atwood’s Law ( Jeff Atwood aka @codinghorror)
3.
4.
5.
6.
How do we
manage dependencies? ● ● ● ● Don’t manage them Just use copy/paste Obey the framework’s preferred way Use a build tool
7.
Web Jars <dependency> <groupId>org.webjars</groupId> <artifactId>jquery</artifactId> <version>1.8.2</version> </dependency> compile 'org.webjars:jquery:1.8.2'
8.
Tools tools and
more tools
9.
Successful programmers are
? A. Lazy B. Dumb C. All above D. None
10.
What are you
doing to save time?
11.
Pick tools that
you will use
12.
Yeoman.io Tooling workflow for
modern JavaScript development
13.
Toolset
14.
● Think of
ANT, Maven, Make, Gradle … ● Huge ecosystem ● 1800 + plugins
15.
Gruntfile.js module.exports = function(grunt)
{ grunt.initConfig({ concat: { options: { separator: ';' }, dist: { src: ['src/**/*.js'], dest: 'dist/<%= pkg.name %>.js' } }, watch: { files: ['<%= jshint.files %>'], tasks: ['jshint', 'qunit'] } }); }
16.
What’s running the
JS?
17.
Package.json { "name": "temp", "version": "0.0.0", "dependencies":
{}, "devDependencies": { "grunt": "~0.4.1", "grunt-autoprefixer": "~0.4.0", "karma": "~0.10.6", "karma-ng-html2js-preprocessor": "~0.1.0" }, "engines": { "node": ">=0.8.0" } ..}
18.
How are the
frontend libs managed? ● Runs over Git ● 5000 + packages ● Flat hierarchy
19.
Bower.json { "name": "myapp", "version": "0.0.0", "dependencies":
{ "sass-bootstrap": "~3.0.0", "requirejs": "~2.1.8", "modernizr": "~2.6.2", "jquery": "~1.10.2" }, "devDependencies": {} }
20.
Semantic versioning MAJOR.MINOR.PATCH (2.3.3) ●
MAJOR - backward incompatible ● MINOR - new features backwards compatible ● PATCH - bugfixes, fully compatible
21.
YO ● Workflow and
glue code ● Initial project scaffolding ● 400 + generators with a lot subsections
22.
What about tests? ●
Karma test runner ○ Reporters ○ Test framework support ● Phantom JS
23.
Demo time > npm
search yeoman-generator > npm install -g generator-angular > yo angular
24.
Maven integration <plugin> <groupid>org.codehaus.mojo </groupid> <artifactid>exec-maven-plugin </artifactid> <version>1.2.1</version> ● yeoman-maven-plugin ●
maven-exec-plugin <executions> <execution> <id>some-execution </id> <phase>compile</phase> <goals> <goal>exec</goal> </goals> + some maven-asembly </execution> </executions> <configuration> <executable>yo</executable> </configuration> </plugin>
25.
Links ● ● ● ● ● ● webjars.org yeoman.io gruntjs.com npmjs.org karma-runner.github.io npmjs.org
Jetzt herunterladen