Psst — looking for an app template? Go here --> sp-sveltejs/template
A base for building shareable Svelte components. Clone it with degit:
npx degit sp-sveltejs/component-template my-new-component
cd my-new-component
npm install # or yarn
Your component's source code lives in src/Component.svelte
.
You can create a package that exports multiple components by adding them to the src
directory and editing src/index.ts
to reexport them as named exports.
TODO
- some firm opinions about the best way to test components
- update
degit
so that it automates some of the setup work
- Run
npm init
(oryarn init
) - Replace this README with your own
Your package.json has a "svelte"
field pointing to src/index.js
, which allows Svelte apps to import the source code directly, if they are using a bundler plugin like rollup-plugin-svelte or svelte-loader (where resolve.mainFields
in your webpack config includes "svelte"
). This is recommended.
For everyone else, npm run build
will bundle your component's source code into a plain JavaScript module (dist/index.mjs
) and a UMD script (dist/index.js
). This will happen automatically when you publish your component to npm, courtesy of the prepublishOnly
hook in package.json.
Use npm link to test your built component in any javascript app, i.e., SPFx.
cd my-new-component
npm link
cd my-spfx-project
npm link my-new-component