All Projects → fulls1z3 → Universal

fulls1z3 / Universal

Licence: mit
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

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to Universal

example-app
Example app showcasing fulls1z3's Angular libraries
Stars: ✭ 27 (-95.96%)
Mutual labels:  i18n, config, hmr, seo, seed, starter, aot, lazy-loading
Vuesion
Vuesion is a boilerplate that helps product teams build faster than ever with fewer headaches and modern best practices across engineering & design.
Stars: ✭ 2,510 (+275.19%)
Mutual labels:  webpack, i18n, seo, server-side-rendering, universal
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 (+36.17%)
Mutual labels:  hmr, aot, starter, universal, ngrx
Universal React Demo
ES6 demo of a simple but scalable React app with react-router, code splitting, server side rendering, and tree shaking.
Stars: ✭ 50 (-92.53%)
Mutual labels:  starter, universal, isomorphic, server-side-rendering
Angular11 App
Angular 11 ,Bootstrap 5, Node.js, Express.js, CRUD REST API, PWA, SSR, SEO, Angular Universal, Lazy Loading, PostgreSQL, MYSQL
Stars: ✭ 233 (-65.17%)
Mutual labels:  starter, seo, lazy-loading, angular-cli
Angular Seed Advanced
Advanced Angular seed project with support for ngrx/store, ngrx/effects, ngx-translate, angulartics2, lodash, NativeScript (*native* mobile), Electron (Mac, Windows and Linux desktop) and more.
Stars: ✭ 2,279 (+240.66%)
Mutual labels:  aot, i18n, seed, ngrx
Razzle Material Ui Styled Example
Razzle Material-UI example with Styled Components using Express with compression
Stars: ✭ 117 (-82.51%)
Mutual labels:  webpack, universal, isomorphic, server-side-rendering
Ngx Meta
Dynamic page title & meta tags utility for Angular (w/server-side rendering)
Stars: ✭ 331 (-50.52%)
Mutual labels:  aot, universal, seo, server-side-rendering
universal-react-relay-starter-kit
A starter kit for React in combination with Relay including a GraphQL server, server side rendering, code splitting, i18n, SEO.
Stars: ✭ 14 (-97.91%)
Mutual labels:  isomorphic, universal, seo, server-side-rendering
angular-app
Angular 14 ,Bootstrap 5, Node.js, Express.js, ESLint, CRUD, PWA, SSR, SEO, Universal, Lazy Loading
Stars: ✭ 389 (-41.85%)
Mutual labels:  seo, starter, angular-cli, lazy-loading
Angularwebpackvisualstudio
Template for ASP.NET Core, Angular with Webpack and Visual Studio
Stars: ✭ 497 (-25.71%)
Mutual labels:  webpack, hmr, aot, lazy-loading
angular-gulp-starter
Simple dev/prod build for Angular (2+) using gulp, systemjs, rollup, ngc (AOT), scss, Visual Studio
Stars: ✭ 18 (-97.31%)
Mutual labels:  seed, starter, aot
React Isomorphic Boilerplate
🌟 An universal React isomorphic boilerplate for building server-side render web app.
Stars: ✭ 653 (-2.39%)
Mutual labels:  webpack, isomorphic, server-side-rendering
Go Starter Kit
[abandoned] Golang isomorphic react/hot reloadable/redux/css-modules/SSR starter kit
Stars: ✭ 2,855 (+326.76%)
Mutual labels:  universal, isomorphic, server-side-rendering
Angular Ssr
Angular 4+ server-side rendering solution compatible with @angular/material, jQuery, and other libraries that touch the DOM (as well as providing a rich feature set!)
Stars: ✭ 283 (-57.7%)
Mutual labels:  isomorphic, server-side-rendering, angular-cli
webpack-isomorphic-compiler
A compiler that makes your life easier if you are building isomorphic webpack powered apps, that is, single page applications with server-side rendering
Stars: ✭ 16 (-97.61%)
Mutual labels:  isomorphic, universal, server-side-rendering
Angular Native Seed
Build web apps and NativeScript applications from one codebase using the AngularCLI.
Stars: ✭ 271 (-59.49%)
Mutual labels:  webpack, seed, angular-cli
Webpack Starter Basic
A simple webpack starter project for your basic modern web development needs.
Stars: ✭ 552 (-17.49%)
Mutual labels:  webpack, starter, seed
Isomorphic React
A simple but powerful React application built on a standards-compliant back-end
Stars: ✭ 318 (-52.47%)
Mutual labels:  webpack, universal, isomorphic
Vortigern
A universal boilerplate for building web applications w/ TypeScript, React, Redux, Server Side Rendering and more.
Stars: ✭ 647 (-3.29%)
Mutual labels:  webpack, universal, isomorphic

