Provides an extremely fast seed project for the development of Angular Universal (isomorphic) projects. Check out the live app
This starter project is designed to get a basic application up and running with basic implementations of core features most applications need. It uses Firebase for the authentication and the database layers.
Note: Firebase doesn't have official support for Angular Universal at this time. However, we have implemented some of the basic features to render and transfer server state to the browser. Once an official support is released, we will use that.
Built by AngularUniversal.com. For additional help please checkout our services
Note that we strongly recommend node >= v7.0.0 and npm >= 4.0.0.
To start the seed use:
$ git clone --depth 1 https://github.com/patrickmichalina/fusebox-angular-universal-starter
$ cd fusebox-angular-universal-starter
# Add Firebase Admin values to your project
# in a ".env" file for local deveopment
# in environment variables for other environments
See [Environment Variables](#environment-variables)
# install the project's dependencies
$ npm install
# start the Angular Universal server
$ npm start
# start the server while watching tests and updating app documentation
$ npm run start.deving
# start the Angular Universal server w/ AOT build step
$ npm run start.aot
# can also be called passing the parameter --aot
# npm start --aot
# start the application in Client only mode (not server driven), with HMR enabled
$ npm run start.spa
# start the server in production mode
$ npm run start.prod
Checkout how blazing fast bundling can be using FuseBox!
# single test run
$ npm test
# single test with coverage results
$ npm run test.coverage
# continuous testing
$ npm run test.watch
# e2e testing (primarilly for CI builds)
$ npm run test.e2e.ci
# continuous e2e testing
$ npm run test.e2e.watch
Coming Soon
When you include a module that doesn't include typings, you can include external type definitions using the npm @types repo.
i.e, to have youtube api support, run this command in terminal:
npm i -D @types/youtube @types/gapi @types/gapi.youtube
# it is important to set the following environmental variables on your CI server (examples below)
HOST : angular.patrickmichalina.com # the root origin of your application server
CI : true
# for Heroku Builds
HEROKU : true # to build on heroku, ssl settings are setup using this flag
NPM_CONFIG_PRODUCTION : false # to download all depenedencies on Heroku, including devDependencies
# Firebase Admin SDK
FB_SERVICE_ACCOUNT_PRIVATE_KEY_ID: Some_Secret
FB_SERVICE_ACCOUNT_PRIVATE_KEY: Some_Secret
FB_AUTH_KEY: Some_Secret
We use the component approach in our starter. This is the standard for developing Angular apps and a great way to ensure maintainable code
fusebox-angular-universal-starter/
├──.fusebox/ * working folder for the js bundler
├──.vscode/ * Visual Studio Code settings
├──coverage/ * stores recent reporting of test coverage
├──dist/ * output files that represent the bundled application and its dependencies
├──node_modules/ * project depdendencies
|
├──src/
| ├──client/ * client Angular code. (most your work should be done here)
| └──server/ * server code
|
├──tools/
| ├──config/
| | ├──app.config.ts * configuration interface for the web applications
| | ├──build.config.ts * configuration values for the build system
| | ├──build.interfaces.ts * configuration interfaces for the build system
| | └──build.transformer.ts * build system config transform helper
| |
| ├──env/
| | ├──base.ts * base app configuration
| | ├──dev.ts * dev app configuration
| | ├──**.ts * arbitrary configuration called via the flag --env-config
| | └──prod.ts * production app configuration
| |
| ├──scripts/ * misc. build helper scripts
| ├──tasks/ * Sparky tasks
| ├──test/ * testing system related configuration
| └──web/ * static assets used for common web functions
|
├──.gitignore * GIT settings
├──circl.yml * CirclCI configuration file
├──CODE_OF_CONDUCT.md * standard code of conduct information
├──codecov.yml * codecov.io configuration file
├──CONTRIBUTING.md * standard contributor information
├──fuse.ts * FuseBox entry point
├──LICENSE * software license
├──package-lock.json * what npm uses to manage it's dependencies
├──package.json * what npm uses to manage it's dependencies
├──Procfile * Heroku deployment setting
├──README.md * project information
├──test-report.xml * JUNIT test results
├──tsconfig-aot.json * typescript config for AOT build using @angular-cli (ngc)
└──tsconfig.json * typescript config
You can follow the Angular change log here.
ASP.NET Core 2.1 & Angular 7(+) Advanced Starter - PWA & Server-side prerendering (for Angular SEO)! Made with ❤️ by Trilon.io Harness the power of Angular 7+, ASP.NET Core 2.1, now with SEO ! Angular
FuseBox 是一个打包、模块的加载器,用来合并包括 webpack、JSPM 和 SystemJS 的强大功能。 示例代码: //npm install typescript fuse-box --save-devFuseBox.init({ homeDir: "src/", sourceMap: { bundleReference: "./sourcemaps.j
问题内容: 有没有带WebSockets的Angular Universal示例? 服务器端渲染不知道在我的情况下是不是一个WebSocket对象。如果我使用socket.io,则尝试建立连接时节点服务器将挂起。 有关该问题的一些其他信息: 我从github下载了angular-universal- starter:https://github.com/angular/universal- sta
Angular RU Universal Starter If you like this project please show your support with a GitHub star. Much appreciated! Repository with Angular CLI and Angular Universal Translations: Русский English Rom
描述 (Description) 通用选择器选择文档中可用的所有元素。 语法 (Syntax) 以下是使用此选择器的简单语法 - $('*') 参数 (Parameters) 以下是此选择器使用的所有参数的说明 - * - 一个象征性的明星。 返回值 (Returns) 与任何其他jQuery选择器一样,此选择器也返回一个填充了found元素的数组。 例子 (Example) $('*')选择文
universal Please support this project by simply putting a GitHub star. Share this library with friends on twitter and everywhere else you can. universal is a seed project for Angular Universal apps fo