universal
universal是遵循文件和应用程序组织中的共同模式和最佳实践的Angular universal应用程序的种子项目,提供以下功能:
- 使用角框架提供种子项目。
- 新:NX扩展工作区/MonorePo功能!
- 包括NGRX驱动的CRUD功能教程。
- 编译浏览器( SPA )和服务器(Angular universal )平台的捆绑包。
- 在Angular CLI上重新重新集中在功能和开发生产力上,而不是构建工具上。
- 可自定义的Webpack配置通过 @angular-Builders。
- 使用角度材料的现代UI组件。
- 通过Flex-Layout动态响应式布局。
- 内置热模块更换以节省宝贵的开发时间。
- 开发,分期和生产模式。
- 在登台/生产构建时执行AOT汇编以进行快速页面负载。
- 使用Angular Devkit摇晃树木和缩小生产。
- 跨浏览器SCSS带有AutoPrefixer和browserslist。
- Stylelint-Config-标准作为样式标准和自定义规则的配置预设,以标准化样式表。
- 在客户端引导程序上传输服务器响应,以防止应用程序transferstate“闪烁应用程序”。
- 通过懒负荷推迟模块的初始化。
- 使用NGRX/Store进行状态管理。
- 新的使用NGRX/实体状态适配器来操纵和查询实体集合。
- 新的使用NGRX/效果副作用模型将事件源作为动作建模。
- New使用Unionize用于无样板的功能总数。
- 使用NGX-Config进行配置管理。
- 使用NGX-auth进行基于JWT的基于基于JWT的身份验证( W/ universal支持)。
- 使用NGX-CACHE进行范围范围的缓存。
- 使用ngx换板进行I18N支持。
- 将NGX-META用于SEO(标题,元标记和开放图标签以进行社交共享)。
- 将ngx完美的滚动条用于滚动条。
- 通过Angulartics2的供应商 – 敏捷分析2。
- 带Jest的单位测试,包括代码覆盖范围。
- 与CircleCi连续集成和交付平台的无缝集成。
- Angular-TSLINT-RULE作为TSLINT和CODELYZER的配置预设。
您可以在http://universal.b**urakta*sci.com上查看实时应用程序。
目录:
- 入门
- 安装
- 设置上游存储库
- 开发和构建
- 贡献
- 执照
入门
安装
您可以通过简单地拨打回购来安装universal :
# clone the repo
$ git clone https://**git*hub.com/fulls1z3/universal.git [your-project-name]
$ cd [your-project-name]
设置上游存储库
克罗伦请存储库后,您可以按照以下步骤允许与您的叉子进行此存储库的同步更改:
# set up `origin`
$ git remote set-url origin [your-fork-repo]
# set up `upstream` to sync future changes
$ git remote add upstream https://**git*hub.com/fulls1z3/universal.git
# verify the upstream repo specified for your fork
$ git remote -v
origin https://gi*thub*.com*/YOUR_USERNAME/[your-fork-repo].git (fetch)
origin https://gi*thub*.com*/YOUR_USERNAME/[your-fork-repo].git (push)
upstream https://**git*hub.com/fulls1z3/universal.git (fetch)
upstream https://**git*hub.com/fulls1z3/universal.git (push)
# initial push for the fork
$ git push
现在,您可以创建一个新的目录(例如:ex: src/app/shared )来构建代码库,同时从src/app/framework目录的客户端框架中受益。
为了合并最新的上游更改,只需以下内容:
# fetch the latest upstream
$ git fetch upstream
# merge the upstream changes
$ git merge upstream/master
然后处理任何冲突,然后继续构建您的应用程序。
开发和构建
以下是要开发,构建和测试此种子项目的脚本:
安装依赖项
# use ` yarn ` to install the deps $ yarn
开发服务器
# dev server
$ ng serve
# dev server (HMR-enabled)
$ ng serve --c hmr
# dev server (AoT compilation)
$ ng serve --prod
# dev server (SSR)
$ yarn start:ssr
# dev server (SSR & AoT compilation)
$ yarn start:ssr:prod
进而,
- 导航到
http://l*ocalho*s*t:4200/for Spa(浏览器)构建。 - 导航到
http://local*hos*t*:4000/for SSR(通用)构建。
如果您更改任何源文件,该应用将自动重新编译。
建造
# development build
$ ng build
# production build
$ ng build --prod
# development build (SSR)
$ yarn build:ssr
# production build (SSR)
$ yarn build:ssr:prod
构建工件将存储在dist/目录中。
运行测试
# run unit tests
$ ng test
贡献
如果您想提交错误,贡献一些代码或改进文档,请阅读以下贡献指南:
- 发行指南
- 贡献准则
- 编码规则
- 更改日志
由于
- JetBrains,以免费的WebStorm许可证对这个开源项目的支持。
执照
麻省理工学院许可证(MIT)
版权(C)2018 Burak Tasci
