mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-05-12 17:04:57 +00:00
102 lines
3.0 KiB
Markdown
102 lines
3.0 KiB
Markdown
|
|
# ADF Demo Application
|
|
|
|
Please note that this application is not an official product, but a testing and demo application to showcase complex interactions of ADF components.
|
|
|
|
## Installing
|
|
|
|
To correctly use this demo check that on your machine you have [Node](https://nodejs.org/en/) version 5.x.x or higher.
|
|
|
|
```sh
|
|
git clone https://github.com/Alfresco/alfresco-ng2-components.git
|
|
cd alfresco-ng2-components/demo-shell/
|
|
npm install
|
|
```
|
|
|
|
## Proxy settings and CORS
|
|
|
|
To simplify development and reduce the time to get the application started, we have the following Proxy settings:
|
|
|
|
- **http://localhost:3000/ecm** is mapped to **http://localhost:8080**
|
|
- **http://localhost:3000/bpm** is mapped to **http://localhost:9999**
|
|
|
|
The settings above address most common scenarios for running ACS on port 8080 and APS on port 9999 and allow you to skip the CORS configuration.
|
|
|
|
If you would like to change default proxy settings, please edit the `config/webpack.common.js` file.
|
|
|
|
## Application settings (server-side)
|
|
|
|
All server-side application settings are stored in the `app.config-dev.json` and `app.config-prod.json` files.
|
|
By default the configuration files have the content similar to the following one:
|
|
|
|
```json
|
|
{
|
|
"ecmHost": "http://localhost:3000/ecm",
|
|
"bpmHost": "http://localhost:3000/bpm",
|
|
"application": {
|
|
"name": "Alfresco"
|
|
}
|
|
}
|
|
```
|
|
|
|
You can add any additional settings to the application configuration file if needed.
|
|
|
|
Configuration files are picked based on environment settings (see `app.module.ts` for more details).
|
|
|
|
```ts
|
|
let appConfigFile = 'app.config-dev.json';
|
|
if (process.env.ENV === 'production') {
|
|
appConfigFile = 'app.config-prod.json';
|
|
}
|
|
|
|
@NgModule({
|
|
imports: [
|
|
...
|
|
CoreModule.forRoot({
|
|
appConfigFile: appConfigFile
|
|
}),
|
|
...
|
|
]
|
|
})
|
|
```
|
|
|
|
## Development build
|
|
|
|
```sh
|
|
npm start
|
|
```
|
|
|
|
This command compiles and starts the project in watch mode.
|
|
Browser will automatically reload upon changes.
|
|
Upon start you can navigate to `http://localhost:3000` with your preferred browser.
|
|
|
|
### Important notes
|
|
|
|
This script is recommended for development environment and not suited for headless servers and network access.
|
|
|
|
## Production build
|
|
|
|
```sh
|
|
npm run build
|
|
npm run start:dist
|
|
```
|
|
|
|
This command builds project in `production` mode.
|
|
All output is placed to `dist` folder and can be served to your preferred web server.
|
|
You should need no additional files outside the `dist` folder.
|
|
|
|
### Important notes
|
|
|
|
By default demo application is configured to use [wsrv](https://www.npmjs.com/package/wsrv) tool (lightweight web server)
|
|
to serve production build output. It will be running at `0.0.0.0` address with port `3000` and allow you to access your application
|
|
via network. However, you can use any web server of your choice in production.
|
|
|
|
## Development branch build
|
|
|
|
If you want to run the demo shell with the latest changes from the development branch, use the following command from the /script folder:
|
|
|
|
```sh
|
|
./npm-clean.sh
|
|
./start-linked.sh -install
|
|
```
|