remount

WebJar for remount

License

License

MIT
Categories

Categories

Github Development Tools Version Controls
GroupId

GroupId

org.webjars.npm
ArtifactId

ArtifactId

github-com-rstacruz-remount
Last Version

Last Version

0.9.4
Release Date

Release Date

Type

Type

jar
Description

Description

remount
WebJar for remount
Project URL

Project URL

http://webjars.org
Source Code Management

Source Code Management

https://github.com/rstacruz/remount

Download github-com-rstacruz-remount

How to add to project

<!-- https://jarcasting.com/artifacts/org.webjars.npm/github-com-rstacruz-remount/ -->
<dependency>
    <groupId>org.webjars.npm</groupId>
    <artifactId>github-com-rstacruz-remount</artifactId>
    <version>0.9.4</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.npm/github-com-rstacruz-remount/
implementation 'org.webjars.npm:github-com-rstacruz-remount:0.9.4'
// https://jarcasting.com/artifacts/org.webjars.npm/github-com-rstacruz-remount/
implementation ("org.webjars.npm:github-com-rstacruz-remount:0.9.4")
'org.webjars.npm:github-com-rstacruz-remount:jar:0.9.4'
<dependency org="org.webjars.npm" name="github-com-rstacruz-remount" rev="0.9.4">
  <artifact name="github-com-rstacruz-remount" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.npm', module='github-com-rstacruz-remount', version='0.9.4')
)
libraryDependencies += "org.webjars.npm" % "github-com-rstacruz-remount" % "0.9.4"
[org.webjars.npm/github-com-rstacruz-remount "0.9.4"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

There are no modules declared in this project.


Remount

Travis CI   version   Bundle size

Use your React components anywhere in your
HTML as web components (custom elements).

Demo Docs
2kb gzip'd  ·  No dependencies  ·  IE support



Installation

Remount is available through the npm package repository.

  • Via yarn: yarn add remount
  • or npm: npm install remount

Usage

Let's start with any React component. Here's one:

const Greeter = ({ name }) => {
  return <div>Hello, {name}!</div>
}

Use define() to define custom elements. Let's define a <x-greeter> element:

import { define } from 'remount'

define({ 'x-greeter': Greeter })

You can now use it anywhere in your HTML! 💥

<x-greeter props-json='{"name":"John"}'></x-greeter>

API documentation →

Use cases

Some ideas on why you might want to consider Remount for your project:




Adding React to non-SPA apps
You can use React components on any page of a "regular" HTML site. Great for adding React to apps built on Rails or Phoenix.



💞 Interop with other frameworks
Remount lets you use your React components just like any other HTML element. This means you can use React with Vue, Angular, or any other DOM library/framework.

More features

  • JSON props (eg, <x-greeter props-json="{...}">) (docs)
  • Named attributes (eg, <x-greeter name="John">) (docs)
  • Uses Custom Elements API (when available)
  • Fallback to compatible API for other browers
  • Shadow DOM mode (when available)

Browser support

Remount supports all browsers that React support, which includes IE11. Legacy IE support (IE9) is available using polyfills.

Custom Elements API# ("Web Components") will be used if it's available (Chrome/67+), and will fallback to a compatible API otherwise.

Browser support docs →

Documentation

Thanks

remount © 2018, Rico Sta. Cruz. Released under the MIT License.
Authored and maintained by Rico Sta. Cruz with help from contributors (list).

ricostacruz.com  ·  GitHub @rstacruz  ·  Twitter @rstacruz


 

Versions

Version
0.9.4