Skip to content

Collection of vite plugins and emulator for webxdc

License

Notifications You must be signed in to change notification settings

webxdc/vite-plugins

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vite Plugins for Webxdc

npm package CI code style: prettier

Collection of Vite plugins and utilities for webxdc.

Features

  • 📱 Integrated webxdc.js mini-emulator to test your WebXDC right on the browser while developing.

  • 🐞 Integrated Eruda support to debug inside Delta Chat when building with NODE_ENV=debug.

  • 📦 Automatically generate your .xdc file.

  • 🦕 Support legacy/old browsers.

Getting Started

Add @webxdc/vite-plugins library as development dependency:

npm install --save-dev "@webxdc/vite-plugins"

Then update your Vite configuration as needed. See below for example Vite configurations.

Example configurations

Example vite.config.js files

Use recommended configuration

Use webxdcViteConfig() for a quick and easy default configuration.

// vite.config.ts

import { webxdcViteConfig } from "@webxdc/vite-plugins";
import { defineConfig } from "vite";

export default defineConfig(webxdcViteConfig());

Use plugins individually

Use the individual plugins for more control over the build.

// vite.config.ts

import {
  buildXDC,
  eruda,
  mockWebxdc,
  //  legacy, // might cause problems in existing projects
} from "@webxdc/vite-plugins";
import { defineConfig } from "vite";

export default defineConfig({
  plugins: [buildXDC(), eruda(), mockWebxdc()],
});

For a full example check the example folder.

Troubleshooting

if you get this error when using vite:

✘ [ERROR] Failed to resolve "@webxdc/vite-plugins". This package is ESM only but it was tried to load by `require`.

to fix it you need to set in your package.json:

{
  ...
  "type": "module",
  ...
}

About

Collection of vite plugins and emulator for webxdc

Resources

License

Stars

Watchers

Forks

Packages

No packages published