All Projects → hstarorg → Ngx Modular Platform

hstarorg / Ngx Modular Platform

Licence: mit
A development platform based Angular next(2.x+), easy for multiple teams development.

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Ngx Modular Platform

Ng Sticky
Angular 4 sticky, have header or any component sticky easy to use.
Stars: ✭ 25 (-41.86%)
Mutual labels:  angular4
Ionic3 Angular43 Httpclient
Example of Ionic 3 and the new Angular 4.3 HTTPClient
Stars: ✭ 20 (-53.49%)
Mutual labels:  angular4
Angular2 Social Login
Simple client side social authentication for Angular2 application.
Stars: ✭ 34 (-20.93%)
Mutual labels:  angular4
Angular2 Carousel
An lightweight , touchable and responsive library to create a carousel for angular 2 / 4 / 5
Stars: ✭ 26 (-39.53%)
Mutual labels:  angular4
Nebular
💥 Customizable Angular UI Library based on Eva Design System 🌚✨Dark Mode
Stars: ✭ 7,368 (+17034.88%)
Mutual labels:  angular4
Ngvas
An Angular2/Angular4 library for HTML Canvas.
Stars: ✭ 31 (-27.91%)
Mutual labels:  angular4
Angular Universal Seed
Angular5 Universal Webpack Seed
Stars: ✭ 17 (-60.47%)
Mutual labels:  angular4
Mean Angular4 Chat App
MEAN stack with Angular 4 Chat App
Stars: ✭ 41 (-4.65%)
Mutual labels:  angular4
Ng2 Flex Table
Angular 4 Table - Beautiful Table especially made for non-relational databases. With inline editing, column search & filter and fixed headers.
Stars: ✭ 15 (-65.12%)
Mutual labels:  angular4
Angular2 Echarts
angular directive for echarts v3
Stars: ✭ 34 (-20.93%)
Mutual labels:  angular4
Ng2 Dnd
Angular 2 Drag-and-Drop without dependencies
Stars: ✭ 861 (+1902.33%)
Mutual labels:  angular4
Bootstrap
Open Source JS plugins
Stars: ✭ 13 (-69.77%)
Mutual labels:  angular4
Angularconcepts
Key Angular Concepts using Latest Angular version 5
Stars: ✭ 31 (-27.91%)
Mutual labels:  angular4
Angular Go Boilerplate
A simple boilerplate project with Angular 4 on Front-End and Golang on Backend
Stars: ✭ 26 (-39.53%)
Mutual labels:  angular4
Laravel5.5 Angular5
Laravel 5.5 + Angular 5 + AdminLTE single page application
Stars: ✭ 40 (-6.98%)
Mutual labels:  angular4
Great Big Example Application
A full-stack example app built with JHipster, Spring Boot, Kotlin, Angular 4, ngrx, and Webpack
Stars: ✭ 899 (+1990.7%)
Mutual labels:  angular4
Angular Webpack Starter
A complete Angular 6 and Webpack 4 starter seed with minimal and full featured branches. Full featured branch includes: Material Design 2 (Bootstrap 4 branch available as well), @ngrx, HMR, DLLs and optional use of Universal for server-side rendering - Supports AOT (offline) compilation, sync and lazy loading. Karma/Protractor for e2e/unit tests.
Stars: ✭ 911 (+2018.6%)
Mutual labels:  angular4
Angular Contacts Demo
Angular demo(SSR) base on Angular CLI
Stars: ✭ 42 (-2.33%)
Mutual labels:  angular4
Admin Angluar
基于ngx-admin、ng-zorro-antd写的管理后台模板
Stars: ✭ 41 (-4.65%)
Mutual labels:  angular4
Angulartics2
Vendor-agnostic analytics for Angular2 applications.
Stars: ✭ 963 (+2139.53%)
Mutual labels:  angular4

angular-modular-platform

A development platform based Angular2, easy for multiple teams development.

基于 Angular 的模块化开发平台。

Usage

# 初始化依赖 
npm i
# 生成type define文件(如果要运行框架代码,请务必执行该命令,否则ts-loader会有一堆错误)
npm run types

# 运行(执行编译并监控,非AOT模式)
npm run dev

# 模块相关命令
npm run modules # JIT编译模块
npm run modules:ngc # angular-compiler-cli 编译模块
npm run modules:aot # AOT编译模块(会先执行 modules:ngc)

# 生成Demo发布包
npm run build

注:框架默认只安装了 css-loader,但提供了 sass less stylus 的支持,如果需要使用以上几种预处理器,请务必安装相关插件

# sass
npm i --save-dev node-sass sass-loader

# less
npm i --save-dev less less-loader

# stylus
npm i --save-dev stylus stylus-loader

目录结构

build/ -- 构建代码目录
modules/ -- 模块放置目录
  demo1/ -- 模块1
  demo2/ -- 模块2
src/ -- 源代码目录
  app/ -- 页面目录
  common_module/ -- 公共模块目录
    filters/ -- 公共过滤器
    services/ -- 公共服务
    common.module.ts -- 公共模块定义
    index.ts -- 导出公共模块
  app.module.ts -- 根模块
  app.routing.ts -- 顶级路由配置
  bootstrap.ts -- 程序入口

核心思想

需求

  1. 首先,需要维护一个独立的平台,支持多个团队通过可视化操作提交开发的模块到平台中,通过配置菜单即可访问到。
  2. 基于 Angular 搭建
  3. 支持模块的动态加载
  4. 需要提供公共服务/组件等
  5. 其他更细致的业务相关需求,不再罗列

如何实现?

  1. 提供一个部署好的站点
  2. 提供一个可供开发团队使用的开发包(包含构建,公共功能)
  3. 提供模块打包等一系列辅助功能(通过cli)

遇到的问题

  1. 如何高效的打包模块?

    使用 webpack 的外部依赖功能,将所有依赖的平台插件,先行构建好,然后模块只打包它本身独立的功能。

  2. 如何实现AOT?

    模块本身是可以直接AOT的,通过搭配 angular-compiler-cliwebpack 实现模块的cli加载。

  3. 其他问题~

    待挖掘

注意事项

  1. 进行模块开发, 如果有框架依赖,一定要引用完整依赖,如 import { xxx } from 'rxjs'
  2. 要使用公共模块,请务必使用 import { xxx } from 'app/common'

Change log

查看变更日志

License

MIT License

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].