An Angular 6+ based front-end framework built on top of Angular... Stark features an awesome reusable build using Webpack and built-in support for state of the art front-end tech
Stark provides main building blocks for accelerating front-end development:
- a solid reusable build based on Webpack
- a starter project inspired by Angular Starter by AngularClass and Google's Web Starter Kit
- core modules providing reusable APIs (e.g., reactive client for RESTful APIs based on NBB's RESTful API Design Guide, routing, logging, log shipping, ...)
- UI modules providing reusable UI components (e.g., data table, message pane, ...) and themes
- a showcase application containing
- demos of all components/services along with their API
- our living style guide
- our developer guide
Stark modules are like LEGO blocks: add what you need, no less, no more. If you don't like our defaults then you may replace/override/ignore anything you fancy.
Stark's reusable build integrates support for:
- Angular optimizations: AOT, lazy loading with UI-Router
- TypeScript, @types, TSLint, Codelyzer
- Code formatting with Prettier
- HTML templating with html-webpack-plugin
- PostCSS with CSSNext, nesting, prefixing, ...
- Code splitting
- Tree shaking to automatically remove unused code from your production bundle
- Hot Module Replacement with @angularclass/hmr and @angularclass/hmr-loader
- Minification & uglification
- Cache busting with file hashes
- Tests: E2E, Karma, Protractor, Jasmine, with source maps support, possibility to execute subsets of the tests, ...
- Tests code coverage with Istanbul
- Environments definition (development | production)
- Assets copying
- Security with a DEV mode Content Security Policy (CSP) enabled
- Local testing with fake back-ends using json-server
- Router visualization with UI-Router Visualizer
All the Stark packages are built following the Angular Package Format so the following bundles are provided:
- FESM2015
- FESM5
- ESM2015
- ESM5
- UMD
So they can be consumed by Angular CLI, Webpack or SystemJS.
Stark releases are available on npm: https://www.npmjs.com/settings/nationalbankbelgium/packages
Each and every day, a new snapshot of Stark is built, tested and published on npm: https://www.npmjs.com/settings/nationalbankbelgium/packages See this page for more information about the process behind this.
Please follow our contribution guidelines.
To know how to release Stark, refer to this page.
This project and all associated source code is licensed under the terms of the MIT License.
The Stark Showcase can be found here. There, you'll also find links about:
- the latest API docs for Stark-Core
- the previous API docs for Stark-Core
- the latest API docs for Stark-UI
- the previous API docs for Stark-UI
- the previous Showcase versions
We'd like to thank the following companies who support the open source community with great tools and platforms.
We're supported by Jetbrains and their awesome support for open source, thanks to which we are able to use the best products on the market to work on this open source project!
We're supported by GitHub Actions
We're supported by BrowserStack