The present repository contains the source code of the Cloudforet Web Console application and related packages such as Mirinae which is the design system of the web console.
The documentation for the Cloudforet Console is located under the docs directory.
To run the Web Console, you need follow the steps below.
The Cloudforet Web Console needs backend services to run.
You can see the details in the Cloudforet Quick Install Guide.
To run the Web Console, you need to set up the environment configuration file.
The configuration file is located in the apps/web/public/config
directory.
The default configuration file is apps/web/public/config/default.json
.
For your development environment, you can copy apps/web/public/config/development.sample.json
to apps/web/public/config/<environment>.json
and modify it.
- for development environment:
apps/web/public/config/development.json
- for production environment:
apps/web/public/config/production.json
The final configuration file will be generated by merging the default configuration file and the environment configuration file.
Name | Description | Required |
---|---|---|
CONSOLE_API | The endpoint of the Console API | O |
CONSOLE_API_V2 | The endpoint of the Console API V2 | O |
GTAG_ID | Google analytics Id | X |
GTM_ID | Google tag manager Id | X |
DOMAIN_NAME | Tenancy name | X |
DOMAIN_NAME_REF | In case of hostname , it will extract the domain name from the url.In case of config , it will take DOMAIN_NAME value at the config file. |
X |
ADMIN_DOMAIN | Root domain name | X |
AMCHARTS_LICENSE | License information of amcharts | X |
DEV | Development configuration. Refer to the [Development Configuration](###Development Configuration) section for details. | X |
ASSET_PATH | Asset endpoint information | X |
DOMAIN_IMAGE | The url of the image used for the SignIn page and GNB | X |
DOCS | Information for creating related document links. - Array of objects with labels and links - Support ejs template grammar - Provided variable: lang (User language code. e.g. "en") |
X |
CONTACT_LINK | Define the 'contact us' link on the SignIn page | X |
The Web Console internally uses amCharts(both 4 and 5 versions) for charts.
Before using the Console, look carefully at amCharts' license.
You can download and use all amCharts 4 and 5 products for free.
The only limitation of the free version is that a small amCharts logo will be displayed in the corner of your charts.
If you’d rather have your charts without any branding, please purchase a commercial license and configure it to your config file with the following format:
{
"AMCHARTS_LICENSE": {
"ENABLED": true,
"CHARTS": "",
"MAPS": "",
"TIMELINE": "",
"AM5_CHARTS": "",
"AM5_MAPS": ""
}
}
You can run the Web Console on your local with following commands.
npm install
npm run start:web
Configuration for DEV
in the config file.
Follow the example at apps/web/public/config/development.sample.json
.
Name | Description | Required |
---|---|---|
ENABLED | boolean(false). Whether to use dev config or not. | X |
MOCK | Mock mode configuration. Refer to the [Mock Configuration](####Mock Mode Configuration) section for details. | X |
AUTH | Authentication configuration. Refer to the [Authentication Configuration](####Auth Configuration) section for details. | X |
Configuration for DEV.MOCK
in the config file.
Name | Description | Required |
---|---|---|
ENABLED | boolean(false). Whether apply mock mode to api requests except for reflection apis. | X |
REFLECTION_V1 | boolean(false). Whether to apply mock mode to reflection api v1 or not. | X |
REFLECTION_V2 | boolean(false). Whether to apply mock mode to reflection api v2 or not. | X |
ENDPOINT_V1 | string(""). Mock server endpoint for console api v1. | X |
ENDPOINT_V2 | string(""). Mock server endpoint for console api v2. | X |
API_LIST_V1 | array of string([]). List of api v1 to enable mock mock mode. Refer to the [Rules for API_LIST](#####Rules for DEV.MOCK.API_LIST_V1 and DEV.MOCK.API_LIST_V2) section for details. | X |
API_LIST_V2 | List of api v2 to enable mock mock mode. Refer to the [Rules for API_LIST](#####Rules for DEV.MOCK.API_LIST_V1 and DEV.MOCK.API_LIST_V2) section for details. | X |
- If the api is not in the list, it will be called to the real server.
- If the api is in the list, it will be called to the mock server.
- The black list has higher priority. So if the api is in the list and the api is in the black list, it will be called to the real server.
e.g. [""] : All apis will be called to the mock server.
e.g. ["/identity/", "!/identity/domain/*"] : All apis in the /identity/*
will be called to the mock server except for /identity/domain/*
api.
Configuration for DEV.AUTH
in the config file.
Name | Description | Required |
---|---|---|
ENABLED | boolean(false). Whether to use auth config or not. | X |
SKIP_TOKEN_CHECK | Whether to skip checking token. | X |
API_KEY | API key which is used instead of access token. | X |
Add apps/web/playwright/local.env
file into project root.
USERNAME=testuser
PASSWORD=password
BASEURL=https://example.com/
BASEURL
is an optional variable. Default ishttp://localhost:8080
You can see the details in the Mirinae storybook.
You can see the description of the Mirinae in the Mirinae package.
TBU
See our OWNERS file.
This project is Apache 2.0 licensed.