|
1 |
| -# compass |
| 1 | +# compass [![][travis_img]][travis_url] |
2 | 2 |
|
3 |
| -Explore your MongoDB. |
| 3 | +> Explore your MongoDB. |
4 | 4 |
|
5 |
| -## Developing |
| 5 | +## Development |
6 | 6 |
|
7 | 7 | 1. Follow the setup instructions for [OSX][setup-osx], [Windows][setup-windows] or [Linux][setup-linux].
|
8 |
| -2. Clone this repo |
| 8 | +2. Run `git clone [email protected]:10gen/compass.git ~/compass` to get the source code |
9 | 9 | 3. Run `npm install` to install dependencies
|
10 |
| -4. Run `npm start` to launch |
| 10 | +4. Run `npm start` to build the app and launch it |
11 | 11 |
|
12 |
| -## Modules |
| 12 | +Already setup and prefer a simple copy and paste? |
| 13 | + |
| 14 | +```bash |
| 15 | +git clone [email protected]:10gen/compass.git ~/compass ; |
| 16 | +cd ~/compass; |
| 17 | +npm install; |
| 18 | +npm start; |
| 19 | +``` |
| 20 | + |
| 21 | +## Key Modules |
13 | 22 |
|
14 | 23 | <dl>
|
15 |
| - <dt><a href="https://github.com/10gen/scout">Compass</a></dt> |
| 24 | + <dt><a href="https://github.com/10gen/compass">compass</a></dt> |
16 | 25 | <dd>
|
17 | 26 | The default Ampersand.js single-page application people actually interact with.
|
18 |
| - <a href="https://github.com/10gen/scout/blob/dev/src/models/scout-client-mixin.js">ScoutClientMixin</a> |
19 |
| - connects the <a href="https://github.com/10gen/scout/tree/dev/src/models">models</a> to |
20 |
| - <a href="https://github.com/mongodb-js/scout-client">scout-client</a>. |
21 | 27 | </dd>
|
22 |
| - <dt><a href="https://github.com/mongodb-js/scout-brain">scout-brain</a></dt> |
| 28 | + <dt><a href="https://github.com/10gen/scout-client">scout-client</a></dt> |
23 | 29 | <dd>
|
24 |
| - Needs to be broken down into topic based models but for now, this is where |
25 |
| - all the business logic code lives we want to share between modules running |
26 |
| - in the browser, nodejs, or electron. |
27 |
| - </dd> |
28 |
| - <dt><a href="https://github.com/mongodb-js/scout-client">scout-client</a></dt> |
29 |
| - <dd> |
30 |
| - Provides a clean API for <a href="https://github.com/mongodb-js/scout-server">scout-server</a> |
| 30 | + Provides a clean API for `compass` to talk to <a href="https://github.com/mongodb-js/scout-server">scout-server</a> |
31 | 31 | that works in the browser, nodejs, or electron.
|
32 | 32 | </dd>
|
33 |
| - <dt><a href="https://github.com/mongodb-js/scout-server">scout-server</a></dt> |
| 33 | + <dt><a href="https://github.com/10gen/scout-server">scout-server</a></dt> |
34 | 34 | <dd>
|
35 |
| - An express.js application which provides REST and socket.io connectivity |
| 35 | + An express.js application which provides REST and socket.io endpoints |
36 | 36 | to the mongodb node.js driver.
|
37 | 37 | </dd>
|
| 38 | + <dt><a href="https://github.com/mongodb-js/mongodb-connection-model">mongodb-connection-model</a></dt> |
| 39 | + <dd> |
| 40 | + A shared Ampersand.js model used by `compass`, `scout-client`, and `scout-server` that encapsulates |
| 41 | + all of the business logic for generating valid parameters to hand to the driver to connect to MongoDB. |
| 42 | + </dd> |
| 43 | + <dt><a href="https://github.com/mongodb-js/mongodb-collection-sample">mongodb-collection-sample</a></dt> |
| 44 | + <dd> |
| 45 | + Provides a single interface for `scout-server` to request a sample of documents from a collection that automatically uses the `$sample` operator if available, falling back to a client-side reservoir sample. |
| 46 | + </dd> |
| 47 | + <dt><a href="https://github.com/mongodb-js/mongodb-schema">mongodb-schema</a></dt> |
| 48 | + <dd> |
| 49 | + `compass` uses `scout-client` to get a sample of documents from `scout-server` via `mongodb-collection-sample` which is piped into `mongodb-schema` to create a probabilistic representation of what the schema for a given collection most likely is. |
| 50 | + </dd> |
38 | 51 | </dl>
|
39 | 52 |
|
| 53 | + |
40 | 54 | ## Building Releases
|
41 | 55 |
|
42 |
| -To compile electron + the app and the installer for your current platform: |
| 56 | +After you've made some local changes, the next thing you'll probably want to do |
| 57 | +is create an artifact to share. There is only one command you need to run to compile the app, |
| 58 | +sign it if the signing certificate is available on your machine, and generate a single file |
| 59 | +installer for your current platform: |
43 | 60 |
|
44 | 61 | ```bash
|
45 |
| -npm run release |
| 62 | +cd ~/compass; |
| 63 | +npm run release; |
46 | 64 | ```
|
47 | 65 |
|
48 | 66 | [setup-osx]: https://github.com/mongodb-js/mongodb-js/blob/master/docs/setup.md#osx-setup
|
49 | 67 | [setup-windows]: https://github.com/mongodb-js/mongodb-js/blob/master/docs/setup.md#windows-setup
|
50 | 68 | [setup-linux]: https://github.com/mongodb-js/mongodb-js/blob/master/docs/setup.md#linux-setup
|
| 69 | +[travis_img]: https://magnum.travis-ci.com/10gen/compass.svg?token=q2zsnxCbboarF6KYRYxM&branch=master |
| 70 | +[travis_url]: https://magnum.travis-ci.com/10gen/compass |
0 commit comments