The magical disappearing UI framework
JavaScript HTML CSS


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:


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