common
Folders and files
Name | Name | Last commit date | ||
---|---|---|---|---|
parent directory.. | ||||
# /* @echo name */ This project is bootstrapped by [aurelia/new](https://github.com/aurelia/new). ## Start dev web server npm start // @if app ## Build the app in production mode npm run build // @if webpack || parcel It builds all files to dist folder. To deploy to production server, copy all the `dist/*` files to production root folder. For example ``` dist/index.html dist/foo.12345.js ``` Copy to production root folder ``` root_folder/index.html root_folder/foo.12345.js ``` // @endif // @if dumber It builds `dist/*bundle.[hash].js`, updates index.html with hashed js bundle file name. To deploy to production server, copy over both the generated `index.html` and all the `dist/*` files. For example ``` index.html dist/entry.bundle.12345.js ``` Copy to production root folder ``` root_folder/index.html root_folder/dist/entry.bundle.12345.js ``` // @endif // @endif // @if plugin Note this plugin project comes with a dev-app. The above command starts the dev app in `dev-app/` folder. The plugin source code is in `src/` folder. ## Build the plugin in production modern npm run build It builds plugin into `dist/index.js` file. Note when you do `npm publish` or `npm pack` to prepare the plugin package, it automatically run the above build command by the `prepare` script defined in your package.json `"scripts"` section. ## Consume the plugin If your plugin is published to npm or a private registry, just install the plugin package.json npm install /* @echo name */ If you want to directly use plugin's git repo. npm install git@github.com:username//* @echo name */.git or npm install https://some.git.server/username//* @echo name */.git If you want to install from local folder, don't do "npm install ../local//* @echo name *//" as the folder's `node_modules/` will cause webpack to complain about duplicated dependency like "@aurelia/metadata". In this plugin's folder, do npm pack This will pack the plugin into /* @echo name */ In an application project's main file. ```js import * as myPlugin from '/* @echo name */'; Aurelia // Load all exports from the plugin .register(myPlugin) .app(MyApp) .start(); ``` // @endif // @if !no-unit-tests ## Unit Tests npm run test Run unit tests in watch mode. npm run test:watch // @endif