/core

Light Dynamic UI Engine for Native and Web with a React Like API

Primary LanguageJavaMIT LicenseMIT

syr js - development version

syr

syr

minimally obtrusive reactisque view engine, aimed at native developers

Build Status

Build dynamic UIs for Native Platforms, with less than 200kb of extra libraries!

The goal to provide, Native SDK developers the benefits of the React Native API, with a much smaller footprint and reduced complexity.

Easily package Syr with your Native SDKs and Apps and drive dynamic updatable experiences with JavaScript.

Syr uses a React like API with a custom JS API bridge, that allows an SDK developer to bundle an updatable experience through Apple's iTunes terms.

help

gitter: https://gitter.im/syrjs/general

otherwise open an issue.

breaking change

syr moved to scoped packages. Please move to @syr/core.

Read the Docs

https://syr.js.org/api/

Getting Started

Install

npm i @syr/core

Roadmap

Even (starting with 2) releases are stable, Odd (starting with 1) releases are development builds. Every fourth (starting with 4.0.0) release is an LTS and will be branched as well as tagged.

  • LTS Currently means support beyond 2 Stable Releases. Support for 4.0.0 will be sunset when 8.0.0 is released, as 6.0.0 will become the lowest LTS version.

How contributions will be scheduled for intake starting with version 2.0.0.

Major

  • Any Native Code Change in the Core Library Results in an Immediate Major Change.
  • Any Guest deprecations must force a major change.

Minor

  • Any Guest System Rendering Changes.
  • If new dependent features are changed, which causes instability it must be promoted to Major release schedule.

Patch

  • Corrects undesired consistent behavior.
  • Adds new features without collision

https://github.com/syrjs/syr/milestones

Development Example

native_checkout_syr

Running the local Sample

First steps:

  • Clone the repo
  • npm install
  • npm run serve

To run on iOS simulator:

To run on Android emulator, using Gradle:

  • cd android && ./gradlew installDebug
  • run the app on the Android emulator

To run the calculator sample, make the following change to webpack.config.js before npm run serve:

diff --git a/webpack.config.js b/webpack.config.js
index 7361b24..33b9561 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -7,3 +7,3 @@ module.exports = {
   entry: {
-    app: ['./samples/example.js']
+    app: ['./samples/calculator.js']
   },

Contributors

dmikey MSiddharthReddy pvenkatakrishnan gabrielcsapo edwinwebb Sherman-Chen
dmikey MSiddharthReddy pvenkatakrishnan gabrielcsapo edwinwebb Sherman-Chen
syr