diff --git a/README.md b/README.md index 25b7808..9da1d4a 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,26 @@ # React support for Angular -[![npm version](https://badge.fury.io/js/%40angular-react%2Fcore.svg)](https://www.npmjs.com/package/@angular-react/core) -[![CircleCI](https://circleci.com/gh/Microsoft/angular-react.svg?style=svg)](https://circleci.com/gh/Microsoft/angular-react) +[![CircleCI](https://circleci.com/gh/microsoft/angular-react.svg?style=svg)](https://circleci.com/gh/Microsoft/angular-react) Industry trends, organizational pressures, and other factors can lead to mandates regarding the use of component libraries or migration from one technology to another. In the case of [Office UI Fabric][fab], where its use is required, the client must be written in React (there is no Angular component library for the latest version). Rewrite from Angular to React may be cost-prohibitive or ill advised for other reasons. Use of Angular-React allows consuming any React elements, but specifically Office UI Fabric, within an Angular [2+] application. The library of wrappers for Office UI Fabric simplifies the use of these components with Angular. However, any React code can make use of the custom Angular-React renderer. +## Libraries + +@angular-react contains two separate libraries: + +- [**core**][lib-core]: [![npm version](https://badge.fury.io/js/%40angular-react%2Fcore.svg)](https://www.npmjs.com/package/@angular-react/core) + + Includes the Renderer and supporting logic to render Angular components with React implementations as React components. + +- [**fabric**][lib-fab]: [![npm version](https://badge.fury.io/js/%40angular-react%2Ffabric.svg)](https://www.npmjs.com/package/@angular-react/fabric) + + The light-weight Angular component wrappers that expose the Fabric React component API through common Angular components (including both imperative AND declarative syntax in many cases). + + ### Quick links -[@angular-react/fabric](https://www.npmjs.com/package/@angular-react/fabric) | [Documentation, quick start, and guides][ard] | [Demo][ard-demo] | [Contributing](https://github.com/microsoft/angular-react/blob/master/CONTRIBUTING.md) | @@ -19,25 +30,25 @@ Use of Angular-React allows consuming any React elements, but specifically Offic ### Typical Use Cases - Use React component libraries with Angular -- Incrementally rewrite an Angular application into React (moving from atomic/leaf nodes upward into full features/pages until the entire app is re-written) - -## Libraries - -- [**core**][lib-core]: Includes the Renderer and supporting logic to render Angular components with React implementations as React components. -- [**fabric**][lib-fab]: The light-weight Angular component wrappers that expose the Fabric React component API through common Angular components (including both imperative AND declarative syntax in many cases). - -# Roadmap - -Initial work to prove the feasibility of adapting the Angular Renderer to output React managed components has concluded. We have moved beyond the initial simple Fabric components and expanded coverage to much of the available [Office UI Fabric][fab-c] component library. - -In the coming months we will continue to refine the component implementations as we use the angular-react core and fabric libraries in 2 real-world consumer facing production applications. +- Incrementally rewrite an Angular application into React +(moving from atomic/leaf nodes upward into full features/pages until the entire app is re-written) ## Getting started -See our [Getting Started Guide][getting-started] demo -if you're building your first project with Angular-React. See a simple [StackBlitz Template](https://stackblitz.com/edit/angular-react) +# Roadmap & Support + +Both the `core` and `fabric` libraries are in production use in consumer-facing applications at Microsoft. That said, +we (the team that currently maintains this project) are a product team, and @angular-react is not our primary focus. +We maintain this because we need it and we share it with the wider community with the hope that it will prove useful to others. +Of course, we attempt to provide help when possible and we love getting pull requests for +improvements/enhancement/fixes from community members. But we don't have any specific plans for the future of this project. + +Please take this in to consideration when evaluating this project's suitability for your own needs. + +## Contributing + If you'd like to contribute, you must follow our [contributing guidelines](https://github.com/microsoft/angular-react/blob/master/CONTRIBUTING.md). You can look through the issues (which should be up-to-date on who is working on which features and which pieces are blocked) and make a comment. @@ -46,5 +57,5 @@ You can look through the issues (which should be up-to-date on who is working on [getting-started]: https://microsoft.github.io/angular-react/docs/getting-started [fab]: https://developer.microsoft.com/en-us/fabric [fab-c]: https://developer.microsoft.com/en-us/fabric#/components -[lib-core]: https://www.npmjs.com/package/@angular-react/core -[lib-fab]: https://www.npmjs.com/package/@angular-react/fabric +[lib-core]: ./libs/core/README.md +[lib-fab]: ./libs/fabric/README.md diff --git a/libs/core/README.md b/libs/core/README.md index fc5e031..2905cd7 100644 --- a/libs/core/README.md +++ b/libs/core/README.md @@ -1 +1,26 @@ -Please see README.md at repository root. + # @angular-react/core + +[![npm version](https://badge.fury.io/js/%40angular-react%2Fcore.svg)](https://www.npmjs.com/package/@angular-react/core) + +This library provides the core functionality for wrapping arbitrary React components so that they can be used inside +an Angular project. For an example of how it can be used, see [@angular-react/fabric](../fabric/README.md) which +uses this library to expose [office-ui-fabric-react](https://github.com/OfficeDev/office-ui-fabric-react) components +in Angular. + +For more info, see the [README](../../README.md) in this repository's root. + +#### Quick links + +[Documentation, quick start, and guides][ard] | +[Demo][ard-demo] | +[Contributing](https://github.com/microsoft/angular-react/blob/master/CONTRIBUTING.md) | +[StackBlitz Template](https://stackblitz.com/edit/angular-react) | + +[ard]: https://microsoft.github.io/angular-react +[ard-demo]: https://microsoft.github.io/angular-react/demo +[fab]: https://developer.microsoft.com/en-us/fabric + + +### Getting Started + +`npm install @angular-react/core` diff --git a/libs/fabric/README.md b/libs/fabric/README.md index 7658193..b79a7b7 100644 --- a/libs/fabric/README.md +++ b/libs/fabric/README.md @@ -2,87 +2,18 @@ [![npm version](https://badge.fury.io/js/%40angular-react%2Ffabric.svg)](https://www.npmjs.com/package/@angular-react/fabric) -Industry trends, organizational pressures, and other factors can lead to mandates regarding the use of component libraries or migration from one technology to another. In the case of [Office UI Fabric][fab], where its use is required, the client must be written in React (there is no Angular component library for the latest version). Rewrite from Angular to React may be cost-prohibitive or ill advised for other reasons. - -Use of Angular-React allows consuming any React elements, but specifically Office UI Fabric, within an Angular [2+] application. The library of wrappers for Office UI Fabric simplifies the use of these components with Angular. However, any React code can make use of the custom Angular-React renderer. - +This library builds upon [@angular-react/core](../core/README.md) to expose +[office-ui-fabric-react](https://github.com/OfficeDev/office-ui-fabric-react) components for consumption in an Angular +application. For more info, see the [README](../../README.md) at this repository's root. + #### Quick links -[@angular-react/core](https://www.npmjs.com/package/@angular-react/core) | [Documentation, quick start, and guides][ard] | [Demo][ard-demo] | [Contributing](https://github.com/microsoft/angular-react/blob/master/CONTRIBUTING.md) | [StackBlitz Template](https://stackblitz.com/edit/angular-react) | [Office Fabric](https://developer.microsoft.com/en-us/fabric) -### Typical Use Cases - -- Use React component libraries with Angular -- Incrementally rewrite an Angular application into React (moving from atomic/leaf nodes upward into full features/pages until the entire app is re-written) - -### Getting started - -See our [Getting Started Guide][getting-started] -if you're building your first project with Angular-React. - -If you'd like to contribute, you must follow our [contributing guidelines](https://github.com/angular/material2/blob/master/CONTRIBUTING.md). -You can look through the issues (which should be up-to-date on who is working on which features and which pieces are blocked) and make a comment. - -High level stuff planned for Q2 2018 (April - June): - -- Extend support for Fabric Buttons -- Extend support for Fabric Dialog -- Additional Fabric components TBD -- Table feature improvements -- Improve docs - -#### Available Fabric features - -| Feature | Notes | Docs | -| --------------- | --------------------------------------- | --------- | -| breadcrumb | Beta | [Docs][0] | -| button | Beta | [Docs][0] | -| callout | Beta | [Docs][0] | -| choice-group | Beta | [Docs][0] | -| combo-box | Beta | [Docs][0] | -| command-bar | Heavily tested, most scenarios covered. | [Docs][0] | -| contextual-menu | Beta | [Docs][0] | -| date-picker | Beta | [Docs][0] | -| dialog | Beta | [Docs][1] | -| divider | Beta | [Docs][0] | -| grouped-list | Beta | [Docs][0] | -| hover-card | Beta | [Docs][0] | -| icon | Beta | [Docs][0] | -| image | Beta | [Docs][0] | -| link | Beta | [Docs][0] | -| message-bar | Beta | [Docs][0] | -| modal | Beta | [Docs][0] | -| panel | Beta | [Docs][0] | -| persona | Beta | [Docs][0] | -| pickers | Beta | [Docs][0] | -| pivot | Beta | [Docs][0] | -| search-box | Beta | [Docs][0] | -| shimmer | Beta | [Docs][0] | -| slider | Beta | [Docs][0] | -| spinner | Beta | [Docs][0] | -| toggle | Beta | [Docs][0] | -| tooltip | Beta | [Docs][0] | - -#### In progress, planned, and non-planned Fabric features - -| Feature | Status | Docs | Issue | -| ---------- | ------------------------ | ---- | -------- | -| bottom-nav | Not started, not planned | - | [TBD][0] | - -[0]: https://microsoft.github.io/angular-react/docs/fabric -[1]: https://microsoft.github.io/angular-react/docs/fabric [ard]: https://microsoft.github.io/angular-react [ard-demo]: https://microsoft.github.io/angular-react/demo -[getting-started]: https://microsoft.github.io/angular-react/docs/getting-started [fab]: https://developer.microsoft.com/en-us/fabric - -## The goal of Angular React - -### What do we mean by "high-quality"? - -## Browser and screen reader support