:memo: Add Synopsis chapter.
authorCheng Zhao <zcbenz@gmail.com>
Mon, 5 May 2014 06:49:05 +0000 (14:49 +0800)
committerCheng Zhao <zcbenz@gmail.com>
Mon, 5 May 2014 06:49:05 +0000 (14:49 +0800)
docs/README.md
docs/api/synopsis.md [new file with mode: 0644]
docs/tutorial/quick-start.md

index 816febb..ca7eea3 100644 (file)
@@ -1,22 +1,14 @@
-# Atom Shell documents
-
 ## Tutorials
 
 * [Quick start](tutorial/quick-start.md)
 * [Application distribution](tutorial/application-distribution.md)
 * [Use native node modules](tutorial/use-native-node-modules.md)
 
-## Development
-
-* [Coding style](development/coding-style.md)
-* [Source code directory structure](development/source-code-directory-structure.md)
-* [Build instructions (Mac)](development/build-instructions-mac.md)
-* [Build instructions (Windows)](development/build-instructions-windows.md)
-* [Build instructions (Linux)](development/build-instructions-linux.md)
-
 ## API references
 
-Browser side modules:
+* [Synopsis](api/synopsis.md)
+
+Modules for browser side:
 
 * [app](api/app.md)
 * [auto-updater](api/auto-updater.md)
@@ -28,14 +20,22 @@ Browser side modules:
 * [power-monitor](api/power-monitor.md)
 * [protocol](api/protocol.md)
 
-Renderer side modules:
+Modules for web page:
 
 * [ipc (renderer)](api/ipc-renderer.md)
 * [remote](api/remote.md)
 
-Common modules:
+Modules for both sides:
 
 * [clipboard](api/clipboard.md)
 * [crash-reporter](api/crash-reporter.md)
 * [screen](api/screen.md)
 * [shell](api/shell.md)
+
+## Development
+
+* [Coding style](development/coding-style.md)
+* [Source code directory structure](development/source-code-directory-structure.md)
+* [Build instructions (Mac)](development/build-instructions-mac.md)
+* [Build instructions (Windows)](development/build-instructions-windows.md)
+* [Build instructions (Linux)](development/build-instructions-linux.md)
diff --git a/docs/api/synopsis.md b/docs/api/synopsis.md
new file mode 100644 (file)
index 0000000..01e9f83
--- /dev/null
@@ -0,0 +1,45 @@
+# Synopsis
+
+All [node.js's built-in modules](http://nodejs.org/api/) are available in
+atom-shell, and third-party node modules are fully supported too (including the
+[native modules](../tutorial/use-native-node-modules.md)).
+
+And atom-shell also provided some extra built-in modules for developing native
+desktop applications, some modules are only available on browser side, and some
+are only available on renderer side, and some can be used by both sides. The
+basic rule is: if a module is GUI or low level system related, then it should
+be only available on browser side. You need to be familiar with the concept of
+[browser side](../tutorial/quick-start.md#the-browser-side) to be able to use
+those modules.
+
+The browser side script is just like a normal `node.js` script:
+
+```javascript
+var app = require('app');
+var BrowserWindow = require('browser-window');
+
+var window = null;
+
+app.on('ready', function() {
+  window = new BrowserWindow({width: 800, height: 600});
+  window.loadUrl('https://github.com');
+});
+
+```
+
+And the web page is no different to a normal web page, except for the extra
+ability to use node modules:
+
+```html
+<!DOCTYPE html>
+<html>
+  <body>
+    <script>
+      var remote = require('remote');
+      console.log(remote.require('app').getVersion());
+    </script>
+  </body>
+</html>
+```
+
+To run your app, read [Run your app](../tutorial/quick-start.md#run-your-app).
index fb4f61f..801ad75 100644 (file)
@@ -131,17 +131,17 @@ binary to execute your app directly.
 On Window:
 
 ```cmd
-$ .\atom-shell\atom.exe app
+$ .\atom-shell\atom.exe path-to-app\
 ```
 
 On Linux:
 
 ```bash
-$ ./atom-shell/atom app
+$ ./atom-shell/atom path-to-app/
 ```
 
 On Mac OS X:
 
 ```bash
-$ ./Atom.app/Contents/MacOS/Atom app
+$ ./Atom.app/Contents/MacOS/Atom path-to-app/
 ```