* Support arm64 & ndk18 on Android platform.
* Android JSC Runtime refactor.
* Android & iOS multi-size screen & rotation support.
* Background JS thread on iOS.
* Log module on iOS and Android to support redirection
* Synchronous call of component methods.
* Unified C++ log system of WeexCore.

* Animation module crash on iOS.
* RTL layout crash on iOS.
* NSTimer not removed by WXTimerModule on iOS.
* Occasionally showing placeholder instead of main image on iOS.
* Animation end progress error on iOS.
* Some NPE issues on Android.
* Closing fd multiple times on Android IPC.
* box-shadow crash protection on Android.
* GPU texture size overflow protection on Android.
* Weexcore.so loading failure problem on Android.

* Update license declaration. 486648769
* Update changelog of 0.26.0 482db5b89
* Update to ndk 18 b03e65fa6
* [Android] update jsfm to 0.27 ebb943a16
* Update buildscript d7023062c
* Update to 0.25 6539ceb5f
* [Android] update jsc.so 8cfb154e8
* Update Android Build Script and License. 8d0f52a77
* Update license 718dc0b8d
* Fix License issue for javaScriptCore (#2498) dcea49467
* [jsruntime] add runtime code (a/b) and build success d6dee7cd1
* Chang Apache release script to support NDK 18 4d17cc654
* fix x86 platform (#2626) 0b79c7679
* [iOS] fix bundleType (#2606) 7a8201ca3
* [Android] fix rootView size check && performance state fix (#2607) c36097b57
* Update license format tool (#2617) e15d07530
* Add git ignore (#2614) 9e2b83c02
* support load external shared Library from WXApplication (#2612) 05d42ae08
* [data-render] ForceRefresh before RefreshFinish in eagle (#2609) c9ced8e89
* Copy shared library from armeabi-v7a into armeabi (#2598) cdf772f44
* [Android] fix whiteScreen check for 1pixel height/width (#2595) a0d26fc57
* Protect crash of list update inserting header. (#2594) 7a20e9b6f
* [android] support rotateZ (#2593) 44e9592a7
*  [android] Fix String output error (#2515) 8ea92bdef
* [android] fix iconFont not show first time (#2588) 6804d33bd
* Update weex android build env (#2586) bef6f8c86
* [iOS] devtool should connect once time 24993c1d1
* Fix animation needlayout (#2585) 345878fe8
* [Android] add new white screen check logic (#2582) ec44cd474
*  [Android]create a new module (deviceInfo) to enable full screen height (#2578) 10a0bc5b4
* [Android] Disable all log level in release app and enable log level above debug app. (#2581) 2a7f46f21
* [iOS] add option to ignore element time calculate (#2580) d20be41c9
* [Android] rm bundletype report replace with  flag in performance data(bundleType) (#2576) f95d135e0
* Fix eagle js content issue (#2575) 497e82e81
* Use another way to copy stripped .so file (#2574) c6fa98273
* Update gradle-wrapper. (#2571) c86b48af8
* Update gradle wrapper to 4.10.1 and gradle plugin to 3.3.2 (#2570) 9570a2457
*  [Android] Support arm64 by upgrading NDK to 16 and Gradle Plugin for Android to 3.2.1  (#2561) 61ef25643
* [iOS] Screen rotation adjust. Initialize WeexCore before setting page required width and viewportwidth. (#2568) 113f23420
* [iOS] Use static regular expression instance for transform parsing. (#2567) a43c76843
* Fix image placeholder (#2564) 07151c351
* Revert "[iOS] Set overflow to  hidden by default on iOS to conform to Android. (#2521)" (#2565) a31c9821f
* [Fix] First remove invalid timers and the report. (#2549) 1201d50ad
* [iOS] Fix iOS crash that a header is inserted to list, and splitting cells calculation incorrectly. (#2548) 6a16112c4
* Fix crash issue caused by box-shadow. (#2545) 8aca64863
* Revert "[Android] fix Android9 inaccurate ScreenHeight problem (#2536)" (#2544) 20c034bd5
* [Android] errorCode samge as iOS (#2537) 5261845b4
* Add nav onSupportNavigateUp event (#2542) c22ff1a67
* Fix close server fd repeatedly (#2543) 84288a8e7
* [Android] fix Android9 inaccurate ScreenHeight problem (#2536) 73c55cb9f
* Change Log Utility for Android, and developers could change log level using http://editor.weex.io/vue/8fb63b977fad1bf816b9a9ad79a43fbd (#2540) b07f49c56
* [iOS] Public methods for getting/setting global device size. (#2534) 156c96634
* Add universal error code. (#2533) 74ea09232
* Revert "[iOS] Update iOS error code. (#2522)" (#2532) d3f756075
* Use Java interface to print log. (#2529) 4686a4b09
* Log scan switch (#2524) d857f3712
* [iOS] suuport instance use backup js thread run ee34a4608
* [iOS] Fix rtl layout crash related to accessing wild pointer in BFSs vector. (#2525) 0baa6a722
* [iOS] Update iOS error code. (#2522) 223d05f31
* [iOS] Set overflow to  hidden by default on iOS to conform to Android. (#2521) 4553f0ff6
* [iOS] Fix devtool unloading bridge manager. (#2520) 181bca581
* Support orientation switch hot-layout. (#2512) 6cd5788aa
* Log functions fix. Allow LOGI to output in release bundle. (#2501) 7eaee8534
* Fix License Issue (#2499) f642e4943
* [IOS] revert methodWithComponentName old interface c5fabb564
* [iOS] default bundleType is Vue on eagle 501917527
* [Android] 1. fix instance not found on preDownLoadMode 2. fix memleak after instance destroy (#2494) 57cc93b9f
* Log update iOS compile error. (#2493) a3d14b33e
* Redirect all invocation of Android C++ log to log_defines.h 3a4fe2447
* [Android] support preinit && predonload mode (#2491) ca886d218
* Update WXComponentMethod.h 78153e9f9
* [iOS] Avoid using os/log.h because it is only supported on iOS9 and later. (#2486) 87783c634
* Fix android compile problem. 734b282f5
* [Core] Add WeexCore log bridge. (#2398) 01f964e66
* Update build.gradle to fix potential security vulnerable (#2483) de3df30cd
* Fix the tag pushing problems for apache release script. (#2481) c3a5b00ca
* Chagne Android Version (#2480) 340ec4a64
* [WEEX][Weex-Android] Add Supported For Multi Screen Render Supported  In WeexCore (#2462) 7479b5c1a
* Update version to 0.24.0 (#2479) b41f0c36b
* Merge Release/0.24 into master (#2478) e31e95635
* [IOS] support component method call in background thread 8f5ebf38e
* [iOS] WXCoreBridge install should run in main thread 2925df59f
* [iOS] fix input text show error when has a attribute of maxlength 499745a71
* [iOS] remove c++ global var 1bdb48cc1
*  [iOS]fix crash of execute js  when instance has destroied 62873d4e8
* [iOS] fix crash when instanceid is nil (#2460) f8ea2c491
* Fix default wordwrap (#2456) da0c68cad
* [iOS] Wordwrap set to break by word by default. (#2455) bba6db76d
* WEEX][Weex-Android] Add Build Model For MateX And Galaxy Fopld (#2453) f85519891
* [Android] Copy so. (#2454) 4da0cea70
* [Android] Check weexVersion (#2451) 151c46939
* [WEEX][Weex-Android] Fix Compile Error (#2449) 20d075ae4
* [WEEX][Weex-Android] Supported Multi Android Screen Device Size Auto Render When Device Size Changed (#2447) b54cce629
* Fix text crash (#2442) 9602c430f
* [Android] Add weex-rax-api.js for eagle (#2446) d4fdf7513
* [Android] add option to ignore element time calculate (#2444) eef765415
* Degrade to h5 if can not reload this page (#2438) 9a3a5fa5e
* [iOS] Fix not proper use of block of WXPerformance. 9e0c83257
* [iOS] put renderFailed on component thread run 5f5247de1
* [iOS] Fix issue the click(tap) may not trigger under some conditions.(Conflict with edge pan gesture.) (#2439) 0ff37921e
* [iOS] Fix bug that iconfonts with the same family name but different files cannot upgrade. (#2433) 21e7ba474
* [Core] Protect potential crash. (#2430) 8772d4025
*  [Android] Fix NPE in integer convert. (#2427) ba6d09c67
* eagle should degree err code fixup (#2426) 1349d21da
* [Android] feature : check bundle_type and report error (#2424) b5dd77c8d
* [iOS] jsexception deduplication 82886d5a7
*  [Android] return 0 if there is no android system. (#2419) 49a74f0cf
* [iOS] public hender of WXNavigationDefaultImpl.h and WXStreamModule.h fd368f7f3
* Support refreshFinish for eagle (#2416) e9d4ba140
* [iOS] fix compile error when eagle add bundletype (#2415) c49751b52
* [Android] Pass bundleType to eagle (#2412) 058f8ea51
* [iOS] add callback on wxcomponent 4e858e6cb
* [iOS] export eagle exception (#2402) 650cb5b12
* [data-render] reportJSException compare funtion name using CreatePageWithContent (#2384) 9eb13afbc
* [iOS] remove private header file from eagle_bridge.h 01578bbe5
* [Android] Report an exception if there is an error. (#2393) f6171bf35
* Fix bug that +[WXSDKManager bridgeMgr] is not thread safe. (#2394) 6dee82599
* [core] fix flex-direction:row-reverse childRight error (#2321) 1ff3ac114
* [Android] remove unnecessary frameworkInit check in WXBridgeManager for data-render mode (#2337) 9be6fa29d
* fix ios call native component method before the plugin register (#2387) 14a6760d7
* [iOS] report exception when native render error 9c8ea85fd
* [iOS] fix crash when platformBridge is nil on eagle d55f169ff
* [iOS] Fix mtl target build script. (#2369) e1c133822
* [jsfm] Fix the lint error in Document (#2368) 708c97e36
* [Core] Remove C++ static initializers. (#2355) 992d3eee7
* [iOS] Monitor "Too many timers" error. And remove invalidate timers automatically. (#2352) 580533093
* [BUG] 修正动画处理时,对于transition-duration小于1000 / 60微秒的情况,没有动画效果也没有更新最终样式的问题。 d2ba8d0bb
* [iOS] destroy vnode first ,then destroy jsobject 48e64372f
* [BUG] 修正动画处理时逐帧模拟的计算误差及逻辑问题,详见 #2347 。 d7620e0c5
* [iOS] support download js by multithread a88c0875f
*  [Android] Update devtool version (#2341) 5fec7c5f0
* [WEEX][Weex-Android]  Android Q Weex System Version Adapter (#2336) 80cc6cf6c
Update license declaration.
3 files changed
tree: 300d554010b6b303c301d5dbf9c1323b5f5b5e8a
  1. .babelrc
  2. .eslintignore
  3. .eslintrc
  4. .github/
  5. .gitignore
  6. .rat-excludes
  7. .travis.yml
  8. CHANGELOG.md
  9. CODE_OF_CONDUCT.md
  10. CONTRIBUTING.md
  11. DISCLAIMER
  12. Dangerfile-ios
  13. Gemfile
  14. Gemfile.lock
  15. HOW-TO-BUILD.md
  16. LICENSE
  17. NOTICE
  18. POSSIBLE-NOTICES-FOR-BIN-DIST
  19. README.md
  20. RUN-RAT.md
  21. SCRIPTS.md
  22. WeexSDK.modulemap
  23. WeexSDK.podspec
  24. android/
  25. bin/
  26. build/
  27. dangerfile-android.js
  28. dangerfile-ios.js
  29. dangerfile-jsfm.js
  30. dangerfile.js
  31. examples/
  32. index.html
  33. ios/
  34. package-lock.json
  35. package.json
  36. packages/
  37. pre-build/
  38. runtime/
  39. scripts/
  40. start
  41. test/
  42. weex_core/
README.md

Weex

A framework for building Mobile cross-platform UI.

Build Status

platformstatus
AndroidDownload
iOSPod version Carthage compatible
Mobile Webnpm version

Support Android 4.1 (API 16), iOS 8.0+ and WebKit 534.30+.

Note: Please note the above download distribution is only for users' users' convenience. Weex Release is always in the format of source code.

For Windows

Please INSTALL Git for Windows and run all the following commands in git-bash.

Meet Weex

  • Install Weex Playground App to see examples we already written.
  • If you want to write a demo, install weex-toolkit in Node.js 8.0+ and
  • Run weex init to generate & start a simple project in an empty folder.
  • Follow the instructions in the project README.
  • Enjoy it.

Use Weex

Android

  • Prerequisites
  • Run playground, In Android Studio
    • Open android/playground
    • In app/java/com.alibaba.weex/IndexActivity, modify CURRENT_IP to your local IP
    • Click (Run button)
  • Add an example

Runtime

On Android Platform , Weex code is executed in weex_v8core which is based on Google V8 JavaScript engine.

iOS

  • run playground

    • Prerequisites
    • Run playground
      • cd ios/playground
      • pod install
      • Open WeexDemo.xcworkspace in Xcode
      • Click (Run button) or use default shortcut cmd + r in Xcode
      • If you want to run the demo on your device, don't need to modify CURRENT_IP manually. In DemoDefine.h(you can search this file by Xcode default shortcut cmd + shift + o), modify CURRENT_IP to your local IP
    • Add an example
  • integrate to your application

    • CocoaPods

      Add the following line to your Podfile:

      pod 'WeexSDK'
    

    run pod install

    • Carthage

      Add the following line to your Cartfile:

      github "apache/incubator-weex"
    

    Run carthage update, and you should now have the latest version of WeexSDK in your Carthage folder.

Mobile Web

see weex-vue-render.

Scripts

See SCRIPTS.md for more information.

IDE Plugin & Syntax Highlight & DevTool

Weex team have developed a DevTool to help you to improve the debugging efficiency.

See more stuff on this wiki page

Weex Community

Contributing

See Weex Contributing Guide for more information.