diff --git a/docs/diagrams/Bluewave Uptime Auth Flow.pdf b/docs/diagrams/Bluewave Uptime Auth Flow.pdf new file mode 100644 index 000000000..d7c7b45ca Binary files /dev/null and b/docs/diagrams/Bluewave Uptime Auth Flow.pdf differ diff --git a/docs/diagrams/Bluewave Uptime Auth Flow.png b/docs/diagrams/Bluewave Uptime Auth Flow.png new file mode 100644 index 000000000..32498b3b4 Binary files /dev/null and b/docs/diagrams/Bluewave Uptime Auth Flow.png differ diff --git a/docs/diagrams/Bluewave Uptime High Level Overview.pdf b/docs/diagrams/Bluewave Uptime High Level Overview.pdf new file mode 100644 index 000000000..1409d10fb Binary files /dev/null and b/docs/diagrams/Bluewave Uptime High Level Overview.pdf differ diff --git a/docs/diagrams/Bluewave Uptime High Level Overview.png b/docs/diagrams/Bluewave Uptime High Level Overview.png new file mode 100644 index 000000000..65a2866b7 Binary files /dev/null and b/docs/diagrams/Bluewave Uptime High Level Overview.png differ diff --git a/docs/diagrams/Bluewave Uptime JobQueue Flow.pdf b/docs/diagrams/Bluewave Uptime JobQueue Flow.pdf new file mode 100644 index 000000000..e39825f43 Binary files /dev/null and b/docs/diagrams/Bluewave Uptime JobQueue Flow.pdf differ diff --git a/docs/diagrams/Bluewave Uptime JobQueue Flow.png b/docs/diagrams/Bluewave Uptime JobQueue Flow.png new file mode 100644 index 000000000..8794017f0 Binary files /dev/null and b/docs/diagrams/Bluewave Uptime JobQueue Flow.png differ diff --git a/docs/diagrams/Bluewave Uptime Monitor Flow.pdf b/docs/diagrams/Bluewave Uptime Monitor Flow.pdf new file mode 100644 index 000000000..97d56d781 Binary files /dev/null and b/docs/diagrams/Bluewave Uptime Monitor Flow.pdf differ diff --git a/docs/diagrams/Bluewave Uptime Monitor Flow.png b/docs/diagrams/Bluewave Uptime Monitor Flow.png new file mode 100644 index 000000000..5cfc8bca8 Binary files /dev/null and b/docs/diagrams/Bluewave Uptime Monitor Flow.png differ diff --git a/docs/quickstart.md b/docs/quickstart.md index dd552d4f6..225f4fdb5 100644 --- a/docs/quickstart.md +++ b/docs/quickstart.md @@ -4,14 +4,14 @@ icon: sign-posts-wrench # Installing Uptime Manager - - ## Quickstart for users (quick method) 1. Download our [Docker compose file](https://github.com/bluewave-labs/bluewave-uptime/blob/develop/Docker/dist/docker-compose.yaml) 2. Run `docker compose up` to start the application 3. Now the application is running at `http://localhost` +--- + ## Quickstart for developers {% hint style="info" %} @@ -26,42 +26,46 @@ Make sure you change the directory to the specified directories, as paths in com ### Setting up Docker images 3. Change directory to the `Docker/dev` directory -4. Run `docker run -d -p 6379:6379 -v $(pwd)/redis/data:/data --name uptime_redis uptime_redis` -5. Run `docker run -d -p 27017:27017 -v $(pwd)/mongo/data:/data/db --name uptime_database_mongo uptime_database_mongo` +4. Build the docker images by running the `build_images.sh` script +5. Run `docker run -d -p 6379:6379 -v $(pwd)/redis/data:/data --name uptime_redis uptime_redis` +6. Run `docker run -d -p 27017:27017 -v $(pwd)/mongo/data:/data/db --name uptime_database_mongo uptime_database_mongo` ### Server setup 6. CD to `Server` directory, and run `npm install` -7. While in `Server` directory, create a `.env` file with the required environmental variables +7. While in `Server` directory, create a `.env` file with the [required environmental variables](#env-vars-server) 8. While in the `Server` directory, run `npm run dev` ### Client setup 9. CD to `Client` directory `run npm install` -10. While in the `Client` directory, create a `.env` file with the required environmental variables -11. While in the `Client` cirectory run `npm run dev` +10. While in the `Client` directory, create a `.env` file with the [required environmental variables](#env-vars-client) +11. While in the `Client` directory run `npm run dev` ### Access the application 12. Client is now running at `localhost:5173` 13. Server is now running at `localhost:5000` +--- + ## Manual installation ### Client installation 1. Change directory to the `Client` directory 2. Install all dependencies by running `npm install` +3. Add a `.env` file to the `Client` directory with the following options: #### Environment variables -| ENV Variable Name | Required/Optional | Type | Description | Accepted Values | -| ------------------------- | ----------------- | --------- | ------------------ | ---------------------------------- | -| VITE\_APP\_API\_BASE\_URL | Required | `string` | Base URL of server | {host}/api/v1 | -| VITE\_APP\_LOG\_LEVEL | Optional | `string` | Log level | `"none"`\|`"error"` \| `"warn"` \| | -| VITE\_APP\_DEMO | Optional | `boolean` | Demo server or not | `true`\|`false` \| | +| ENV Variable Name | Required/Optional | Type | Description | Accepted Values | +| --------------------- | ----------------- | --------- | ------------------ | ---------------------------------- | +| VITE_APP_API_BASE_URL | Required | `string` | Base URL of server | {host}/api/v1 | +| VITE_APP_LOG_LEVEL | Optional | `string` | Log level | `"none"`\|`"error"` \| `"warn"` \| | +| VITE_APP_DEMO | Optional | `boolean` | Demo server or not | `true`\|`false` \| | -#### Starting the development server +#### Starting the Client development server 1. Run `npm run dev` to start the development server. @@ -69,6 +73,7 @@ Make sure you change the directory to the specified directories, as paths in com 1. Change the directory to the `Server` directory 2. Install all dependencies by running `npm install` +3. Add a `.env` file to the `Server` directory with the following options: #### Environment variables @@ -76,7 +81,7 @@ Configure the server with the following environmental variables:
| ENV Variable Name | Required/Optional | Type | Description | Accepted Values |
|---|---|---|---|---|
| CLIENT_HOST | Required | string | Frontend Host | |
| JWT_SECRET | Required | string | JWT secret | |
| DB_TYPE | Optional | string | Specify DB to use | MongoDB | FakeDB |
| DB_CONNECTION_STRING | Required | string | Specifies URL for MongoDB Database | |
| PORT | Optional | integer | Specifies Port for Server | |
| LOGIN_PAGE_URL | Required | string | Login url to be used in emailing service | |
| REDIS_HOST | Required | string | Host address for Redis database | |
| REDIS_PORT | Required | integer | Port for Redis database | |
| TOKEN_TTL | Optional | string | Time for token to live | In vercel/ms format https://github.com/vercel/ms |
| PAGESPEED_API_KEY | Optional | string | API Key for PageSpeed requests | |
| SYSTEM_EMAIL_HOST | Required | string | Host to send System Emails From | |
| SYSTEM_EMAIL_PORT | Required | number | Port for System Email Host | |
| SYSTEM_EMAIL_ADDRESS | Required | string | System Email Address | |
| SYSTEM_EMAIL_PASSWORD | Required | string | System Email Password |