universal

CircleCI coverage Code Quality: JavaScript Total Alerts Greenkeeper badge Join the chat at https://gitter.im/fulls1z3-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 following the common patterns and best practices in file and application organization, providing the following features:

  • [x] Providing a seed project using the Angular framework.
  • [x] NEW: Extending workspace/monorepo capabilities by Nx!
  • [x] Includes ngrx-powered CRUD feature tutorial.
  • [x] Compiling bundles for both browser (SPA) and server (Angular Universal) platforms.
  • [x] Rebased on Angular CLI to focus on features and development productivity, not on build tools.
  • [x] Customizable webpack configuration via @angular-builders.
  • [x] Using the modern UI components of Angular Material.
  • [x] Dynamic responsive layouts via flex-layout.
  • [x] Built-in Hot Module Replacement to save valuable development time.
  • [x] Development, staging and production modes.
  • [x] Performing AoT compilation for rapid page loads on staging/production builds.
  • [x] Tree-shaking and minifying the production builds using Angular Devkit.
  • [x] Cross-browser SCSS with autoprefixer and browserslist.
  • [x] stylelint-config-standard as configuration preset for stylelint and custom rules to standardize stylesheets.
  • [x] Transferring server responses on client bootstrap to prevent app flickering with native TransferState`.
  • [x] Deferring initialization of modules via Lazy loading.
  • [x] Uses ngrx/store for state management.
  • [x] NEW Uses ngrx/entity state adapter to manipulate and query entity collections.
  • [x] NEW Uses ngrx/effects side effect model to to model event sources as actions.
  • [x] NEW Uses unionize for boilerplate-free functional sum types.
  • [x] Uses ngx-config for configuration management.
  • [x] Uses ngx-auth for basic JWT-based authentication (w/Universal support).
  • [x] Uses ngx-cache for application-wide caching.
  • [x] Uses ngx-translate for i18n support.
  • [x] Uses ngx-meta for SEO (title, meta tags, and Open Graph tags for social sharing).
  • [x] Uses ngx-perfect-scrollbar for scrollbars.
  • [x] Vendor-agnostic analytics via angulartics2.
  • [x] Unit tests with Jest, including code coverage.
  • [x] Seamless integration with CircleCI continuous integration and delivery platform.
  • [x] angular-tslint-rules as configuration preset for TSLint and codelyzer.

You can view the live app at http://universal.buraktasci.com.

Table of contents:

Getting started

Installation

You can install universal by simply forking the repo:

# clone the repo
$ git clone https://github.com/fulls1z3/universal.git [your-project-name]
$ cd [your-project-name]

Setting up upstream repository

Once you have cloned the repo, you can follow these steps to allow sync changes made in this repo with your fork:

# set up `origin`
$ git remote set-url origin [your-fork-repo]

# set up `upstream` to sync future changes
$ git remote add upstream https://github.com/fulls1z3/universal.git

# verify the upstream repo specified for your fork
$ git remote -v
origin    https://github.com/YOUR_USERNAME/[your-fork-repo].git (fetch)
origin    https://github.com/YOUR_USERNAME/[your-fork-repo].git (push)
upstream  https://github.com/fulls1z3/universal.git (fetch)
upstream  https://github.com/fulls1z3/universal.git (push)

# initial push for the fork
$ git push

Now, you can create a new directory (ex: src/app/shared) to build your codebase out, while benefiting from the client framework located at the src/app/framework directory.

In order to merge the latest upstream changes, simply follow:

# fetch the latest upstream
$ git fetch upstream

# merge the upstream changes
$ git merge upstream/master

then handle any conflicts, and go on with building your app.

Development and builds

Below are the scripts to dev, build, and test this seed project:

Install dependencies

# use `yarn` to install the deps
$ yarn

Development server

# 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

And then,

  • Navigate to http://localhost:4200/ for the SPA (browser) build.
  • Navigate to http://localhost:4000/ for the SSR (universal) build.

The app will automatically re-compile if you change any of the source files.

Build

# development build
$ ng build

# production build
$ ng build --prod

# development build (SSR)
$ yarn build:ssr

# production build (SSR)
$ yarn build:ssr:prod

The build artifacts will be stored in the dist/ directory.

Running tests

# run unit tests
$ ng test

Contributing

If you want to file a bug, contribute some code, or improve documentation, please read up on the following contribution guidelines:

Thanks to

  • JetBrains, for their support to this open source project with free WebStorm licenses.

License

The MIT License (MIT)

Copyright (c) 2018 Burak Tasci

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