Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/juristr/ngx-tabs-libdemo

NON PRODUCTION READY - Repository to demonstrate Angular libraries
https://github.com/juristr/ngx-tabs-libdemo

Last synced: about 2 months ago
JSON representation

NON PRODUCTION READY - Repository to demonstrate Angular libraries

Awesome Lists containing this project

README

        

## Angular Tabs - Demo Library

[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)
[![Build Status](https://travis-ci.org/juristr/ngx-tabs-libdemo.svg?branch=v0.0.0-development)](https://travis-ci.org/juristr/ngx-tabs-libdemo)

by [Juri Strumpflohner](https://twitter.com/juristr) · [https://juristr.com/blog](https://juristr.com/blog)

> **WARNING**: This is **not a production ready library**, but rather just an example
> to showcase how to release custom Angular libraries.

This repo is meant to demonstrate the creation of an Angular library, following the [Angular Package Format](https://docs.google.com/document/d/1CZC2rcpxffTDfRDs6p1cfbmKNLA6x5O-NtkJglDaBVs/preview).

## Contents

So what's in this repo?

* **[setup with ng-packagr (master)](https://github.com/juristr/ngx-tabs-libdemo) -** the `master` branch shows the _suggested approach_, namely to setup your library with [ng-packagr](https://github.com/dherges/ng-packagr).
* **[NX workspace setup (with-demoproj-setup)](https://github.com/juristr/ngx-tabs-libdemo/tree/with-demoproj-setup) -** Setup that shows how you can use [Nrwl/NX](https://nrwl.io/nx) to setup a nice workspace containing a library project and demo it straight away.
* **[Building libraries with Bazel (bazel)](https://github.com/juristr/ngx-tabs-libdemo/tree/bazel) -** This branch shows how to use Bazel to generate an Angular package.
* **[manual setup (manual-setup)](https://github.com/juristr/ngx-tabs-libdemo/tree/manual-setup) -** the `manual-setup` branch on the other hand, demonstrates how to assemble the different tooling in order to get a manual setup with simple npm scripts that are being executed one after the other. This allows for full flexibility and serves for educational purposes, to learn how things are done behind the scenes. _This is a slightly improved version of the talk given at NG-BE (see link below)._

## Useful links

[Angular Package Format v5.0](https://docs.google.com/document/d/1CZC2rcpxffTDfRDs6p1cfbmKNLA6x5O-NtkJglDaBVs/preview), design document at Google Docs

## Talks

**Create and publish Angular libs like a Pro (March 2018) -** Juri Strumpflohner at ngVikings, demoing building Angular libraries with ng-packagr, with NX as well as Bazel ([30min talk](https://youtu.be/Tw8TCgeqotg)) ([Slides](https://docs.google.com/presentation/d/1TY2wDLWvbY9hxuhXxFLMY6xfrpdmpMnsTflipEwtsiI/edit?usp=sharing))

[![Juri Strumpflohner - Create & Publish Angular Libs like a PRO at ngVikings](https://img.youtube.com/vi/Tw8TCgeqotg/0.jpg)](https://youtu.be/Tw8TCgeqotg)

**Packaging Angular Libraries (Jan 2018) -** Jason Aden at Angular Mountain View Meetup ([45min talk](https://www.youtube.com/watch?v=QfvwQEJVOig&t=3612s))

[![**Packaging Angular Libraries -** Jason Aden at Angular Mountain View Meetup](https://img.youtube.com/vi/QfvwQEJVOig/0.jpg)](https://youtu.be/QfvwQEJVOig)

**Create and publish Angular libs like a Pro (Dec 2017) -** Juri Strumpflohner at NG-BE ([30min talk](https://youtu.be/K4YMmwxGKjY)) ([Slides](https://drive.google.com/open?id=1KzitBVVepOxgS-gxejehKC4V27ENeFMQ6Gwwrw5O9AE))

[![Juri Strumpflohner - Create and publish Angular libs like a Pro](https://img.youtube.com/vi/K4YMmwxGKjY/0.jpg)](https://youtu.be/K4YMmwxGKjY)

**Packaging Angular (April 2017)-** Jason Aden at ng-conf 2017 ([28min talk](https://youtu.be/unICbsPGFIA))

[![Packaging Angular - Jason Aden](https://img.youtube.com/vi/unICbsPGFIA/0.jpg)](https://youtu.be/unICbsPGFIA)

## Bugs, questions,...

Open an issue here on the repo or simply [reach out to me on Twitter](https://twitter.com/juristr) :smiley: