diff --git a/_config.yml b/_config.yml
index 4861c31..c79cf66 100644
--- a/_config.yml
+++ b/_config.yml
@@ -359,9 +359,9 @@
   cn/doc/references/events/blur.html: cn/references/index.html
   cn/doc/references/events/input.html: cn/references/index.html
   cn/doc/references/events/focus.html: cn/references/index.html
-  guide/tools/toolkit.html: tools/toolkit.html
-  guide/tools/devtools.html: tools/toolkit.html
-  guide/tools/weexpack.html: tools/toolkit.html
+  guide/tools/toolkit.html: develop/weex_cli.html
+  guide/tools/devtools.html: develop/weex_cli.html
+  guide/tools/weexpack.html: develop/weex_cli.html
   guide/tools/plugin.html: tools/helpers.html
   guide/contributing.html: contributing.html
   guide/intro/how-it-works.html: wiki/index.html
@@ -398,9 +398,9 @@
   references/advanced/integrate-devtool-to-ios.html: guide/integrate-devtool-to-ios.html
   playground.html: tools/playground.html
   faq.html: wiki/faq.html
-  cn/guide/tools/toolkit.html: cn/tools/toolkit.html
-  cn/guide/tools/devtools.html: cn/tools/toolkit.html
-  cn/guide/tools/weexpack.html: cn/tools/toolkit.html
+  cn/guide/tools/toolkit.html: cn/develop/weex_cli.html
+  cn/guide/tools/devtools.html: cn/develop/weex_cli.html
+  cn/guide/tools/weexpack.html: cn/develop/weex_cli.html
   cn/guide/tools/plugin.html: cn/tools/helpers.html
   cn/guide/contributing.html: cn/contributing.html
   cn/guide/intro/how-it-works.html: cn/wiki/index.html
diff --git a/_config_cn.yml b/_config_cn.yml
index 82c8f13..9302f1f 100644
--- a/_config_cn.yml
+++ b/_config_cn.yml
@@ -357,9 +357,9 @@
   cn/doc/references/events/blur.html: cn/references/index.html
   cn/doc/references/events/input.html: cn/references/index.html
   cn/doc/references/events/focus.html: cn/references/index.html
-  guide/tools/toolkit.html: tools/toolkit.html
-  guide/tools/devtools.html: tools/toolkit.html
-  guide/tools/weexpack.html: tools/toolkit.html
+  guide/tools/toolkit.html: develop/weex_cli.html
+  guide/tools/devtools.html: develop/weex_cli.html
+  guide/tools/weexpack.html: develop/weex_cli.html
   guide/tools/plugin.html: tools/helpers.html
   guide/contributing.html: contributing.html
   guide/intro/how-it-works.html: wiki/index.html
@@ -396,9 +396,9 @@
   references/advanced/integrate-devtool-to-ios.html: guide/integrate-devtool-to-ios.html
   playground.html: tools/playground.html
   faq.html: wiki/faq.html
-  cn/guide/tools/toolkit.html: cn/tools/toolkit.html
-  cn/guide/tools/devtools.html: cn/tools/toolkit.html
-  cn/guide/tools/weexpack.html: cn/tools/toolkit.html
+  cn/guide/tools/toolkit.html: cn/develop/weex_cli.html
+  cn/guide/tools/devtools.html: cn/develop/weex_cli.html
+  cn/guide/tools/weexpack.html: cn/develop/weex_cli.html
   cn/guide/tools/plugin.html: cn/tools/helpers.html
   cn/guide/contributing.html: cn/contributing.html
   cn/guide/intro/how-it-works.html: cn/wiki/index.html
diff --git a/docs/.vuepress/config.js b/docs/.vuepress/config.js
index d777191..d69bcdf 100644
--- a/docs/.vuepress/config.js
+++ b/docs/.vuepress/config.js
@@ -55,6 +55,7 @@
               children: [
                 ['develop/setup-develop-environment', 'Setup Develop Environment'],
                 ['develop/create-a-new-app', 'Create a New App'],
+                ['develop/weex_cli', 'Weex CLI'],
                 ['develop/integrate-to-android-app', 'Integrate to Android'],
                 ['develop/integrate-to-iOS-app', 'Integrate to iOS'],
                 ['develop/weex_error_code', 'WeexErrorCode']
@@ -175,7 +176,6 @@
             }
           ],
           '/tools/': [
-            ['toolkit', 'Weex Toolkit'],
             ['extension', 'VSCode Extension'],
             ["dotwe", "Online Editor"]
           ],
@@ -230,6 +230,7 @@
               children: [
                 ['develop/setup-develop-environment', '设置开发环境'],
                 ['develop/create-a-new-app', '创建一个新的app'],
+                ['develop/weex_cli', 'Weex CLI'],
                 ['develop/integrate-to-android-app', '集成到Android应用'],
                 ['develop/integrate-to-iOS-app', '集成到iOS应用'],
                 ['develop/weex_error_code', 'WEEX常见错误码']
@@ -350,7 +351,6 @@
             }
           ],
           '/zh/tools/': [
-            ['toolkit', 'Weex 工具箱'],
             ['extension', 'VSCode 插件'],
             ["dotwe", "Online Editor"]
           ],
diff --git a/docs/.vuepress/data/redirect.json b/docs/.vuepress/data/redirect.json
index 4811888..6af3eb5 100644
--- a/docs/.vuepress/data/redirect.json
+++ b/docs/.vuepress/data/redirect.json
@@ -117,8 +117,8 @@
   "/cn/wiki/text-styles.html": "/zh/docs/styles/text-styles.html",
   "/wiki/platform-difference.html": "/guide/platform-difference.html",
   "/cn/wiki/platform-difference.html": "/zh/guide/platform-difference.html",
-  "/tools/index.html": "/tools/toolkit.html",
-  "/cn/tools/index.html": "/zh/tools/toolkit.html",
+  "/tools/index.html": "/develop/weex_cli.html",
+  "/cn/tools/index.html": "/develop/weex_cli.html",
   "/guide/extend-web-render.html": "/guide/extend/extend-web.html",
   "/cn/guide/extend-web-render.html": "/zh/guide/extend/extend-web.html",
   "/guide/extend-ios.html": "/guide/extend/extend-ios.html",
