open-index/open-npm huggingface dataset:
npm package: @shop-local/shop-local-theme
Description: Shop Local theme.
Author: Kristian Matthews
Latest version: 0.0.3

# Shop Local Theme
Within this Theme you’ll find the following directories and files, grouping common resources and providing both compiled and minified distribution files, as well as raw source files.

## Project Structure
This project will consist of the following file structure:
```bash
├── gulpfile.js
├── package.json
├── README.md
├── docs/
├── less/
│   ├── bootstrap/
│   ├── custom/
│   ├── variables.less
│   └── toolkit.less
├── js/
│   ├── bootstrap/
│   └── custom/
├── fonts/
│   ├── bootstrap-entypo.eot
│   ├── bootstrap-entypo.svg
│   ├── bootstrap-entypo.ttf
│   ├── bootstrap-entypo.woff
│   └── bootstrap-entypo.woff2
└── dist/
 ├── toolkit.css
 ├── toolkit.css.map
 ├── toolkit.min.css
 ├── toolkit.min.css.map
 ├── toolkit.js
 └── toolkit.min.js
```

### Docs & Examples
The `docs` directory contains all the static resources for this Theme's docs and examples. To view, just open in your favourite browser!

```bash
$ open docs/index.html
```

### Gulpfile.js
We've also included a Gulp file for theme customisation. You’ll need to install node and Gulp before using our included gulpfile.js.

To install node visit [node][node-download].

To install gulp, run the following command:
```
$ npm install gulp -g
```

When you’re done, install the rest of the theme's dependencies:
```
$ npm install
```

From here on out, simply run `gulp` from your terminal and you're good to go!

* `gulp` - recompiles and minifies the theme assets into the `dist` directory.

## Support

If you experience any problems with the above, or if you think you've found a bug with the theme, please don't hesitate to reach out to shop-local@cozyglow.co.uk. Thanks!

[node-download]: https://nodejs.org/download
npm package: @shop-studio/shopware-admin-vue-standalone
Description: Standalone Shopware administration components for Vue
Latest version: 1.0.0

# Shopware Admin Vue Standalone

Use Shopware admin components outside of Shopware itself. Handy for developing 
Shopware cloud apps where the backend is integrated via iFrame.


## Will be replaced with

Use https://github.com/shopware/admin-component-library instead

## Installation

```shell
npm install shopware-admin-vue-standalone
```

## Usage

```javascript
import Vue from 'vue';
import VueI18n from 'vue-i18n';
import VueShopwareAdminStandalone from 'shopware-admin-vue-standalone';
import 'shopware-admin-vue-standalone/dist/shopware-admin-vue-standalone.css';

Vue.use(VueShopwareAdminStandalone);
```

Using Shopware global instance

```javascript
import { Shopware } from 'shopware-admin-vue-standalone';
```

### With vue-i18n

If you want to use the existing translations, you need to install vue-18n.
```javascript
import Vue from 'vue';
import VueI18n from 'vue-i18n';
import VueShopwareAdminStandalone from 'shopware-admin-vue-standalone';
import 'shopware-admin-vue-standalone/dist/shopware-admin-vue-standalone.css';
import adminDe from 'shopware-admin-vue-standalone/dist/snippet/de-DE.json';
import adminEn from 'shopware-admin-vue-standalone/dist/snippet/en-GB.json';

Vue.use(VueI18n);
  
const i18 = new VueI18n({
    locale: 'en',
    fallbackLocale: 'en',
    messages: {
        de: adminDe,
        en: adminEn
    }
});

Vue.use(VueShopwareAdminStandalone, {
    translate: {
        t: (key, values) => i18n.t(key, values),
        tc: (key, choice, values) => i18n.tc(key, choice, values),
        te: (key, locale) => i18n.te(key, locale),
    }
});
```

## Contributing
This project is a first prototype that provides the admin components of Shopware 6.4.1.2.

To provide more version in the future and also remove bugs, any support is welcome.
npm package: @shop25/banners-client
Description: ```bash npm i @shop25/promotion-client
Latest version: 1.1.0

## Usage

```bash
npm i @shop25/promotion-client

import { PromotionClient } from "@shop25/promotions-client"

# Code
const element = document.querySelector<HTMLDivElement>("#my-banner-element")!;

const client = new PromotionClient({
  host: "http://localhost:5554",
  lang: "ru",
  location: "header",
  project: "vodnik",
});

client.mount(element);
```
npm package: @shop25/conversations
Description: ```js import { createWidget } from "@shop25/conversations";
Latest version: 1.3.3

