WMR
The tiny all-in-one development tool for modern web apps, in a single 2mb file with no dependencies.
All the features you'd expect and more, from development to production:
<script type=module>
import "packages"
from npm without installation
↻ Hot reloading for modules, Preact components and CSS
*.module.css
)
wmr build
)
wmr serve --http2
)
Quickstart (recommended)
Create a new project in seconds using create-wmr:
npm init wmr your-project-name
or
yarn create wmr your-project-name
💁 If you'd like ESLint to be set up for you, add--eslint
to the command. Note: this will use 150mb of disk space.
Check out the docs to learn more
Packages
Package | Description | Version |
---|---|---|
wmr | Tiny all-in-one development tool for modern web apps | |
create-wmr | Create a new WMR project in seconds | |
@wmrjs/directory-import | Import a directory's files as an Array | |
@wmrjs/nomodule | Generate legacy fallback bundles for older browsers | |
@wmrjs/service-worker | Bundle service workers | |
preact-iso | Optimal code-splitting, hydration and routing for Preact |
Contributing
git clone [email protected]:preactjs/wmr.git
cd wmr
yarn
# run the demo (no compile)
yarn demo serve
# build and serve the demo for prod
yarn demo build:prod && yarn demo serve:prod
# build the single-file CLI:
yarn workspace wmr build
Adding a changeset
Don't forget to also include a changeset, by running this command at the root of the project:
yarn changeset
This will take you through a process of selecting the changed packages, the version updates and a description of the change. Afterwards, changesets
, will generate a .md
file inside a .changeset
directory. Please commit that file as well.
After all that, you are good to go.