UNPKG

@silexlabs/silex-plugin-starter

Version:
96 lines (67 loc) 2.49 kB
# Silex Plugin Starter Starter template for writing Silex plugins. Supports server and/or client side plugins in JavaScript and TypeScript. Start creating your plugin from `src/main.js` or `src/main.ts`, [read the Development section](#development) ## TODO for your plugin Here is a list of things to do before distributing your plugin to Silex users * [ ] Replace `silex-plugin-starter` in all files with your plugin name * [ ] Choose Javascript or TypeScript: edit rollup configs and just change the input from `main.ts` to `main.js` * [ ] Choose client side and or server side: edit `build` script in `package.json`, add/remove `yarn run build:client` or `yarn run builde:server` * [ ] Tests: when writing tests for the client, add a "doc block" with `@jest-environment jsdom` * [ ] Automate npm publish with github actions: you need to set the package `name` in `package.json` and the action secret `NPM_SECRET` in github * [ ] Remove this "TODO" section and fill in the blanks in the rest of the README * [ ] Show some gif/demo if possible * [ ] Run `yarn test` and `yarn run lint:fix`, create a version with `npm version patch` then push to github with `git push oringin main --follow-tags` which will **publish to npm thanks to github actions** > **Add a gif or a live demo of your plugin here** ## Installation This is how to use the silex-plugin-starter plugin in your Silex instance or JS project Add as a dependency ```bash $ yarn add --save @silexlabs/silex-plugin-starter ``` Add to Silex config (client or server) ```js import plugin from '@silexlabs/silex-plugin-starter' // Or import YourPlugin from '../path/to/silex-plugin-starter' // Or import YourPlugin from 'http://unpkg.com/your-plugin' export default function(config, options) { config.addPlugin(plugin, { // ... plugin config ... }) }; ``` ## Options |Option|Description|Default| |-|-|- |`option1`|Description option|`default value`| ## Development Clone the repository ```sh $ git clone https://github.com/silexlabs/silex-plugin-starter.git $ cd silex-plugin-starter ``` Install dependencies ```sh $ yarn install ``` Build the project ```sh $ yarn run build ``` Build and watch for changes ```sh $ yarn run build:watch ``` Start the dev server on port 3000 with watch and debug ```sh $ yarn run dev ``` Publish a new version ```sh $ yarn test $ yarn run lint:fix $ git commit -am "new feature" $ npm version patch $ git push origin main --follow-tags ``` ## License AGPL-3.0