JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 7503
  • Score
    100M100P100Q128185F
  • License MIT

Primitive React Interfaces Across Targets

Package Exports

  • react-primitives

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-primitives) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

react-primitives

Primitive React Interfaces Across Targets

Installation

npm i --save react-primitives

Usage

import React from 'react';
import { View, Text, Image, StyleSheet } from 'react-primitives';

class Foo extends React.Component {
  render() {
    return (
      <View style={styles.foo}>
        {this.props.children}
      </View>
    );
  }
}

const styles = StyleSheet.create({
  foo: {
    width: 100,
    height: 100,
    backgroundColor: '#ff00ff',
  },
});

What is this?

This library attempts to propose an ideal set of primitives around building React applications, regardless of Platform. In the future, this could be used as a shared interface among React and React Native components that don't use platform-specific APIs.

Importantly, this includes StyleSheet for declaring styles, as well as Animated for doing declarative Animations.

The exported interface thus far is:

  1. Animated: Pulled from the animated project.
  2. StyleSheet: Follows React Native's StyleSheet API.
  3. View: A base component for Layout.
  4. Text: A base component for Text rendering.
  5. Image: A base component for Image rendering.
  6. Touchable: A base component for interaction.

In the future, a TextInput component may also be added.

Props where props are due

This library was largely inspired from the work done by Nicolas Gallager and his great work on the react-native-web library. A few of the files in this repo are even copied directly from his project.