You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update README.md with additional headers and TOC (#294)
Added additional headers and reorganized README so that it's easier to follow from a local installation / deployment scenario perspective.
Added a table of contents with "jump-to" links for easier navigation of the document.
Copy file name to clipboardExpand all lines: README.md
+66-21Lines changed: 66 additions & 21 deletions
Original file line number
Diff line number
Diff line change
@@ -5,9 +5,26 @@
5
5
6
6
Parse Dashboard is a standalone dashboard for managing your Parse apps. You can use it to manage your [Parse Server](https://github.com/ParsePlatform/parse-server) apps and your apps that are running on [Parse.com](https://Parse.com).
*[Separating App Access Based on User Identity](#separating-app-access-based-on-user-identity)
18
+
*[Run with Docker](#run-with-docker)
19
+
*[Contributing](#contributing)
20
+
8
21
# Getting Started
9
22
10
-
[Node.js](https://nodejs.org) version >= 4.3 is required to run the dashboard. You also need to be using Parse Server version 2.1.4 or higher. Install the dashboard from `npm`.
23
+
[Node.js](https://nodejs.org) version >= 4.3 is required to run the dashboard. You also need to be using Parse Server version 2.1.4 or higher.
24
+
25
+
# Local Installation
26
+
27
+
Install the dashboard from `npm`.
11
28
12
29
```
13
30
npm install -g parse-dashboard
@@ -19,9 +36,14 @@ You can launch the dashboard for an app with a single command by supplying an ap
You can then visit the dashboard in your browser at http://localhost:4040. You may set the host, port and mount path by supplying the `--host`, `--port` and `--mountPath` options to parse-dashboard. You can use anything you want as the app name, or leave it out in which case the app ID will be used.
39
+
You may set the host, port and mount path by supplying the `--host`, `--port` and `--mountPath` options to parse-dashboard. You can use anything you want as the app name, or leave it out in which case the app ID will be used.
40
+
41
+
After starting the dashboard, you can visit http://localhost:4040 in your browser:
42
+
43
+

23
44
24
-
If you want to manage multiple apps from the same dashboard, you can start the dashboard with a config file. For example, you could put your info into a file called `parse-dashboard-config.json` and then start the dashboard using `parse-dashboard --config parse-dashboard-config.json`. The file should match the following format:
45
+
## Configuring Parse Dashboard
46
+
You can also start the dashboard from the command line with a config file. To do this, create a new file called `parse-dashboard-config.json` inside your local Parse Dashboard directory hierarchy. The file should match the following format:
25
47
26
48
```json
27
49
{
@@ -36,13 +58,19 @@ If you want to manage multiple apps from the same dashboard, you can start the d
36
58
}
37
59
```
38
60
39
-
You can also manage apps that on Parse.com from the same dashboard. In your config file, you will need to add the `restKey` and `javascriptKey` as well as the other paramaters, which you can find on `dashboard.parse.com`. Set the serverURL to `http://api.parse.com/1`:
61
+
You can then start the dashboard using `parse-dashboard --config parse-dashboard-config.json`.
62
+
63
+
## Managing Multiple Apps
64
+
65
+
Managing multiple apps from the same dashboard is also possible. Simply add additional entries into the `parse-dashboard-config.json` file's `"apps"` array.
66
+
67
+
You can manage self-hosted [Parse Server](https://github.com/ParsePlatform/parse-server) apps, *and* apps that are hosted on [Parse.com](http://parse.com/) from the same dashboard. In your config file, you will need to add the `restKey` and `javascriptKey` as well as the other paramaters, which you can find on `dashboard.parse.com`. Set the serverURL to `http://api.parse.com/1`:
40
68
41
69
```json
42
70
{
43
71
"apps": [
44
72
{
45
-
"serverURL": "https://api.parse.com/1",
73
+
"serverURL": "https://api.parse.com/1",// Hosted on Parse.com
46
74
"appId": "myAppId",
47
75
"masterKey": "myMasterKey",
48
76
"javascriptKey": "myJavascriptKey",
@@ -51,7 +79,7 @@ You can also manage apps that on Parse.com from the same dashboard. In your conf
51
79
"production": true
52
80
},
53
81
{
54
-
"serverURL": "http://localhost:1337/parse",
82
+
"serverURL": "http://localhost:1337/parse",// Self-hosted Parse Server
55
83
"appId": "myAppId",
56
84
"masterKey": "myMasterKey",
57
85
"appName": "My Parse Server App"
@@ -60,7 +88,9 @@ You can also manage apps that on Parse.com from the same dashboard. In your conf
60
88
}
61
89
```
62
90
63
-
Parse Dashboard also supports adding an optional icon for each app, so you can identify them easier in the list. To do so, you *must* use the configuration file, define an `iconsFolder` in it, and define the `iconName` parameter for each app (including the extension). The path of the `iconsFolder` is relative to the configuration file. To visualize what it means, in the following example `icons` is a directory located under the same directory as the configuration file:
91
+
## App Icon Configuration
92
+
93
+
Parse Dashboard supports adding an optional icon for each app, so you can identify them easier in the list. To do so, you *must* use the configuration file, define an `iconsFolder` in it, and define the `iconName` parameter for each app (including the extension). The path of the `iconsFolder` is relative to the configuration file. To visualize what it means, in the following example `icons` is a directory located under the same directory as the configuration file:
64
94
65
95
```json
66
96
{
@@ -77,19 +107,25 @@ Parse Dashboard also supports adding an optional icon for each app, so you can i
77
107
}
78
108
```
79
109
80
-

110
+
## Other Configuration Options
81
111
82
-
# Advanced Usage
112
+
You can set `appNameForURL` in the config file for each app to control the url of your app within the dashboard. This can make it easier to use bookmarks or share links on your dashboard.
83
113
84
-
## Other options
114
+
To change the app to production, simply set `production` to `true` in your config file. The default value is false if not specified.
85
115
86
-
You can set `appNameForURL` in the config file for each app to control the url of your app within the dashboard. This can make it easier to use bookmarks or share links on your dashboard. To change the app to production, simply set `production` to `true` in your config file. Defaults to false if not specified.
116
+
# Deploying Parse Dashboard
87
117
88
-
## Deploying the dashboard
118
+
## Preparing for Deployment
89
119
90
120
Make sure the server URLs for your apps can be accessed by your browser. If you are deploying the dashboard, then `localhost` urls will not work.
91
121
92
-
In order to securely deploy the dashboard without leaking your apps master key, you will need to use HTTPS and Basic Auth. You can do this by adding usernames and passwords for HTTP Basic Auth to your configuration file.
122
+
## Security Considerations
123
+
In order to securely deploy the dashboard without leaking your apps master key, you will need to use HTTPS and Basic Authentication.
124
+
125
+
The deployed dashboard detects if you are using a secure connection. If you are deploying the dashboard behind a load balancer or proxy that does early SSL termination, then the app won't be able to detect that the connection is secure. In this case, you can start the dashboard with the `--allowInsecureHTTP=1` option. You will then be responsible for ensureing that your proxy or load balancer only allows HTTPS.
126
+
127
+
### Configuring Basic Authentication
128
+
You can configure your dashboard for Basic Authentication by adding usernames and passwords your `parse-dashboard-config.json` configuration file:
93
129
94
130
```json
95
131
{
@@ -107,11 +143,10 @@ In order to securely deploy the dashboard without leaking your apps master key,
107
143
}
108
144
```
109
145
110
-
The deployed dashboard detects if you are using a secure connection. If you are deploying the dashboard behind a load balancer or proxy that does early SSL termination, then the app won't be able to detect that the connection is secure. In this case, you can start the dashboard with the `--allowInsecureHTTP=1` option. You will then be responsible for ensureing that your proxy or load balancer only allows HTTPS.
111
-
112
-
## Separating app access based on user identity
146
+
### Separating App Access Based on User Identity
147
+
If you have configured your dashboard to manage multiple applications, you can restrict the management of apps based on user identity.
113
148
114
-
If you want to restrict apps based on user identity, you can update your config file to match the following format:
149
+
To do so, update your `parse-dashboard-config.json` configuration file to match the following format:
115
150
116
151
```json
117
152
{
@@ -120,11 +155,21 @@ If you want to restrict apps based on user identity, you can update your config
If you are not familiar with Docker, ``--port 8080`` will be passed in as argument to the entrypoint to form the full command ``npm start -- --port 8080``. The application will start at port 8080 inside the container and port ``8080`` will be mounted to port ``80`` on your host machine.
152
197
153
-
##Contributing
198
+
# Contributing
154
199
155
200
We really want Parse to be yours, to see it grow and thrive in the open source community. Please see the [Contributing to Parse Dashboard guide](CONTRIBUTING.md).
0 commit comments