Skip to content

Latest commit

 

History

History
90 lines (63 loc) · 2.51 KB

README.md

File metadata and controls

90 lines (63 loc) · 2.51 KB

Silex Plugin Starter

A good place to start writing a Silex plugin. It supports server and/or client side plugins, in Javascript and TypeScript. Check Silex developer docs if you need help or join the discussions in the forum

Start creating your plugin from src/main.js or src/main.ts, read the Development section

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 npm run build:client or npm 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 npm test and npm 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

$ npm i --save @silexlabs/silex-plugin-starter

Add to Silex config (client or server)

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

$ git clone https://github.com/silexlabs/silex-plugin-starter.git
$ cd silex-plugin-starter

Install dependencies

$ npm i

Build and watch for changes

$ npm run build:watch

Start the dev server on port 3000 with watch and debug

$ npm run dev

Publish a new version

$ npm test
$ npm run lint:fix
$ git commit -am "new feature"
$ npm version patch
$ git push origin main --follow-tags

License

MIT