Skip to content

Commit

Permalink
Improve Luigi readme files (SAP#277)
Browse files Browse the repository at this point in the history
* Improve Luigi readme files
  • Loading branch information
bszwarc authored Dec 13, 2018
1 parent 15977ad commit c8e0b11
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 30 deletions.
31 changes: 12 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,44 +2,37 @@

## Overview

Luigi is a micro front-end JavaScript framework that enables the creation of an administrative user interface which is driven by local and distributed views. Luigi enables the communication between a web application and content-views which the application contains such as routing, navigation, authorization, and user experience elements.
Luigi is a micro front-end JavaScript framework that enables you to create an administrative user interface driven by local and distributed views. Luigi allows a web application to communicate with the micro front-ends which the application contains. To make sure the communication runs smoothly, you can easily configure the settings such as routing, navigation, authorization, and user experience elements.

Luigi consists of two components: **Luigi core** and **Luigi client**.

**Luigi core** is installed in the web application while **Luigi client** is installed in the application(s) running in the content-view. Both of these components interact with one another to leverage communication between both the web application and the content-view, without compromising the security principles behind the iframe pattern.
Luigi consists of Luigi Core and Luigi Client libraries. They interact with each other to leverage communication between the core application and the micro front-end, without compromising the security principles behind the iframe pattern.

## Installation

### Luigi core
Follow the instructions in [this](docs/application-setup.md) document to get started with Luigi. Read [this](client/README.md) document to install the Luigi Client.


Luigi core is the part of Luigi that enables navigation, security and routing. To get started with Luigi, read [this](docs/application-setup.md) document.
## Usage

- [Application setup](docs/application-setup.md) shows you the first steps to prepare your application for development.
- [Navigation configuration](docs/navigation-configuration.md) shows you how to configure navigation.
- [Authorization configuration](docs/authorization-configuration.md) shows you how to secure Luigi.
- [General settings](docs/general-settings.md) provides you with configuration parameters.
### Examples

### Luigi client
View the [application examples](core/examples) to explore Luigi's features.

Luigi client enables integration of Luigi in views. You can easily configure the lifecycle and links of the client, as well as customize the appearance of your navigation.
### Documentation

- [Lifecycle](docs/luigi-client-api.md#lifecycle) gives you details on the life cycle of listeners, navigation nodes and event data.
- [Link Manager](docs/luigi-client-api.md#linkmanager) allows you to navigate to a specific route.
- [UX Manager](docs/luigi-client-api.md#uxmanager) helps you to manage the appearance in Luigi.
For details, see [Luigi documentation](docs/README.md).

See [this](https://github.com/kyma-project/luigi/blob/master/client/README.md) document to learn more about the Luigi client.

View [example applications](/core/examples).
## Development

### Code formatting for contributors

All projects in the repository use [Prettier](https://prettier.io) to format source code. Run the `npm install` command in the root folder to install it along with [husky](https://github.com/typicode/husky), the Git hooks manager. Both tools ensure proper codebase formatting before committing it.

## Tests
### Tests

To ensure that existing features still work as expected after your changes, run UI tests from the [Angular example application](/core/examples/luigi-sample-angular). Before running the tests, start the sample application by using the `npm start` command in the application folder.

When the application is ready:

- Run `npm run e2e:run` in the `core/examples/luigi-sample-angular` folder to start tests in the headless browser.
- Run `npm run e2e:open` in the `core/examples/luigi-sample-angular` folder to start tests in the interactive mode.
- Run `npm run e2e:open` in the `core/examples/luigi-sample-angular` folder to start tests in the interactive mode.
5 changes: 3 additions & 2 deletions client/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,12 @@ You can see the Luigi Client in action by running the [Angular example applicati

## Usage

Use additional instructions to work with Luigi Client.
This section contains additional instructions and guidelines you can use to work with Luigi Client.


### Generate documentation
Validate and generate documentation using npm
Validate and generate documentation using npm:

```bash
npm install
npm run docu
Expand Down
17 changes: 10 additions & 7 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,21 @@
# Documentation
# Luigi Documentation

## Getting started
Read the documentation to explore the features of Luigi Core and Luigi Client.

This directory contains the following documents that relate to the project:
## Luigi Core

**Luigi Core**
Set up and configure the main application.

* [Application setup](application-setup.md) shows you the first steps to prepare your application for development.
* [Navigation configuration](navigation-configuration.md) shows you how to configure navigation in Luigi.
* [Authorization configuration](authorization-configuration.md) guides you through the configuration to secure Luigi.
* [General settings](general-settings.md) provides you with additional configuration parameters for Luigi.

**Luigi Client**
## Luigi Client

* [Lifecycle](luigi-client-api.md#lifecycle) gives you details on the life cycle of listeners, navigation nodes and event data.

Use the Luigi Client API documentation to learn more about the functions and parameters you can use to communicate with the core application to define lifecycle, links, and the appearance of the application.

* [Lifecycle](luigi-client-api.md#lifecycle) gives you details on the lifecycle of listeners, navigation nodes, and Event data.
* [Link Manager](luigi-client-api.md#linkmanager) allows you to navigate to a specific route.
* [UX Manager](luigi-client-api.md#uxmanager) helps you to manage the appearance in Luigi.
* [UX Manager](luigi-client-api.md#uxmanager) helps you to manage the appearance features in Luigi, such as the behavior of backdrop or loading indictors.
2 changes: 1 addition & 1 deletion docs/authorization-configuration.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Authorization Configuration
# Authorization configuration

Luigi provides OpenID Connect and OAuth2 Implicit Grant authorization out of the box. The **use** key defines the active authorization provider and the **disableAutoLogin** key allows you to disable the automatic login flow that is provided by default.

Expand Down
2 changes: 1 addition & 1 deletion docs/general-settings.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# General Settings
# General settings

The configuration file also contains a section called **Settings** in which you can configure additional Luigi options.

Expand Down

0 comments on commit c8e0b11

Please sign in to comment.