mirror of
https://github.com/sveltejs/svelte.git
synced 2024-11-25 00:51:01 +01:00
2.6 KiB
2.6 KiB
Svelte
The magical disappearing UI framework.
This is the Svelte compiler, which is primarily intended for authors of tooling that integrates Svelte with different build systems. If you just want to write Svelte components and use them in your app, you probably want one of those tools:
- svelte-cli – Command line interface for compiling components
- rollup-plugin-svelte – Rollup plugin
- sveltify - Browserify transform
- gulp-svelte - gulp plugin
- metalsmith-svelte - Metalsmith plugin
- system-svelte – System.js loader
- svelte-loader – Webpack loader
- meteor-svelte – Meteor build plugin
- More to come!
API
import * as svelte from 'svelte';
const { code, map } = svelte.compile( source, {
// the target module format – defaults to 'es' (ES2015 modules), can
// also be 'amd', 'cjs', 'umd' or 'iife'
format: 'umd',
// the filename of the source file, used in e.g. generating sourcemaps
filename: 'MyComponent.html',
// the name of the constructor. Required for 'iife' and 'umd' output,
// but otherwise mostly useful for debugging. Defaults to 'SvelteComponent'
name: 'MyComponent',
// for 'amd' and 'umd' output, you can optionally specify an AMD module ID
amd: {
id: 'my-component'
},
// custom error/warning handlers. By default, errors will throw, and
// warnings will be printed to the console. Where applicable, the
// error/warning object will have `pos`, `loc` and `frame` properties
onerror: err => {
console.error( err.message );
},
onwarn: warning => {
console.warn( warning.message );
}
});
Example/starter repos
- charpeni/svelte-example - Some Svelte examples with configured Rollup, Babel, ESLint, directives, Two-Way binding, and nested components
- EmilTholin/svelte-test
- lukechinworth/codenames – example integration with Redux