```js
import { createWidget } from "@shop25/conversations";

  const app = document.querySelector("#app");

  if (!app) {
    return;
  }

  const { client, destroy } = createWidget({
    host: "https://conversations.s25.dev",
    mountElement: app as HTMLElement,
    orderName: "YP23648-1",
    customerId: 1,
    projectSlug: "yoshiparts.com",
  });

  client.on("mounted", () => console.log("mounted"));
  client.on("customerSelected", (customerId) => console.log(customerId));
  client.on("orderSelected", (payload) => console.log(payload));

  setTimeout(() => {
    client.emit("orderSelected", "YP23648-1");
  }, 2000);


  destroy()

```
npm package: @shop25/cp-auth
Description: auth in widgets
Latest version: 0.0.15

## Install

```bash
npm i @shop25/cp-auth
```

## Usage

```bash
import { getAuthService } from '@shop25/cp-auth'

const service = getAuthService('https://base-url.com');

service.getAuthToken();
service.getUser();
service.logout();

# logout пока не работает (ошибка csrf).
```
npm package: @shop25/cp-ui
Description: Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
Latest version: 2.0.0

# create-svelte

Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm init svelte

# create a new project in my-app
npm init svelte my-app
```

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

## Building

To create a production version of your app:

```bash
npm run build
```

You can preview the production build with `npm run preview`.

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.
npm package: @shop25/customer-form
Description: Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
Latest version: 2.5.0

# create-svelte

Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).

Read more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging).

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm create svelte@latest

# create a new project in my-app
npm create svelte@latest my-app
```

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

Everything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app.

## Building

To build your library:

```bash
npm run package
```

To create a production version of your showcase app:

```bash
npm run build
```

You can preview the production build with `npm run preview`.

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.

## Publishing

Go into the `package.json` and give your package the desired name through the `"name"` option. Also consider adding a `"license"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)).

To publish your library to [npm](https://www.npmjs.com):

```bash
npm publish
```
npm package: @shop25/customer-service
Description: ```bash npm i @shop25/customer-service ```
Latest version: 1.0.2

## Install

```bash
npm i @shop25/customer-service
```

## Usage

```bash
import { getCustomerService } from '@shop25/customer-service'

const service = getCustomerService(baseUrl, project)

# доступные методы
searchCustomers
getCustomerById
getCustomerByOrderName
getOrdersByCustomerId
```
npm package: @shop25/date-picker
Description: Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
Latest version: 2.6.0

# create-svelte

Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).

Read more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging).

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm create svelte@latest

# create a new project in my-app
npm create svelte@latest my-app
```

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

Everything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app.

## Building

To build your library:

```bash
npm run package
```

To create a production version of your showcase app:

```bash
npm run build
```

You can preview the production build with `npm run preview`.

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.

## Publishing

Go into the `package.json` and give your package the desired name through the `"name"` option. Also consider adding a `"license"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)).

To publish your library to [npm](https://www.npmjs.com):

```bash
npm publish
```
npm package: @shop25/file-veiwer
Description: Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
Latest version: 2.1.0

# create-svelte

Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).

Read more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging).

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm create svelte@latest

# create a new project in my-app
npm create svelte@latest my-app
```

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

Everything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app.

## Building

To build your library:

```bash
npm run package
```

To create a production version of your showcase app:

```bash
npm run build
```

You can preview the production build with `npm run preview`.

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.

## Publishing

Go into the `package.json` and give your package the desired name through the `"name"` option. Also consider adding a `"license"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)).

To publish your library to [npm](https://www.npmjs.com):

```bash
npm publish
```
npm package: @shop25/file-viewer
Description: Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
Latest version: 2.4.0

# create-svelte

Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).

Read more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging).

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm create svelte@latest

# create a new project in my-app
npm create svelte@latest my-app
```

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

Everything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app.

## Building

To build your library:

```bash
npm run package
```

To create a production version of your showcase app:

```bash
npm run build
```

You can preview the production build with `npm run preview`.

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.

## Publishing

Go into the `package.json` and give your package the desired name through the `"name"` option. Also consider adding a `"license"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)).

To publish your library to [npm](https://www.npmjs.com):

```bash
npm publish
```
npm package: @shop25/iframe
Description: ```bash npm i @shop25/iframe ```
Latest version: 1.2.0

# Install

```bash
npm i @shop25/iframe
```

## Usage

### Basic Iframe Creation

```typescript
import { VisibleIframe, InvisibleIframe } from '@shop25/iframe';