diff --git a/docs/download/download.md b/docs/download/download.md
index 8f0bd7c..13e7dfa 100644
--- a/docs/download/download.md
+++ b/docs/download/download.md
@@ -16,9 +16,9 @@
 * Released in Oct 23, 2019
 * [ChangeLog](https://github.com/apache/incubator-weex/releases/tag/0.28.0)
 * [Source](https://www.apache.org/dyn/closer.cgi?filename=incubator/weex/0.28.0/apache-weex-incubating-0.28.0-src.tar.gz&action=download) | [Signature](https://www.apache.org/dist/incubator/weex/0.28.0/apache-weex-incubating-0.28.0-src.tar.gz.asc) | [Checksum](https://dist.apache.org/repos/dist/release/incubator/weex/0.28.0/apache-weex-incubating-0.28.0-src.tar.gz.sha512)
-* Binary
+* Convenience binary
     * Android 
-        * **Since 0.28.0, Weex would publish two convince binary in each release, please [read the documentation about the detail](major_change.html).**
+        * **Since 0.28.0, Weex would publish two convenience binary in each release, please [read the documentation about the detail](major_change.html).**
         * `compile 'org.apache.weex:sdk:0.28.0'`
         * `compile 'org.apache.weex:sdk_legacy:0.28.0'`
     * iOS 
@@ -29,12 +29,17 @@
 * Released in July 11, 2019
 * [ChangeLog](https://github.com/apache/incubator-weex/releases/tag/0.26.0)
 * [Source](https://archive.apache.org/dist/incubator/weex/0.26.0/apache-weex-incubating-0.26.0-src.tar.gz) | [Signature](ttps://archive.apache.org/dist/incubator/weex/0.26.0/apache-weex-incubating-0.26.0-src.tar.gz.asc) | [Checksum](https://archive.apache.org/dist/incubator/weex/0.26.0/apache-weex-incubating-0.26.0-src.tar.gz.sha512)
+* Convenience binary
+    * Android 
+        `compile 'com.taobao.android:weex_sdk:0.26.0'`
+    * iOS 
+        `pod "WeexSDK","0.26.0"`
 
 ## 0.24.0
 * Released in May 23, 2019
 * [ChangeLog](https://github.com/apache/incubator-weex/releases/tag/0.24.0)
 * [Source](https://archive.apache.org/dist/incubator/weex/0.24.0/apache-weex-incubating-0.24.0-src.tar.gz) | [Signature](https://archive.apache.org/dist/incubator/weex/0.24.0/apache-weex-incubating-0.24.0-src.tar.gz.asc) | [Checksum](https://archive.apache.org/dist/incubator/weex/0.24.0/apache-weex-incubating-0.24.0-src.tar.gz.sha512)
-* Binary
+* Convenience binary
     * Android 
         `compile 'com.taobao.android:weex_sdk:0.24.0'`
     * iOS 
diff --git a/docs/download/major_change.md b/docs/download/major_change.md
index ce311dd..7dfc23c 100644
--- a/docs/download/major_change.md
+++ b/docs/download/major_change.md
@@ -3,7 +3,10 @@
 
 # Version
 ## 0.28
-**The following three major change in 0.28 only affects Android developers**
+::: tip
+The following three major change in 0.28 only affects Android developers.
+:::
+
 ### Android
 #### Package name
 Due to the fact that Weex was a software of Alibaba Group (the mother company of Taobao Software Cooperation, ltd.) before donated to ASF (Apache Software Foundation),the Android package name of Weex was `com.taobao.weex` before Weex 0.28.0 released. 
@@ -13,17 +16,17 @@
 #### GroupId and artifactId in JCenter
 Due to the fact that Weex was a software of Alibaba Group (the mother company of Taobao Software Cooperation, ltd.) before donated to ASF (Apache Software Foundation),Weex Android was under `com.taobao.android:weex_sdk` in JCenter before Weex 0.28.0 release.
 
-Since 0.28.0, Weex provides a convince library in JCenter with the following groupId and artifactId:
+Since 0.28.0, Weex provides a convenience library in JCenter with the following groupId and artifactId:
 * `org.apache.weex:sdk` is the currently stable package of Weex, where all Java files are under the package of `org.apache.weex`.
 * `org.apache.weex:sdk_legacy` is the legacy package of Weex, where all Java files are under the package of `com.taobao.weex`. This artifact may not be maintained in the future, please upgrade to the new package name when it's possible for you.
 
 #### JavaScript Interpreter
-Before Weex 0.28.0, Weex Android relied and bundled [JavaScriptCore](https://github.com/alibaba/weex_js_engine/tree/bridge_branch_mergeTimer) into its convince binary(i.e. aar), and this approach have the following disadvantage:
+Before Weex 0.28.0, Weex Android relied and bundled [JavaScriptCore](https://github.com/alibaba/weex_js_engine/tree/bridge_branch_mergeTimer) into its convenience binary(i.e. aar), and this approach have the following disadvantage:
 * JavaScriptCore is partly licensed under BSD, partly licensed under LGPL, which is against the [License policy of ASF](https://apache.org/legal/resolved.html#category-a)
-* Users of Weex has no choice of JavaScript Interpreter if we continue bundling JavaScriptCore in convince binary.
+* Users of Weex has no choice of JavaScript Interpreter if we continue bundling JavaScriptCore in convenience binary.
 * The JavaScriptCore Weex used is a pruning version of [official JavaScriptCore](https://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.17.4/Source/JavaScriptCore/) in 2016 and not update since that time, which means we might miss a lot of new features.
 
-Since Weex 0.28.0, the JavaScript Interpreter is not bundled in the convince binary anymore, users have the freedom of using whatever JavaScript Interpreter they want as long as they implement the [same interface](https://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.27.1/Source/JavaScriptCore/API/). 
+Since Weex 0.28.0, the JavaScript Interpreter is not bundled in the convenience binary anymore, users have the freedom of using whatever JavaScript Interpreter they want as long as they implement the [same interface](https://svn.webkit.org/repository/webkit/releases/WebKitGTK/webkit-2.27.1/Source/JavaScriptCore/API/). 
 
 This means users have to bundle a JavaScript Interpreter in their APP to run Weex. For users who don't have idea about how to choose JavaScript Interpreter, one can insert the following code snippet into the `build.gradle` of the app:
 
diff --git a/docs/guide/debug/integrate-devtool-to-android.md b/docs/guide/debug/integrate-devtool-to-android.md
index 15683e6..7d2732a 100644
--- a/docs/guide/debug/integrate-devtool-to-android.md
+++ b/docs/guide/debug/integrate-devtool-to-android.md
@@ -1,10 +1,10 @@
 # Integrate Devtool to Android
 
 :::danger
-[Android Weex DevTools](https://github.com/weexteam/weex-devtools-android) is a third party plugin, and is not developed nor maintained by Apache Weex.
+[Android Devtools for Apache Weex](https://github.com/weexteam/weex-devtools-android) is a third party plugin, and is not developed nor maintained by Apache Weex.
 :::
 
-Weex devtools is a custom devtools for weex that implements Chrome Debugging Protocol inspired by Stetho, it is designed to help you quickly inspect your app and debug your JS bundle source in a Chrome web page. To make it work, at first you must integrate devtool to your App. This page will help you integrate devtool to your Android App.
+Android Devtools for Apache Weex implements Chrome Debugging Protocol inspired by Stetho. It is designed to help you quickly inspect your app and debug your JS bundle source in a Chrome web page. To make it work, at first you must integrate it to your App. This page will help you integrate devtool to your Android App.
 
 #### Version compatibility
 
@@ -22,7 +22,7 @@
 
 ### Installing Dependencies
 
-Weex Devtools depend on `weex_inspector`. I strongly recommend you use the latest version since both Weex SDK and devtools are developed iteratively and rapidly.
+Android Devtools for Apache Weex depends on `weex_inspector`. I strongly recommend you use the latest version since both Weex SDK and devtools are developed iteratively and rapidly.
 
 - From Gradle
 
diff --git a/docs/guide/debug/integrate-devtool-to-ios.md b/docs/guide/debug/integrate-devtool-to-ios.md
index edd7321..250a64d 100644
--- a/docs/guide/debug/integrate-devtool-to-ios.md
+++ b/docs/guide/debug/integrate-devtool-to-ios.md
@@ -1,10 +1,10 @@
 # Integrate Devtool to iOS
 
 :::danger
-[iOS Weex DevTools](https://github.com/weexteam/weex-devtool-iOS) is a third party plugin, and is not developed nor maintained by Apache Weex.
+[iOS Devtools for Apache Weex](https://github.com/weexteam/devtool-iOS-for-Apache-Weex) is a third party plugin, and is not developed nor maintained by Apache Weex.
 :::
 
-Weex devtools is a custom devtools for weex that implements Chrome Debugging Protocol inspired by Stetho, it is designed to help you quickly inspect your app and debug your JS bundle source in a Chrome web page. To make it work, at first you must integrate devtool to your App. This page will help you integrate devtool to your iOS App.
+iOS Devtools for Apache Weex is a custom devtools for weex that implements Chrome Debugging Protocol inspired by Stetho, it is designed to help you quickly inspect your app and debug your JS bundle source in a Chrome web page. To make it work, at first you must integrate devtool to your App. This page will help you integrate devtool to your iOS App.
 
 - Integrate Devtool to iOS
 - Integrate Devtool to iOS
diff --git a/docs/guide/develop/create-a-new-app.md b/docs/guide/develop/create-a-new-app.md
index acc013b..a009d8e 100644
--- a/docs/guide/develop/create-a-new-app.md
+++ b/docs/guide/develop/create-a-new-app.md
@@ -2,13 +2,17 @@
 
 > The following steps assume basic knowledge of Node.js and npm. If you are not familiar with them, you can visit [https://docs.npmjs.com/](https://docs.npmjs.com/) to learn more about npm, and [https://nodejs.org/en/docs/](https://nodejs.org/en/docs/) to learn more about Node.js.
 
-Weex provides a command line tool, the [weex-toolkit](../../tools/toolkit.html), to help developers get start easily. The CLI can help you create a starter project, setup iOS and Android development environments, debug, install plugins, and so on.
+Weex provides a command line tool, the [weex-cli](./weex_cli.html), to help developers get start easily. The CLI can help you create a starter project, setup iOS and Android development environments, debug, install plugins, and so on.
 
-Currently, the `weex-toolkit` only supports the creation of Vue.js project. The `rax-cli` may be helpful if you want to use Rax. Please visit [Rax's official website](https://alibaba.github.io/rax/) for more details.
+Currently, the `weex-cli` only supports the creation of Vue.js project. The `rax-cli` may be helpful if you want to use Rax. Please visit [Rax's official website](https://alibaba.github.io/rax/) for more details.
+
+::: tip
+`rax-cli` is a third party plugin, and is not developed nor maintained by Apache Weex.
+:::
 
 ## Set up
 
-With [Node.js](https://nodejs.org/) installed, install `weex-toolkit` CLI globally.
+With [Node.js](https://nodejs.org/) installed, install `weex-cli` CLI globally.
 
 ```bash
 npm install weex-toolkit -g
@@ -66,4 +70,4 @@
 weex debug
 ```
 
-`weex debug` will start a debug server and open a web page in Chrome (only support V8 engine). For more technical details of `weex-toolkit`, please refer to the [toolkit document](../../tools/toolkit.html).
\ No newline at end of file
+`weex debug` will start a debug server and open a web page in Chrome (only support V8 engine). For more technical details of `weex-toolkit`, please refer to the [toolkit document](./weex_cli.html).
\ No newline at end of file
diff --git a/docs/guide/develop/integrate-to-android-app.md b/docs/guide/develop/integrate-to-android-app.md
index 34eca52..a979259 100644
--- a/docs/guide/develop/integrate-to-android-app.md
+++ b/docs/guide/develop/integrate-to-android-app.md
@@ -16,7 +16,7 @@
 ## 1. Configure dependency 
 
 ::: tip
-**Since 0.28.0, Weex would publish two convince binary in each release, please [read the documentation about the detail](../../download/major_change.html).**
+**Since 0.28.0, Weex would publish two convenience binary in each release, please [read the documentation about the detail](../../download/major_change.html).**
 :::
 
 ```
diff --git a/docs/guide/develop/setup-develop-environment.md b/docs/guide/develop/setup-develop-environment.md
index 6106fe8..ece0077 100644
--- a/docs/guide/develop/setup-develop-environment.md
+++ b/docs/guide/develop/setup-develop-environment.md
@@ -1,10 +1,10 @@
 # Setup Develop Environment
 
-Using [Weex Online Editor]((http://editor.weex.io/) is a good choice, but if you want to develop locally on your own machine, you will need to set up your develop environment.
+Using [Online Editor](http://dotwe.org/vue) is a good choice, but if you want to develop locally on your own machine, you will need to set up your develop environment.
 
 ## Install
 
-You will need Node.js and the [Weex CLI](https://github.com/weexteam/weex-toolkit).
+You will need Node.js and the [Weex CLI](https://github.com/apache/weex-cli).
 
 There are many ways to install Node.js. The easiest way is to download the executable directly from [Node.js official website] (https://nodejs.org/en/).
 
diff --git a/docs/tools/toolkit.md b/docs/guide/develop/weex_cli.md
similarity index 85%
rename from docs/tools/toolkit.md
rename to docs/guide/develop/weex_cli.md
index 5639f9e..47c6576 100644
--- a/docs/tools/toolkit.md
+++ b/docs/guide/develop/weex_cli.md
@@ -1,18 +1,13 @@
 # Introduction
-
-:::danger
-Weex Toolkit is a third party plugin, and is not developed nor maintained by Apache Weex.
-:::
-
 ::: warning warning
-This document is for the `weex-toolkit` **2.x** version. For the old version of the `weex-toolkit` documentation, please go to [here](https://github.com/weexteam/weex-toolkit/blob/v1.0/README.md).
+This document is for the `Weex CLI` **2.x** version. For the old version of the `Weex CLI` documentation, please go to [here](https://github.com/apache/weex-cli/blob/v1.0/README.md).
 :::
 
-[Weex Toolkit](https://github.com/weexteam/weex-toolkit) is dedicated to standardizing the tool base in the Weex ecosystem. It ensures that various build tools can be seamlessly connected based on smart default configuration, so you can focus on writing applications without having to spend days tangling configuration issues.
+[Weex CLI](https://github.com/apache/weex-cli) is dedicated to standardizing the tool base in the Weex ecosystem. It ensures that various build tools can be seamlessly connected based on smart default configuration, so you can focus on writing applications without having to spend days tangling configuration issues.
 
 ## System Components
 
-[Weex Toolkit](https://github.com/weexteam/weex-toolkit) split each function module into separate parts, if you see our [source code](https://github.com/weexteam/weex-toolkit/tree/master/packages/%40weex) , you will find that we manage multiple separate releases in the repository via [Lerna](https://lernajs.io/) Package, providing the following functional modules:
+[Weex CLI](https://github.com/apache/weex-cli) split each function module into separate parts, if you see our [source code](https://github.com/apache/weex-cli/tree/master/packages/%40weex) , you will find that we manage multiple separate releases in the repository via [Lerna](https://lernajs.io/) Package, providing the following functional modules:
 
 - The `@weex-cli/core`:
   - upgradeable;
@@ -35,7 +30,7 @@
 
 ## Installation
 
-If you have problems during the installation process, you can do a question search and feedback at [here](https://github.com/weexteam/weex-toolkit/issues).
+If you have problems during the installation process, you can do a question search and feedback at [here](https://github.com/apache/weex-cli/issues).
 
 ``` bash
 $ npm install weex-toolkit -g
diff --git a/docs/guide/extend/extend-web.md b/docs/guide/extend/extend-web.md
index 3f5aa6b..2237d81 100644
--- a/docs/guide/extend/extend-web.md
+++ b/docs/guide/extend/extend-web.md
@@ -8,7 +8,11 @@
 
 After Weex switches the kernel to Vue 2.x, it will be easier to extend the Vue component on the Web side.
 
-We current use [weex-vue-render](https://github.com/weexteam/weex-vue-render) for Vue 2.x Web side rendering. Firstly import this library in your web page, then you can extend the render's built-in components using `weex.registerComponent` or `Vue.component`. Basically these two methods are doing the same thing.
+We current use [Vue Render For Apache Weex](https://github.com/weexteam/vue-render-for-apache-weex) for Vue 2.x Web side rendering. Firstly import this library in your web page, then you can extend the render's built-in components using `weex.registerComponent` or `Vue.component`. Basically these two methods are doing the same thing.
+
+::: danger
+Vue Render For Apache Weex is not a part of Apache Weex, and is not developed nor maintained by Apache Weex.
+:::
 
 ## Example of extension for weex built-in components.
 
diff --git a/docs/guide/introduction.md b/docs/guide/introduction.md
index 4557fe7..43ea086 100644
--- a/docs/guide/introduction.md
+++ b/docs/guide/introduction.md
@@ -1,10 +1,11 @@
 # What is Weex?
 
-<!-- toc -->
+::: tip
 
-> **Weex is a framework for building high-performance cross-platform mobile applications with a modern web development experience.**
+Weex is a framework for building high-performance cross-platform mobile applications with a modern web development experience.
 
-> You can pronounce "*Weex*" as /wiːks/, just like "*Weeks*".
+You can pronounce "*Weex*" as /wiːks/, just like "*Weeks*".
+:::
 
 Weex enables developers to use modern web development skills to build Android, iOS, and Web apps with a single codebase. In practice, you can use JavaScript with modern front-end frameworks to develop mobile apps.
 
@@ -14,8 +15,12 @@
 
 To have a glance of the abilities of Weex, it is very simple.
 
-* Install [WeexPlayground](http://weex.apache.org/tools/playground.html). In the playground you can try various demos.
-* Visit [Weex online playground](http://dotwe.org/vue). On this site, you can write and run single page demos using Vue.js. And you can use WeexPlayground app to scan the demo.
+* Install [Weex Playground](https://weex.apache.org/zh/guide/playground.html). In the playground you can try various demos.
+* Visit [Online Editor](http://dotwe.org/vue). On this site, you can write and run single page demos using Vue.js. And you can use WeexPlayground app to scan the demo.
+
+::: tip
+Though Weex Playground is a part of Apache Weex, but Online Editor isn't.
+:::
 
 Here is an [example](http://dotwe.org/vue/8da01827631b21150a12dd54d7114380) written in Weex and Vue.js which will give you an overall view of how Weex works:
 
diff --git a/docs/guide/use-vue-in-weex.md b/docs/guide/use-vue-in-weex.md
index 33c45de..065639f 100644
--- a/docs/guide/use-vue-in-weex.md
+++ b/docs/guide/use-vue-in-weex.md
@@ -58,9 +58,13 @@
 
 ## The Web Renderer
 
-If you want to render your page on the web, you need to require the [weex-vue-render](https://github.com/weexteam/weex-vue-render) to achieve it.
+If you want to render your page on the web, you need to require the [vue-render-for-apache-weex](https://github.com/weexteam/weex-vue-render) to achieve it.
 
-`weex-vue-render` is a web renderer for Vue DSL, it implemented the built-in components and built-in modules of Weex on the web. Please refer to [its repo](https://github.com/weexteam/weex-vue-render) for more details.
+::: warning
+`vue-render-for-apache-weex` is a third party plugin, and is not developed nor maintained by Apache Weex
+:::
+
+`vue-render-for-apache-weex` is a web renderer for Vue DSL, it implemented the built-in components and built-in modules of Weex on the web. Please refer to [its repo](https://github.com/weexteam/weex-vue-render) for more details.
 
 ## Single File Component
 
@@ -79,13 +83,13 @@
 Because of the platform difference and to improve the performance on the web, the `*.vue` file should be compiled in two different ways:
 
 + For the web platform, you can compile source files in any official way, such as [Webpack](https://webpack.js.org/) + [vue-loader](https://vue-loader.vuejs.org/en/) or Browserify + vueify.
-+ For Android and iOS platforms, you should use [weex-loader](https://github.com/weexteam/weex-loader) to compile the `*.vue` files.
++ For Android and iOS platforms, you should use [weex-loader](https://github.com/apache/weex-loader) to compile the `*.vue` files.
 
 Use different bundles for different platforms is to make good use of the platform original features and reduce compatibility code at build time. But the source code is still the same, the only difference is the way to compile it.
 
 ### Use weex-loader
 
-[weex-loader](https://github.com/weexteam/weex-loader) is a [loader](https://webpack.js.org/concepts/loaders/#using-loaders) of webpack that can transform `*.vue` file into a plain javascript module for Android and iOS platform. All features and configurations of it are same with [vue-loader (v14)](https://vue-loader-v14.vuejs.org/en/).
+[weex-loader](https://github.com/apache/weex-loader) is a [loader](https://webpack.js.org/concepts/loaders/#using-loaders) of webpack that can transform `*.vue` file into a plain javascript module for Android and iOS platform. All features and configurations of it are same with [vue-loader (v14)](https://vue-loader-v14.vuejs.org/en/).
 
 One thing should be noted that if the *entry* option of your Webpack config is a `*.vue` file, you also need to pass an additional `entry` parameter.
 
@@ -164,8 +168,8 @@
 4. execute `npm run build` in terminal
 5. Done 
 
-**Example of using weex-toolkit compile targets**
-1. install [weex-toolkit](https://weex.apache.org/tools/toolkit.html#system-components)：`npm install weex-toolkit -g`
+**Example of using weex-cli compile targets**
+1. install [weex-cli](https://weex.apache.org/develop/weex_cli.html#system-components)：`npm install weex-toolkit -g`
 2. execute `weex compile [resource file] [product address]`
 3. Done
 
diff --git a/docs/tools/README.md b/docs/tools/README.md
index a999861..3998d1b 100644
--- a/docs/tools/README.md
+++ b/docs/tools/README.md
@@ -1,7 +1,7 @@
 <script>
 module.exports = {
   created(){
-    this.$router.push('/tools/toolkit.html')
+    this.$router.push('/tools/dotwe.html')
   }
 }
 </script>
\ No newline at end of file
diff --git a/docs/zh/download/download.md b/docs/zh/download/download.md
index 194ddb6..138093c 100644
--- a/docs/zh/download/download.md
+++ b/docs/zh/download/download.md
@@ -29,6 +29,11 @@
 * 发布日期 2019年7月11日
 * [变更记录](https://github.com/apache/incubator-weex/releases/tag/0.26.0)
 * [源代码](https://archive.apache.org/dist/incubator/weex/0.26.0/apache-weex-incubating-0.26.0-src.tar.gz) | [签名](ttps://archive.apache.org/dist/incubator/weex/0.26.0/apache-weex-incubating-0.26.0-src.tar.gz.asc) | [哈希](https://archive.apache.org/dist/incubator/weex/0.26.0/apache-weex-incubating-0.26.0-src.tar.gz.sha512)
+* 二进制下载渠道
+    * Android 
+        `compile 'com.taobao.android:weex_sdk:0.26.0'`
+    * iOS 
+        `pod "WeexSDK","0.26.0"`
 
 ## 0.24.0
 * 发布日期 2019年5月23日
diff --git a/docs/zh/download/major_change.md b/docs/zh/download/major_change.md
index 6d883b1..b65ac82 100644
--- a/docs/zh/download/major_change.md
+++ b/docs/zh/download/major_change.md
@@ -3,7 +3,10 @@
 
 # 版本
 ## 0.28
-**下述在 0.28 中的重大变更只影响 Android 用户。**
+::: tip
+下述在 0.28 中的重大变更只影响 Android 用户。
+:::
+
 ### Android
 #### Java 包名
 由于 Weex 在捐献给 ASF(Apache Software Foundation) 前隶属于阿里巴巴集团(淘宝的母公司)，因此在 `0.28.0` 之前，Android 代码中的 Java 包名是 `com.taobao.weex`
diff --git a/docs/zh/guide/debug/integrate-devtool-to-android.md b/docs/zh/guide/debug/integrate-devtool-to-android.md
index e8afe3a..739acd3 100644
--- a/docs/zh/guide/debug/integrate-devtool-to-android.md
+++ b/docs/zh/guide/debug/integrate-devtool-to-android.md
@@ -1,10 +1,10 @@
 # 概要
 
 :::danger
-[Android Weex DevTools](https://github.com/weexteam/weex-devtools-android) 是三方插件, 不由 Apache Weex 开发或维护。
+[Android Devtools for Apache Weex](https://github.com/weexteam/android-devtools-for-Apache-Weex) 是三方插件, 不由 Apache Weex 开发或维护。
 :::
 
-Weex Devtools 能够方便调试 Weex 页面，但此功能离不开 Native 的支持。如何让你的 App 也集成 Devtools，在本章将会详细说明 Android 端如何接入 Weex Devtools。
+Android Devtools for Apache Weex 能够方便调试 Weex 页面，但此功能离不开 Native端 的支持。本章将会详细说明 Android 端如何接入 Android Devtools for Apache Weex.
 
 #### 版本兼容
 
@@ -21,7 +21,7 @@
 ## Android接入指南
 
 #### 一、添加依赖
-可以通过Gradle 或者 Maven添加对devtools aar的依赖, 也可以直接对源码依赖.
+可以通过Gradle 或者 Maven添加对 Android Devtools for Apache Weex 的依赖, 也可以直接对源码依赖.
 
   * *Gradle依赖*.
   ```
@@ -110,6 +110,9 @@
 ```
 
 ## 科普
+::: tip
+在以下的简介中，Android Devtools for Apache Weex 将简称为 Devtools
+:::
 
 #### Devtools组件介绍
 Devtools扩展了[Chrome Debugging Protocol](https://developer.chrome.com/devtools/docs/debugger-protocol), 在客户端和调试服务器之间的采用[JSON-RPC](https://en.wikipedia.org/wiki/JSON-RPC)作为通信机制, 本质上调试过程是两个进程间协同, 相互交换控制权及运行结果的过程. 更多细节还请阅读[Weex Devtools Debugger的技术选型实录](http://www.atatech.org/articles/59284)这篇文章.
diff --git a/docs/zh/guide/debug/integrate-devtool-to-ios.md b/docs/zh/guide/debug/integrate-devtool-to-ios.md
index 6352b5b..68f4fd2 100644
--- a/docs/zh/guide/debug/integrate-devtool-to-ios.md
+++ b/docs/zh/guide/debug/integrate-devtool-to-ios.md
@@ -1,10 +1,10 @@
 # 概要
 
 :::danger
-[iOS Weex DevTools](https://github.com/weexteam/weex-devtool-iOS) 是三方插件, 不由 Apache Weex 开发或维护。
+[iOS Devtools for Apache Weex](https://github.com/weexteam/devtool-iOS-for-Apache-Weex) 是三方插件, 不由 Apache Weex 开发或维护。
 :::
 
-Weex Devtools 能够方便调试 Weex 页面，但此功能离不开 Native 的支持。如何让你的 App 也集成 Devtools，在本章将会详细说明 iOS 端如何接入 Weex Devtools。
+iOS Devtools for Apache Weex 能够方便调试 Weex 页面，但此功能离不开 Native 的支持。本章将会详细说明 iOS 端如何接入 iOS Devtools for Apache Weex。
 
 - iOS 应用接入DevTool
 - 和Debug Server 配合使用
diff --git a/docs/zh/guide/develop/create-a-new-app.md b/docs/zh/guide/develop/create-a-new-app.md
index 51b3efd..1602cad 100644
--- a/docs/zh/guide/develop/create-a-new-app.md
+++ b/docs/zh/guide/develop/create-a-new-app.md
@@ -2,13 +2,17 @@
 
 > 以下步骤假设您已经了解了 Node.js 和 npm 的基本知识。如果对它们不熟悉，可以访问 [https://docs.npmjs.com/](https://docs.npmjs.com/) 来了解更多关于 npm 的用法。
 
-Weex 提供了一个命令行工具 [weex-toolkit](../../tools/toolkit.html) 来帮助开发者使用 Weex。它可以用来快速创建一个空项目、初始化 iOS 和 Android 开发环境、调试、安装插件等操作。
+Weex 提供了一个命令行工具 [weex-cli](./weex_cli.html) 来帮助开发者使用 Weex。它可以用来快速创建一个空项目、初始化 iOS 和 Android 开发环境、调试、安装插件等操作。
 
-目前 `weex-toolkit` 只支持创建 Vue.js 的项目。创建 Rax 的项目可以使用 `rax-cli`，参考 [Rax 的官方网站](https://alibaba.github.io/rax/) 了解其用法。
+目前 `weex-cli` 只支持创建 Vue.js 的项目。创建 Rax 的项目可以使用 `rax-cli`，参考 [Rax 的官方网站](https://alibaba.github.io/rax/) 了解其用法。
+
+::: tip
+Rax CLI 是三方插件, 不由 Apache Weex 开发或维护。
+:::
 
 ## 初始化
 
-请确保你已经安装了 [Node.js](https://nodejs.org/)，然后全局安装 `weex-toolkit`。
+请确保你已经安装了 [Node.js](https://nodejs.org/)，然后全局安装 `weex-cli`。
 
 ```bash
 npm install weex-toolkit -g
@@ -65,4 +69,4 @@
 weex debug
 ```
 
-这条命令会启动一个调试服务，并且在 Chrome （目前只支持基于 V8 引擎的桌面浏览器） 中打开调试页面。详细用法请参考 [weex-toolkit 的文档](../../tools/toolkit.html)。
+这条命令会启动一个调试服务，并且在 Chrome （目前只支持基于 V8 引擎的桌面浏览器） 中打开调试页面。详细用法请参考 [weex-toolkit 的文档](./weex_cli.html)。
\ No newline at end of file
diff --git a/docs/zh/guide/develop/setup-develop-environment.md b/docs/zh/guide/develop/setup-develop-environment.md
index 7385243..ca7bf83 100644
--- a/docs/zh/guide/develop/setup-develop-environment.md
+++ b/docs/zh/guide/develop/setup-develop-environment.md
@@ -1,23 +1,21 @@
 # 设置开发环境
 
-使用 [Weex Online Editor](http://editor.weex.io/) 对 Weex 尝鲜是一个不错的选择，但如果你想更专业的开发 Weex，本节会教你如何搭建本地开发环境进行 Weex 开发。
+使用 [Online Editor](http://dotwe.org/vue) 对 Weex 尝鲜是一个不错的选择，但如果你想更专业的开发 Weex，本节会教你如何搭建本地开发环境进行 Weex 开发。
 
 ## 安装依赖
 
-Weex 官方提供了`weex-toolkit` 的脚手架工具来辅助开发和调试。
+Weex 官方提供了`weex-cli` 的脚手架工具来辅助开发和调试。
 
-首先，你需要 Node.js 和 [Weex CLi](https://github.com/weexteam/weex-toolkit)。
+首先，你需要 Node.js 和 [Weex CLI](https://github.com/apache/weex-cli)。
 
 安装 Node.js 方式多种多样，最简单的方式是在 [Node.js 官网](https://nodejs.org/en/) 下载可执行程序直接安装即可。
 
 > 更多安装方式可参考 [Node.js 官方信息](https://nodejs.org/en/download/)
 
-::: Tip
-
+::: tip
 通常，安装了 Node.js 环境，npm 包管理工具也随之安装了。因此，直接使用 npm 来安装 `weex-toolkit`, 你也可以通过 `yarn` 来进行安装。
 
 国内的开发者推荐将npm镜像切换至 Taobao NPM 镜像 `https://registry.npm.taobao.org`。
-
 :::
 
 运行下面的命令安装最新的beta版本工具：
diff --git a/docs/zh/tools/toolkit.md b/docs/zh/guide/develop/weex_cli.md
similarity index 85%
rename from docs/zh/tools/toolkit.md
rename to docs/zh/guide/develop/weex_cli.md
index 6f9eee7..41098f2 100644
--- a/docs/zh/tools/toolkit.md
+++ b/docs/zh/guide/develop/weex_cli.md
@@ -1,17 +1,14 @@
 # 介绍
-:::danger
-Weex Toolkit 是三方插件, 不由 Apache Weex 开发或维护。
-:::
 
 ::: warning 警告
-这份文档是对应 `weex-toolkit` **2.x** 版本的。老版本的 `weex-toolkit` 文档请移步[这里](https://github.com/weexteam/weex-toolkit/blob/v1.0/README.md)。
+这份文档是对应 `Weex CLI` **2.x** 版本的。老版本的 `Weex CLI` 文档请移步[这里](https://github.com/apache/weex-cli/blob/v1.0/README.md)。
 :::
 
-[Weex Toolkit](https://github.com/weexteam/weex-toolkit) 致力于将 Weex 生态中的工具基础标准化。它确保了各种构建工具能够基于智能的默认配置即可平稳衔接，这样你可以专注在撰写应用上，而不必花好几天去纠结配置的问题。
+[Weex CLI](https://github.com/apache/weex-cli) 致力于将 Weex 生态中的工具基础标准化。它确保了各种构建工具能够基于智能的默认配置即可平稳衔接，这样你可以专注在撰写应用上，而不必花好几天去纠结配置的问题。
 
 ## 系统组件
 
-[Weex Toolkit](https://github.com/weexteam/weex-toolkit) 在新版本中将各个功能模块拆分成了独立的几个部分，如果你看到我们的[源代码](https://github.com/weexteam/weex-toolkit/tree/master/packages/%40weex)，你会发现我们在仓库中通过[Lerna](https://lernajs.io/)管理了多个单独发布的包，提供如下功能模块：
+[Weex CLI](https://github.com/apache/weex-cli) 在新版本中将各个功能模块拆分成了独立的几个部分，如果你看到我们的[源代码](https://github.com/apache/weex-cli/tree/master/packages/%40weex)，你会发现我们在仓库中通过[Lerna](https://lernajs.io/)管理了多个单独发布的包，提供如下功能模块：
 
 - `@weex-cli/core` 内核模块用于模块调用及升级管理，该内核：
   - 可升级；
@@ -34,7 +31,7 @@
 
 ## 安装
 
-如果你安装的过程中遇到了问题，你可以在[这里](https://github.com/weexteam/weex-toolkit/issues)进行问题搜索及反馈。
+如果你安装的过程中遇到了问题，你可以在[这里](https://github.com/apache/weex-cli/issues)进行问题搜索及反馈。
 
 ``` bash
 $ npm install weex-toolkit -g
diff --git a/docs/zh/guide/extend/extend-web.md b/docs/zh/guide/extend/extend-web.md
index 9509c40..75b94dd 100644
--- a/docs/zh/guide/extend/extend-web.md
+++ b/docs/zh/guide/extend/extend-web.md
@@ -2,7 +2,11 @@
 Vue.js 是一个独立的前端框架，在浏览器中渲染时不需要基于 Weex 容器。因此，针对 Weex 平台扩展 Vue.js 的 Web 端组件，和直接使用 Vue.js 开发一个 Web 组件是一样的。具体的组件编写方法可以参考其官方文档：[组件](https://cn.vuejs.org/v2/guide/docss.html) ，另外建议使用 `.vue` 格式的文件编写组件，使用方法参考：[单文件组件](https://cn.vuejs.org/v2/guide/single-file-components.html)。
 
 ## 扩展内置组件
-目前我们提供了 [weex-vue-render](https://github.com/weexteam/weex-vue-render) 作为 Vue 2.x Web 端的渲染器。引入该库到项目里，即可使用 `weex.registerComponent` 来进行内置组件扩展，也可以使用 `Vue.component`，两者基本上是一致的。
+目前我们提供了 [Vue Render For Apache Weex](https://github.com/weexteam/vue-render-for-apache-weex) 作为 Vue 2.x Web 端的渲染器。引入该库到项目里，即可使用 `weex.registerComponent` 来进行内置组件扩展，也可以使用 `Vue.component`，两者基本上是一致的。
+
+::: tip
+Vue Render For Apache Weex 是三方插件, 不由 Apache Weex 开发或维护。
+:::
 
 以扩展 `<sidebar>` 为例，首先应该编写组件自身的逻辑：
 ```vue
diff --git a/docs/zh/guide/introduction.md b/docs/zh/guide/introduction.md
index 4d9f0dc..9d9beb6 100644
--- a/docs/zh/guide/introduction.md
+++ b/docs/zh/guide/introduction.md
@@ -1,10 +1,10 @@
 # 什么是 Weex ？
 
-<!-- toc -->
+::: tip
+Weex 是使用流行的 Web 开发体验来开发高性能原生应用的框架。
 
-> **Weex 是使用流行的 Web 开发体验来开发高性能原生应用的框架。**
-
-> "*Weex*" 的发音是 /wiːks/, 和 "*Weeks*" 同音。
+"*Weex*" 的发音是 /wiːks/, 和 "*Weeks*" 同音。
+:::
 
 Weex 致力于使开发者能基于通用跨平台的 Web 开发语言和开发经验，来构建 Android、iOS 和 Web 应用。简单来说，在集成了 WeexSDK 之后，你可以使用 JavaScript 语言和前端开发经验来开发移动应用。
 
@@ -14,8 +14,12 @@
 
 想初步了解 Weex 其实非常简单。
 
-* 安装 [WeexPlayground](http://weex.apache.org/tools/playground.html). 在 Playground 里，你可以打开各种示例。
-* 访问 [Weex online playground](http://dotwe.org/vue). 在这个网站上，你可以浏览、修改、新建各种基于 Vue.js 的[单页面]((https://vuejs.org/v2/guide/single-file-components.html))例子，并用 WeexPlayground 应用扫码查看实时效果。
+* 安装 [Weex Playground](https://weex.apache.org/zh/guide/playground.html). 在 Playground 里，你可以打开各种示例。
+* 访问 [Online Editor](http://dotwe.org/vue). 在这个网站上，你可以浏览、修改、新建各种基于 Vue.js 的[单页面]((https://vuejs.org/v2/guide/single-file-components.html))例子，并用 WeexPlayground 应用扫码查看实时效果。
+
+::: tip
+尽管 Weex Playground 是 Apache Weex 的一部分，但 Online Editor 不是。
+:::
 
 这里有一个使用 Weex 和 Vue.js 开发的[最简单的例子](http://dotwe.org/vue/8da01827631b21150a12dd54d7114380)。你可以大致了解 Weex 是如何工作的。
 
diff --git a/docs/zh/guide/use-vue-in-weex.md b/docs/zh/guide/use-vue-in-weex.md
index fed2c3a..8d46239 100644
--- a/docs/zh/guide/use-vue-in-weex.md
+++ b/docs/zh/guide/use-vue-in-weex.md
@@ -56,9 +56,13 @@
 
 ## Web 渲染器
 
-如果你想在网络上呈现你的页面，你需要 [weex-vue-render](https://github.com/weexteam/weex-vue-render) 来实现它。
+如果你想在网络上呈现你的页面，你需要 [vue-render-for-apache-weex](https://github.com/weexteam/weex-vue-render) 来实现它。
 
-`weex-vue-render`是 Vue DSL 的 Web 渲染器， 它在 Web 上实现了 Weex 的内置组件和内置模块。详情请参阅[这里](https://github.com/weexteam/weex-vue-render)。
+::: warning
+`vue-render-for-apache-weex` 是三方插件，不由 Apache Weex 开发或维护。
+:::
+
+`vue-render-for-apache-weex`是 Vue DSL 的 Web 渲染器， 它在 Web 上实现了 Weex 的内置组件和内置模块。详情请参阅[这里](https://github.com/weexteam/weex-vue-render)。
 
 ## 单文件组件
 
@@ -79,13 +83,13 @@
 因为平台的差异以及为了提高网络性能，`*.vue`文件需要用两种不同的方式来编译：
 
 + 对于 Web 平台来说，你可以用任何正式的方式来编译源文件，例如 使用 **[Webpack](https://webpack.js.org/) + [vue-loader](https://vue-loader.vuejs.org/en/)** 或者 **Browserify + vueify** 来编译`*.vue`文件。
-+ 对于安卓与 iOS 平台来说， 你需要使用 [weex-loader](https://github.com/weexteam/weex-loader) 来编译`*.vue`文件。
++ 对于安卓与 iOS 平台来说， 你需要使用 [weex-loader](https://github.com/apache/weex-loader) 来编译`*.vue`文件。
 
 不同的平台使用不同的`bundles`，可以充分利用平台原有的特性，减少构建时的兼容性代码。但是源代码仍然是一样的，唯一的区别是编译它的方法。
 
 ### 使用weex-loader
 
-[weex-loader](https://github.com/weexteam/weex-loader) 是一个 webpack 的 [loader](https://webpack.js.org/concepts/loaders/#using-loaders)，它能把`*.vue`文件转化为简单的javascript 模块用于安卓以及 iOS 平台。所有的特性和配置都是跟 [vue-loader](https://vue-loader-v14.vuejs.org/zh-cn/) 一样的。
+[weex-loader](https://github.com/apache/weex-loader) 是一个 webpack 的 [loader](https://webpack.js.org/concepts/loaders/#using-loaders)，它能把`*.vue`文件转化为简单的javascript 模块用于安卓以及 iOS 平台。所有的特性和配置都是跟 [vue-loader](https://vue-loader-v14.vuejs.org/zh-cn/) 一样的。
 
 需要注意的是，如果 Webpack 的 *entry* 配置项是一个 `*.vue` 文件的话，你仍需要传递一个额外的 `entry` 参数作为标记。
 
@@ -166,7 +170,7 @@
 5. 完成。
 
 **使用weex compile编译**
-1. 安装[weex-toolkit](https://weex.apache.org/zh/tools/toolkit.html#安装)：`npm install weex-toolkit -g`
+1. 安装[weex-cli](https://weex.apache.org/zh/develop/weex_cli.html)：`npm install weex-toolkit -g`
 2. 执行`weex compile [资源文件] [产物地址]`命令
 3. 完成。
 
diff --git a/docs/zh/tools/README.md b/docs/zh/tools/README.md
index c155a6f..13f9ecd 100644
--- a/docs/zh/tools/README.md
+++ b/docs/zh/tools/README.md
@@ -1,7 +1,7 @@
 <script>
 module.exports = {
   created(){
-    this.$router.push('/zh/tools/toolkit.html')
+    this.$router.push('/zh/tools/dotwe.html')
   }
 }
 </script>
\ No newline at end of file
