All Projects → PFight → angular-gulp-starter

PFight / angular-gulp-starter

Licence: MIT License
Simple dev/prod build for Angular (2+) using gulp, systemjs, rollup, ngc (AOT), scss, Visual Studio

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects
CSS
56736 projects
HTML
75241 projects

Projects that are alternatives of or similar to angular-gulp-starter

ng-seed
Simple Angular seed project with commonly used features.
Stars: ✭ 12 (-33.33%)
Mutual labels:  angular2, seed, starter, aot, angular-2
Egeo
EGEO is the open-source UI library used to build Stratio's UI. It includes UI Components, Utilities, Services and much more to build user interfaces quickly and with ease. The library is distributed in AoT mode.
Stars: ✭ 69 (+283.33%)
Mutual labels:  angular2, rollup, aot, angular-2
Universal
Seed project for Angular Universal apps featuring Server-Side Rendering (SSR), Webpack, CLI scaffolding, dev/prod modes, AoT compilation, HMR, SCSS compilation, lazy loading, config, cache, i18n, SEO, and TSLint/codelyzer
Stars: ✭ 669 (+3616.67%)
Mutual labels:  seed, starter, aot
example-app
Example app showcasing fulls1z3's Angular libraries
Stars: ✭ 27 (+50%)
Mutual labels:  seed, starter, aot
angular2-webpack-advance-starter
An advanced Angular2 Webpack Starter project with support for ngrx/store, ngrx/effects, ng2-translate, angulartics2, lodash, NativeScript (*native* mobile), Electron (Mac, Windows and Linux desktop) and more.
Stars: ✭ 49 (+172.22%)
Mutual labels:  angular2, seed, starter
Angular Library Seed
🌾 Seed project for Angular libraries that are AOT/JIT compatible and that use external SCSS-styles and HTML-templates
Stars: ✭ 197 (+994.44%)
Mutual labels:  seed, starter, aot
angular2-pokedex
A Pokedex built on Angular with AoT, Tree Shaking, Rollup and TypeScript
Stars: ✭ 34 (+88.89%)
Mutual labels:  rollup, aot, angular-2
angular4-seed-starter
An angular4 starter with webpack2+aot+lazyload+hmr+scss(个人搭的angular4 starter,使用webpack2,包含aot、lazyload、scss、热替换功能等等)
Stars: ✭ 23 (+27.78%)
Mutual labels:  angular2, starter, aot
Ng2 Smart Table
Angular Smart Data Table component
Stars: ✭ 1,590 (+8733.33%)
Mutual labels:  angular2, aot, angular-2
vuejs-typestyle-seed
VueJS + TypeStyle seed using JSX
Stars: ✭ 20 (+11.11%)
Mutual labels:  seed, starter
mark.js
mark.js用于标记选中的文字,自定义插入标签
Stars: ✭ 27 (+50%)
Mutual labels:  gulp, rollup
laravel5Angular4
Laravel 5.4 & Angular 4.3.4
Stars: ✭ 37 (+105.56%)
Mutual labels:  angular2, angular-2
gupack
基于gulp的前端构建工具
Stars: ✭ 13 (-27.78%)
Mutual labels:  gulp, angular2
WP-Gulp-Starter
A starter kit for developing WordPress themes and plugins with Gulp workflow.
Stars: ✭ 26 (+44.44%)
Mutual labels:  gulp, starter
bymattlee-11ty-starter
A starter boilerplate powered by 11ty, Sanity, Gulp, Tailwind CSS, rollup.js, Alpine.js and Highway.
Stars: ✭ 27 (+50%)
Mutual labels:  gulp, rollup
ng2-acl
Role based permissions for Angular v2++
Stars: ✭ 15 (-16.67%)
Mutual labels:  angular2, angular-2
gw-starter-kit
PEPELAC - Современный инструментарий для вёрстки и создания статичных сайтов с использованием Webpack
Stars: ✭ 30 (+66.67%)
Mutual labels:  gulp, starter
babel-plugin-rewire-exports
Babel plugin for stubbing [ES6, ES2015] module exports
Stars: ✭ 62 (+244.44%)
Mutual labels:  rollup, systemjs
Angular2-RecordRTC
A demonstration of RecordRTC working with Angular 2
Stars: ✭ 38 (+111.11%)
Mutual labels:  angular2, angular-2
general-angular
Realtime Angular Admin/CRUD Front End App
Stars: ✭ 24 (+33.33%)
Mutual labels:  angular2, angular-2

Angular gulp starter

Simple dev/prod gulp build for Angular (2+) using systemjs, rollup, ngc (AOT), scss, and with dev/prod servers via express.

Setup

npm install gulp -g
npm install

See in action

Try DEV build online

Try PROD build online

Commands

Development buid
gulp build-dev --color

Development build includes compilation of SCSS and TypeScript, and bundling of rxjs to single file.

Production build
gulp build-prod --color

Production build includes compilation of SCSS, AOT compilation and tree-shaking with Rollup. All result files moved to dist dir. Production build output do not conflicts with development.

Start develoment server
npm start

Server will be listening on http://localhost:8181.

Start production test server
npm run start-prod

Server will be listening on http://localhost:8282, with gzip content compression enabled.

Using Visual Studio

Setup
  1. Setup Visual Studio 2015 (for example, Community Edition)
  2. Setup TypeScript for Visual Studio 2015
  3. Setup Web Compiler extension for working with SCSS from IDE.
  4. Run gulp build-dev --color from terminal, to make rxjs bundle.
Working

TypeScript and SCSS set up to be compiled on file save. SystemJS loads every file separately, so you only need save your changes, and reload browser window.

To force recompilation of all files make rebuild of the solution (Alt+B, Alt+R). To force recompilation of SCSS file, right click -> Web Compiler -> Re-compile file

Installing dependencies

If library should be imported via import statement into TypeScript, then:

  1. For development: make sure, that TypeScript will find this library with tsconfig.json, and make sure, that SystemJS will find it by buid-tools/systemjs-config.json. In some cases nothing needed, in some cases you should map library name to its path, as it made for @angular modules.
  2. For production: make sure, that TypeScript will find this library with tsconfig.ngc.json, tsconfig.prod.json and make sure, that Rollup will find it by build-tools/rollup-config.js. In most cases, rollup-plugin-node-resolve plugin will make the work without any setup.

If library should not be imported, and its only needed to add it page, then:

  1. For devleopment: add <script> tag into index.html in section <!-- development -->.
  2. For production: add row to build.prod.js to function commonBundle; you can specify full path, or use pathTools.resolvePackagePath funciton to automaticly resolve library path.

Known issues

  1. Replace es6-shim with core-js, because es6-shim works extremely slow in IE.
  2. Add minification and post-processing of CSS.
  3. Resolve, why packageConfigPaths in systemjs-config does not work.
  4. Add server-side rendering support.
  5. Add testing support.
  6. Remove unused dependencies.

See also

See branch hash-routing for enabling hash location strategy, instead of HTML5. See branch http2 for testing spdy in development server. By the way, there is no perfomance boost achieved.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].