const mountPoint = document.querySelector('.js-mount');

const iframe = new VisibleIframe({
    mountElement: mountPoint,
    src: `http://localhost`,
});

iframe.delete() # void;

iframe.on('windowOrCustomEventName', (event: Event | CustomEvent) => {
    console.log(event);
})

iframe.getWindow() # Window;
```

### Cross-Window Communication with Event Buffering

The library automatically buffers events sent before the iframe is fully loaded, ensuring no messages are lost.

```typescript
import { WindowClient } from '@shop25/iframe';

// Define your event interfaces
interface ParentToIframeEvents {
  navigate: (url: string) => void;
  updateData: (data: any) => void;
}

interface IframeToParentEvents {
  ready: () => void;
  dataReceived: (success: boolean) => void;
}

// Parent window code
const iframeElement = document.querySelector('iframe');
const client = new WindowClient<ParentToIframeEvents, IframeToParentEvents>(iframeElement);

// Events sent before iframe loads are automatically buffered
client.emit('navigate', '/dashboard');
client.emit('updateData', { userId: 123 });

// Listen for events from iframe
client.on('ready', () => {
  console.log('Iframe is ready!');
});

// Cleanup when done
client.destroy();
```

```typescript
// Inside iframe code
import { IframeClient } from '@shop25/iframe';

const client = new IframeClient<IframeToParentEvents, ParentToIframeEvents>();

// Listen for events from parent
client.on('navigate', (url) => {
  console.log('Navigate to:', url);
});

client.on('updateData', (data) => {
  console.log('Received data:', data);
  client.emit('dataReceived', true);
});

// Notify parent that iframe is ready
client.emit('ready');
```

### Event Buffering Details

- Events are automatically buffered until the iframe's `load` event fires
- Once loaded, buffered events are sent in order
- Subsequent events are sent immediately
- No configuration needed - buffering is automatic
- Call `client.destroy()` to cleanup listeners and clear buffers
npm package: @shop25/leaflet-map
Description: Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
Latest version: 2.1.0

# create-svelte

Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).

Read more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging).

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm create svelte@latest

# create a new project in my-app
npm create svelte@latest my-app
```

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

Everything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app.

## Building

To build your library:

```bash
npm run package
```

To create a production version of your showcase app:

```bash
npm run build
```

You can preview the production build with `npm run preview`.

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.

## Publishing

Go into the `package.json` and give your package the desired name through the `"name"` option. Also consider adding a `"license"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)).

To publish your library to [npm](https://www.npmjs.com):

```bash
npm publish
```
npm package: @shop25/managers-panel
Description: Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
Latest version: 2.11.0

# create-svelte

Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).

Read more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging).

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm create svelte@latest

# create a new project in my-app
npm create svelte@latest my-app
```

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

Everything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app.

## Building

To build your library:

```bash
npm run package
```

To create a production version of your showcase app:

```bash
npm run build
```

You can preview the production build with `npm run preview`.

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.

## Publishing

Go into the `package.json` and give your package the desired name through the `"name"` option. Also consider adding a `"license"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)).

To publish your library to [npm](https://www.npmjs.com):

```bash
npm publish
```
npm package: @shop25/managers-service
Description: Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte);
Latest version: 1.0.2

# create-svelte

Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte);

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm init svelte@next

# create a new project in my-app
npm init svelte@next my-app
```

> Note: the `@next` is temporary

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

## Building

Before creating a production version of your app, install an [adapter](https://kit.svelte.dev/docs#adapters) for your target environment. Then:

```bash
npm run build
```

> You can preview the built app with `npm run preview`, regardless of whether you installed an adapter. This should _not_ be used to serve your app in production.
npm package: @shop25/messages-iframe
Description: ```bash npm i @shop25/messages-iframe ```
Latest version: 0.0.7

## Install

```bash
npm i @shop25/messages-iframe
```

## Usage

```bash
import { createWidget } '@shop25/messages-iframe'


const mountElement = document.querySelector('#widget');

const widget = createWidget({
    mountElement,
    host: 'https://...',
    projectSlug: 'partsbypost',
    orderName: 'store-24', # опционально, если инициализируем на странице заказа
})

widget.onSetCount((count) => console.log(count))
widget.setOrder('store-24') # когда виджен уже загружен
widget.delete()
```
npm package: @shop25/notifications
Description: Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte);
Latest version: 0.0.1

# create-svelte

Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte);

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm init svelte@next

# create a new project in my-app
npm init svelte@next my-app
```

> Note: the `@next` is temporary

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

## Building

Before creating a production version of your app, install an [adapter](https://kit.svelte.dev/docs#adapters) for your target environment. Then:

```bash
npm run build
```

> You can preview the built app with `npm run preview`, regardless of whether you installed an adapter. This should _not_ be used to serve your app in production.
npm package: @shop25/notifications-iframe
Description: ```bash npm i @shop25/notifications-iframe ```
Latest version: 1.0.6

## Install

```bash
npm i @shop25/notifications-iframe
```

## Usage

```bash
import { NotificationClient } from '@shop25/notifications-iframe'

const mainWidgetTarget = document.querySelector("body") as HTMLElement;
const popupsMoutPoint = document.querySelector("#app") as HTMLElement;

const client = new NotificationClient({
    host: "https://widget-notifications.s25.work",
    project: "vodnik",
});

const mainWidget = client.createMainWidget();
const popupWidget = client.createPopupWidget();

async function init() {
    await mainWidget.mount(mainWidgetTarget);
    await popupWidget.mount(popupsMoutPoint);

    popupWidget.onChangeTotalCount((totalCount: number) => {
        console.log({ totalCount });
    });

    # if need
    mainWidget.destroy();
    popupWidget.destroy();
}

init();
```
npm package: @shop25/shop-ui
Description: Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte);
Latest version: 0.0.35

# create-svelte

Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte);

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm init svelte@next

# create a new project in my-app
npm init svelte@next my-app
```

> Note: the `@next` is temporary

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

## Building

Before creating a production version of your app, install an [adapter](https://kit.svelte.dev/docs#adapters) for your target environment. Then:

```bash
npm run build
```

> You can preview the built app with `npm run preview`, regardless of whether you installed an adapter. This should _not_ be used to serve your app in production.
npm package: @shop25/taskbook-iframe
Description: ```bash npm i @shop25/taskbook-iframe ```
Latest version: 0.0.15

## Install

```bash
npm i @shop25/taskbook-iframe
```

## Usage

```bash
import { createWidget } '@shop25/taskbook-iframe'


const mountElement = document.querySelector('#widget');

const widget = createWidget({
    mountElement,
    host: 'https://...',
    projectSlug: 'partsbypost'
})

widget.onSetCount((count) => console.log(count))
widget.setOrder('store-24') # когда виджен уже загружен
widget.delete()
```
npm package: @shop25/tracking-iframe
Description: ```bash npm i @shop25/tracking-iframe ```
Latest version: 0.0.6

## Install

```bash
npm i @shop25/tracking-iframe
```

## Usage

```bash
import { createWidget } '@shop25/tracking-iframe'


const mountElement = document.querySelector('#widget');

const iframe = createWidget({
    mountElement,
    host: 'https://traking....',
    service: 'my-site.ru'
    trackNumber: 'code'
    carrierUid: 'uid'
})

iframe.delete()
```
npm package: @shop25/ui
Description: Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
Latest version: 4.55.0

# create-svelte

Everything you need to build a Svelte project, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm create svelte@latest

# create a new project in my-app
npm create svelte@latest my-app
```

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

## Building

To create a production version of your app:

```bash
npm run build
```

You can preview the production build with `npm run preview`.

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.
npm package: @shop25/widget
Description: Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).
Latest version: 2.4.0

# create-svelte

Everything you need to build a Svelte library, powered by [`create-svelte`](https://github.com/sveltejs/kit/tree/master/packages/create-svelte).

Read more about creating a library [in the docs](https://kit.svelte.dev/docs/packaging).

## Creating a project

If you're seeing this, you've probably already done this step. Congrats!

```bash
# create a new project in the current directory
npm create svelte@latest

# create a new project in my-app
npm create svelte@latest my-app
```

## Developing

Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server:

```bash
npm run dev

# or start the server and open the app in a new browser tab
npm run dev -- --open
```

Everything inside `src/lib` is part of your library, everything inside `src/routes` can be used as a showcase or preview app.

## Building

To build your library:

```bash
npm run package
```

To create a production version of your showcase app:

```bash
npm run build
```

You can preview the production build with `npm run preview`.

> To deploy your app, you may need to install an [adapter](https://kit.svelte.dev/docs/adapters) for your target environment.

## Publishing

Go into the `package.json` and give your package the desired name through the `"name"` option. Also consider adding a `"license"` field and point it to a `LICENSE` file which you can create from a template (one popular option is the [MIT license](https://opensource.org/license/mit/)).

To publish your library to [npm](https://www.npmjs.com):

```bash
npm publish
```