diff --git a/.markdownlint.json b/.markdownlint.json index 3fe319af..eb4f2f23 100644 --- a/.markdownlint.json +++ b/.markdownlint.json @@ -9,7 +9,8 @@ "MD033": { "allowed_elements": [ "br", - "kbd" + "kbd", + "IIcon" ] } } diff --git a/.vscode/settings.json b/.vscode/settings.json index 91ec2c29..12e83b1b 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -37,9 +37,11 @@ "sidenav", "tideline", "Tobikiss", + "TYPEORM", "udev", "udevadm", "Unraid", + "Untruncated", "Vetur", "webapps", "websockets", diff --git a/docs/community/sponsor-us.mdx b/docs/community/sponsor-us.mdx new file mode 100644 index 00000000..2d868971 --- /dev/null +++ b/docs/community/sponsor-us.mdx @@ -0,0 +1,28 @@ +--- +title: Sponsor us! +description: Sponsor the FDM Monster team +slug: /community/sponsor-us +--- + +## FDM Monster + +Sponsoring the project helps keeping the project alive. These funds will be used for the domain and hosting. + +- Donating a one-time or monthly using GitHub: [![GitHub Sponsors](https://img.shields.io/github/sponsors/fdm-monster?logo=github)](https://github.com/sponsors/fdm-monster) + +## Individual members + +### David Zwart + +Founder / lead developer + +- Donating a one-time or monthly using GitHub: [![GitHub Sponsors](https://img.shields.io/github/sponsors/davidzwa?logo=github)](https://github.com/sponsors/davidzwa) +- Donating a coffee David via Ko-Fi: [![Ko-Fi](https://shields.io/badge/ko--fi-Buy_me_a_coffee-ff5f5f?logo=ko-fi)](https://ko-fi.com/davidzwa) + +### Maurice Kevenaar + +Independent advisor and friend of the project / Community manager / Documentation maintainer + +- Donating a one-time or monthly using GitHub: [![GitHub Sponsors](https://img.shields.io/github/sponsors/mkevenaar?logo=github)](https://github.com/sponsors/mkevenaar) +- Donating a coffee Maurice via Buy me a Coffee: [![Buy me a Coffee](https://img.shields.io/badge/Buy_Me_A_Coffee-mkevenaar-FFDD00?logo=buy-me-a-coffee)](https://www.buymeacoffee.com/mkevenaar) +- Donating monthly using Patreon: [![Patreon](https://img.shields.io/badge/Patreon-mkevenaar-red?logo=Patreon)](https://www.patreon.com/mkevenaar) diff --git a/docs/configuration/index.mdx b/docs/configuration/index.mdx deleted file mode 100644 index 71b1cdad..00000000 --- a/docs/configuration/index.mdx +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: Configuration -description: Configure FDM Monster -slug: /configuration ---- - -Before starting the FDM Monster server it is possible to adjust configuration. -Once the server has started, you can adjust settings on the settings page. - -The webapp client bundle can be updated on the fly, without restarting the server. - -```mdx-code-block -import DocCardList from '@theme/DocCardList'; - - -``` diff --git a/docs/developer_setup/setup_octoprint.mdx b/docs/developer_setup/setup_octoprint.mdx index fe0558b8..2b89f568 100644 --- a/docs/developer_setup/setup_octoprint.mdx +++ b/docs/developer_setup/setup_octoprint.mdx @@ -32,4 +32,4 @@ _OctoPrint dashboard with VIRTUAL printer available._ ## Next Steps -Continue with the [Creating Printers](../software_usage/creating_printers.mdx) setup. +Continue with the [Creating Printers](../old_software_usage/creating_printers.mdx) setup. diff --git a/docs/installing/deprecated/index.mdx b/docs/installing/deprecated/index.mdx new file mode 100644 index 00000000..70577748 --- /dev/null +++ b/docs/installing/deprecated/index.mdx @@ -0,0 +1,15 @@ +--- +title: Deprecated +description: Deprecated documentation +slug: /installing/deprecated +--- + +:::danger +Deprecated documentation. This documentation is there for your convenience. This documentation is provided as-is and will not be supported. +::: + +```mdx-code-block +import DocCardList from '@theme/DocCardList'; + + +``` diff --git a/docs/installing/linux_service.mdx b/docs/installing/deprecated/linux_service.mdx similarity index 85% rename from docs/installing/linux_service.mdx rename to docs/installing/deprecated/linux_service.mdx index c6d69387..8ca0e974 100644 --- a/docs/installing/linux_service.mdx +++ b/docs/installing/deprecated/linux_service.mdx @@ -1,8 +1,9 @@ --- title: Linux Service description: How to use a Linux service for your FDM-Monster environment (deprecated) -slug: /installing/linux_service -pagination_next: configuration/index +slug: /installing/deprecated/linux_service +pagination_prev: installing/deprecated/index +pagination_next: installing/deprecated/preconfiguration --- :::danger @@ -15,7 +16,7 @@ The scripts on this page are available on GitHub in [installations/fdm-monster-n ![A running instance of FDM Monster 3D Printing Server with the Printing Grid opened. Only one disabled printer is shown on the grid and it's disabled. -The rest of the grid is showing empty tiles.](../images/server-running.png) +The rest of the grid is showing empty tiles.](../../images/server-running.png) *This is the FDM Monster web app after installation (visit [http://127.0.0.1:4000](http://127.0.0.1:4000))* ## Preparation of the Linux Service installation @@ -57,7 +58,7 @@ Each configuration change requires you to run the update script: npm i ``` -Please read the [Environment configuration](../configuration/preconfiguration.mdx) section for adjusting the `.env` file. +Please read the [Environment configuration](./preconfiguration.mdx) section for adjusting the `.env` file. ## Updating the server diff --git a/docs/configuration/preconfiguration.mdx b/docs/installing/deprecated/preconfiguration.mdx similarity index 87% rename from docs/configuration/preconfiguration.mdx rename to docs/installing/deprecated/preconfiguration.mdx index e269d150..252a24fa 100644 --- a/docs/configuration/preconfiguration.mdx +++ b/docs/installing/deprecated/preconfiguration.mdx @@ -1,7 +1,17 @@ --- title: Pre-configuring the FDM Monster Server description: Pre-configuration -slug: /configuration/preconfiguration +slug: /installing/deprecated/preconfiguration +pagination_prev: installing/deprecated/index +pagination_next: software_usage/index +--- + +:::note Difficulty +Difficulty: **advanced** + +Not required when using the Docker or MonsterPi installations. +::: + --- :::warning @@ -36,23 +46,29 @@ Also note that no data is migrated from MongoDB to SQLite. You can use YAML expo This new mode is experimental, although it has been tested quite a bit. We hope you are in the position to provide feedback -in case of errors or unexpected behaviour! +in case of errors or unexpected behavior! ::: The following variables are read and used by FDM Monster at startup. Always restart your server after a change. - `MONGO` (Optional, required before 1.6.x) **the connection to mongodb**. For example: -> `MONGO=mongodb://127.0.0.1:27017/fdm-monster` + ```dotenv + MONGO=mongodb://127.0.0.1:27017/fdm-monster + ``` - `ENABLE_EXPERIMENTAL_TYPEORM` (Optional) **a flag indicating SQLite should be used instead of MongoDB. Setting it to exactly `true` will enable this new mode.** -- `ENABLE_EXPERIMENTAL_TYPEORM=true` + ```dotenv + ENABLE_EXPERIMENTAL_TYPEORM=true + ``` - `SERVER_PORT` (Optional, default=4000) **the port of the local FDM Monster website**. For example: -> `SERVER_PORT=4000` + ```dotenv + SERVER_PORT=4000 + ``` ## The `.env` file @@ -103,5 +119,5 @@ services: - SERVER_PORT: 4000 ``` -Please continue by reading the [Docker Compose section](../installing/docker_compose.mdx) for more information on how +Please continue by reading the [Docker Compose section](../docker_compose.mdx) for more information on how to setup FDM Monster and MongoDB with docker-compose. diff --git a/docs/installing/windows_service.mdx b/docs/installing/deprecated/windows_service.mdx similarity index 93% rename from docs/installing/windows_service.mdx rename to docs/installing/deprecated/windows_service.mdx index c2cb77f4..e8313c31 100644 --- a/docs/installing/windows_service.mdx +++ b/docs/installing/deprecated/windows_service.mdx @@ -1,8 +1,9 @@ --- title: Windows Service description: How to use a Windows service for your FDM-Monster environment (deprecated) -slug: /installing/windows_service -pagination_next: configuration/index +slug: /installing/deprecated/windows_service +pagination_prev: installing/deprecated/index +pagination_next: installing/deprecated/preconfiguration --- :::danger @@ -20,7 +21,7 @@ in [installations/fdm-monster-node-windows](https://github.com/fdm-monster/fdm-m ![A running instance of FDM Monster 3D Printing Server with the Printing Grid opened. Only one disabled printer is shown on the grid and it's disabled. -The rest of the grid is showing empty tiles.](../images/server-running.png) +The rest of the grid is showing empty tiles.](../../images/server-running.png) *This is the FDM Monster web app after installation (visit [http://localhost:4000](http://localhost:4000))* ## Preparation for the Windows service installation @@ -127,7 +128,7 @@ containing the description `FDM Monster` in Task Manager. The service should have `Status: Running``. If this is not the case, something went wrong. Reach out to us via [Discord](https://discord.gg/mwA8uP8CMc) for more help! -![Windows Task Manager showing the Services tab on which a service named fdmmonster.exe is showing status Running](../images/task-manager.png) +![Windows Task Manager showing the Services tab on which a service named fdmmonster.exe is showing status Running](../../images/task-manager.png) If things are working, you can open FDM Monster with this URL: [http://localhost:4000](http://localhost:4000) or [http://127.0.0.1:4000](http://127.0.0.1:4000). @@ -170,5 +171,5 @@ Run the script as follows: ./uninstall-fdm-monster.ps1 ``` -Please continue to [Environment configuration](../configuration/preconfiguration.mdx) to change the environment +Please continue to [Environment configuration](./preconfiguration.mdx) to change the environment configuration of the FDM Monster server. diff --git a/docs/installing/docker_compose.mdx b/docs/installing/docker_compose.mdx index 9f04ef25..2a9aaa82 100644 --- a/docs/installing/docker_compose.mdx +++ b/docs/installing/docker_compose.mdx @@ -2,7 +2,8 @@ title: Docker and Docker Compose description: How to use Docker for your FDM-Monster environment slug: /installing/docker_compose -pagination_next: configuration/index +pagination_prev: installing/index +pagination_next: software_usage/index --- :::info diff --git a/docs/installing/monsterpi.mdx b/docs/installing/monsterpi.mdx index 838a7164..8669d662 100644 --- a/docs/installing/monsterpi.mdx +++ b/docs/installing/monsterpi.mdx @@ -2,7 +2,8 @@ title: MonsterPi for Raspberry Pi description: How to setup MonsterPi for your FDM-Monster environment slug: /installing/monsterpi -pagination_next: configuration/index +pagination_prev: installing/index +pagination_next: software_usage/index --- [MonsterPi](https://github.com/fdm-monster/MonsterPi) is a [Raspberry Pi](https://www.raspberrypi.org/) image built @@ -15,7 +16,7 @@ page. ## Latest Version -[![Latest Version](https://img.shields.io/github/v/release/fdm-monster/monsterpi.svg?color=d52828&label=stable)](https://github.com/fdm-monster/monsterpi/releases/latest) +[![Latest Version](https://img.shields.io/github/v/release/fdm-monster/monsterpi.svg?color=1eb6c3&label=stable)](https://github.com/fdm-monster/monsterpi/releases/latest) The downloaded file needs to be unzipped before flashing it to your SD Card. Use your favorite unzipping application to extract the files. @@ -37,6 +38,10 @@ Steps: 1) Alternatively, you can visit [http://monsterpi.local](http://monsterpi.local) or [https://monsterpi.local (Self-Signed SSL Certificate)](https://monsterpi.local) to access FDM Monster +:::info +You cannot change the default username and password using the Raspberry Pi Imager. The default username and password will still be `pi` and `raspberry`. This is due to a limitation of using `Ubuntu` instead of `RaspberryPiOS`. +::: + ## Upgrading FDM Monster in MonsterPi :::warning @@ -86,11 +91,11 @@ Here are the steps to take: 1) Go to the import/export dialog to get the `.yaml` file as a download. 1) Check the file for missing or incorrect properties. Correct the mistakes with a text editor and save. -1) Refer to [YAML Import and Export](../configuration/yaml_import_export.mdx) for more details. +1) Refer to [YAML Import and Export](../software_usage/yaml_import_export.mdx) for more details. 1) Ensure your .yaml is ready to be imported. 1) Flash a new SD card with the installation steps [above](#installing-monsterpi) 1) Ensure your MonsterPi is working. Proceed through the setup and create an account. -1) Import the YAML file according to [YAML Import and Export](../configuration/yaml_import_export.mdx#user-interface) for the import. +1) Import the YAML file according to [YAML Import and Export](../software_usage/yaml_import_export.mdx#user-interface) for the import. 1) Your printers and floors will reappear. ### MonsterPi Version 0.2.0 -> 0.3.0+ diff --git a/docs/software_usage/creating_printers.mdx b/docs/old_software_usage/creating_printers.mdx similarity index 100% rename from docs/software_usage/creating_printers.mdx rename to docs/old_software_usage/creating_printers.mdx diff --git a/docs/old_software_usage/index.mdx b/docs/old_software_usage/index.mdx new file mode 100644 index 00000000..a388ff20 --- /dev/null +++ b/docs/old_software_usage/index.mdx @@ -0,0 +1,30 @@ +--- +title: Software Usage +description: FDM Monster software usage +slug: /software_usage +--- + +The FDM Monster webapp is a web application that can be used to manage your 3D printers. It is designed to be used on a +desktop computer, and in the future it is going to be suitable for use on a tablet or mobile phone. + +## Creating Printers + +Please read the [Creating Printers](./creating_printers.mdx) section for more information. +After creating a printer, you can place it on a floor. + +## Organizing Floors + +Please read the [Organizing Floors](./organizing_floors.mdx) section for more information. + +## Printing one GCode file + +To print a file on an OctoPrint, you can upload it to the printer by dragging and dropping it on the printer. + +**Batch print** +You can also upload it to the printer by clicking on the printer to select it, +and then drag and drop the file in the file upload area on the top. This allows you to upload a file to multiple +printers at once. + +**Batch reprint** +You can also reprint a file on multiple printers at once by clicking on all printers involved to select them. +Then click the reprint button in the top bar. This will reprint the last file that was printed on all selected printers. diff --git a/docs/software_usage/organizing_floors.mdx b/docs/old_software_usage/organizing_floors.mdx similarity index 100% rename from docs/software_usage/organizing_floors.mdx rename to docs/old_software_usage/organizing_floors.mdx diff --git a/docs/software_usage/first-time-setup.mdx b/docs/software_usage/first-time-setup.mdx new file mode 100644 index 00000000..a1e38c3a --- /dev/null +++ b/docs/software_usage/first-time-setup.mdx @@ -0,0 +1,55 @@ +--- +title: First Time Setup +description: First time startup wizard +slug: /software_usage/first-time-setup +--- + +After you have installed FDM Monster, you'll need to head to the FDM Monster URL. This URL depends on your installation method. + +The first time setup steps consists of 3 steps in total. + +## Introduction + +When going to the web application for the first time, you will be greeted with the image below. Click on the **[START SETUP]** button to get started! + +![First Time Setup Introduction step](./images/fts-step1.png) + +## Login and registration + +This step is used to create the admin account and initial login settings. The settings are described below. + +![First Time Setup Login and registration step](./images/fts-step2.png) + +### Login + +- **Enable Login** - this setting is enabled by default, you could disable this to have no logins required for FDM Monster. + :::danger + FDM Monster Team advises you to keep this enabled for security reasons. + ::: +- **Enable Registration** - this setting allows other users to register an account on your FDM Monster installation. If your environment requires so, you could enable this setting. + +### Admin account + +- **Username** - this is set, by default, to admin. Depending on the public exposure of FDM Monster, this value should be changed to something unique +- **Password** - this is the password for the admin account. + :::info + FDM Monster Team advises you to create a strong password and keep it in a safe place + ::: +- **Repeat Password** - repeat the password for the admin account. This should be the same as the previous one. + +### Buttons + +- **[BACK]** - Return to the [previous](#introduction) screen. +- **[VERIFY & SUBMIT]** - Submit the changes and continue. This button will be enabled once all mandatory fields are filled in + +## Summary + +The summary step is shown. Only one button is available. Click on the **[LET'S CONTINUE]** button to continue to the login screen + +![First Time Setup Summary page](./images/fts-step3.png) + +## Login to your account + +After you completed the First Time Setup steps, you'll be sent over to the **Login to your account** window, unless you have opted out to login. + +![FDM Monster login window](./images/fts-login.png) diff --git a/docs/software_usage/getting-started.mdx b/docs/software_usage/getting-started.mdx new file mode 100644 index 00000000..a4b15f66 --- /dev/null +++ b/docs/software_usage/getting-started.mdx @@ -0,0 +1,62 @@ +--- +title: Getting started +description: Quick start after FDM Monster installation +slug: /software_usage/getting-started +--- + +First start with the [Installation](../installing/index.mdx). Once installed, complete the [First Time Setup](./first-time-setup.mdx) wizard, you'll be greeted with an empty FDM Monster instance. + +:::warning +This guide will not help you setup your OctoPrint or Moonraker instance. There are so many variations on how you could set those up, it's beyond the scope of the documentation. For setting up OctoPrint or Moonraker, please follow their documentation. + +We also assume you have basic knowledge on how to operate your OctoPrint and/or Moonraker installations. +::: + +![FDM Monster Home](./menu/home/images/home.png) + +:::info +If you only have Moonraker printers, these steps are slightly different. You'll need to enable [Moonraker](./moonraker.mdx) support first +::: + +The getting started guide will not have instructions for setting up your shelving units. For more information about setting these up, have a look at the [Grid Settings](./menu/settings/grid_settings.mdx) page. + +There should be a button `YOU HAVE NO PRINTERS. CLICK HERE TO START` on top of your screen. This is our starting point. When you press that button, you will be sent to the ** Printers** page. This page allows you to add your printers. + +![FDM Monster Printers page](./menu/printers/images/printers.png) + +On this page, we are going to click the ** CREATE PRINTER** button. + +![New Printer Dialog](./menu/printers/images/new-printer-dialog.png) + +:::note +The Printer name is generated. This name will be different each time you open the dialog. +::: + +Adjust the fields described below, according to your needs. + +- **Name** The name of your printer. Should be unique within FDM Monster. This is how you can identify your printer. +- **Enabled** Checkbox to enable or disable your printer +- **Printer URL** The full URL to your printer. For OctoPrint this is usually the same URL as you use to access your OctoPrint web interface +- **API Key** A newly generated Application Key for your OctoPrint installation. Advanced documentation can be found [here](https://docs.octoprint.org/en/master/bundledplugins/appkeys.html) + +![New Printer Dialog Filled](./menu/printers/images/new-printer-dialog-filled.png) + +Once all fields are correctly populated, press the **TEST CONNECTION** button. If everything is correct, all checks should pass + +![New Printer Dialog all checks passed](./menu/printers/images/all-checks-passed.png) + +Click on the **CREATE** button. + +If you have done everything correctly one printer should be visible in the overview. + +![FDM Monster Printers overview with one printer](./menu/printers/images/printers-added-printer.png) + +After adding your printer, you'll need to place your printer on your floor and shelving unit. You'll need to go back to the ** Home** page. Click on the **** icon on the left. + +![FDM Monster Home with unplaced printers](./menu/home/images/home-printer-added-not-floored.png) + +For now, we are going to keep it simple and just add the printer to the top left tile. + +On the top right of your window, a slider **Grid Edit Mode** should be available. By enabling that slider, you should be able to move printers to any tile you wish. After enabling that slider, Drag and Drop your printer into the top left tile. Once completed, disable the **Grid Edit Mode** slider. + +![FDM Monster Home with placed printer](./menu/home/images/home-printer-added-floored.png) diff --git a/docs/software_usage/images/fts-login.png b/docs/software_usage/images/fts-login.png new file mode 100644 index 00000000..dbeda351 Binary files /dev/null and b/docs/software_usage/images/fts-login.png differ diff --git a/docs/software_usage/images/fts-step1.png b/docs/software_usage/images/fts-step1.png new file mode 100644 index 00000000..26d90a5d Binary files /dev/null and b/docs/software_usage/images/fts-step1.png differ diff --git a/docs/software_usage/images/fts-step2.png b/docs/software_usage/images/fts-step2.png new file mode 100644 index 00000000..13f77f22 Binary files /dev/null and b/docs/software_usage/images/fts-step2.png differ diff --git a/docs/software_usage/images/fts-step3.png b/docs/software_usage/images/fts-step3.png new file mode 100644 index 00000000..e597d5f4 Binary files /dev/null and b/docs/software_usage/images/fts-step3.png differ diff --git a/docs/software_usage/index.mdx b/docs/software_usage/index.mdx index a388ff20..c4cc80ae 100644 --- a/docs/software_usage/index.mdx +++ b/docs/software_usage/index.mdx @@ -1,30 +1,17 @@ --- title: Software Usage -description: FDM Monster software usage -slug: /software_usage +description: FDM Monster Software usage +slug: /configuration +pagination_prev: installing/index --- -The FDM Monster webapp is a web application that can be used to manage your 3D printers. It is designed to be used on a -desktop computer, and in the future it is going to be suitable for use on a tablet or mobile phone. +Before starting the FDM Monster server it is possible to adjust configuration. +Once the server has started, you can adjust settings on the settings page. -## Creating Printers +The webapp client bundle can be updated on the fly, without restarting the server. -Please read the [Creating Printers](./creating_printers.mdx) section for more information. -After creating a printer, you can place it on a floor. +```mdx-code-block +import DocCardList from '@theme/DocCardList'; -## Organizing Floors - -Please read the [Organizing Floors](./organizing_floors.mdx) section for more information. - -## Printing one GCode file - -To print a file on an OctoPrint, you can upload it to the printer by dragging and dropping it on the printer. - -**Batch print** -You can also upload it to the printer by clicking on the printer to select it, -and then drag and drop the file in the file upload area on the top. This allows you to upload a file to multiple -printers at once. - -**Batch reprint** -You can also reprint a file on multiple printers at once by clicking on all printers involved to select them. -Then click the reprint button in the top bar. This will reprint the last file that was printed on all selected printers. + +``` diff --git a/docs/software_usage/menu/cameras/index.mdx b/docs/software_usage/menu/cameras/index.mdx new file mode 100644 index 00000000..d78b16db --- /dev/null +++ b/docs/software_usage/menu/cameras/index.mdx @@ -0,0 +1,6 @@ +--- +title: Cameras +description: FDM Monster Cameras +slug: /software_usage/menu/cameras +--- + diff --git a/docs/software_usage/menu/home/images/home-printer-added-floored.png b/docs/software_usage/menu/home/images/home-printer-added-floored.png new file mode 100644 index 00000000..7ec1b1af Binary files /dev/null and b/docs/software_usage/menu/home/images/home-printer-added-floored.png differ diff --git a/docs/software_usage/menu/home/images/home-printer-added-not-floored.png b/docs/software_usage/menu/home/images/home-printer-added-not-floored.png new file mode 100644 index 00000000..4fd9b447 Binary files /dev/null and b/docs/software_usage/menu/home/images/home-printer-added-not-floored.png differ diff --git a/docs/software_usage/menu/home/images/home.png b/docs/software_usage/menu/home/images/home.png new file mode 100644 index 00000000..ce8138f5 Binary files /dev/null and b/docs/software_usage/menu/home/images/home.png differ diff --git a/docs/software_usage/menu/home/index.mdx b/docs/software_usage/menu/home/index.mdx new file mode 100644 index 00000000..d0bf02ae --- /dev/null +++ b/docs/software_usage/menu/home/index.mdx @@ -0,0 +1,19 @@ +--- +title: Home +description: FDM Monster Home +slug: /software_usage/menu/home +--- + +![FDM Monster Home screen](./images/home.png) + +The FDM Monster home screen is the single pane of view to monitor your farm. + +:::tip +The `DEFAULT FLOOR` drop-down will show all your floors when multiple are defined. The name `DEFAULT FLOOR` can be changed in the [Floors](../settings/floors.mdx) settings page. +::: + +:::info +The button `YOU HAVE NO PRINTERS. CLICK HERE TO START` is because in the screenshot, no printers are added. Printers will be added in the [Printers](../printers/index.mdx) page later in the documentation. +::: + +By default, FDM Monster comes with a 8x8 grid to assign your printers. This design is based on a shelving unit design. You can change the grid in the [Grid Settings](../settings/grid_settings.mdx) page, or the cogwheel on the right side of the window. diff --git a/docs/software_usage/menu/index.mdx b/docs/software_usage/menu/index.mdx new file mode 100644 index 00000000..95f297d4 --- /dev/null +++ b/docs/software_usage/menu/index.mdx @@ -0,0 +1,12 @@ +--- +title: FDM Monster Menu Items +description: All menu items described +slug: /software_usage/menu +--- + +FDM Monster has multiple left-side menu items. + +- [**Home**](./home/index.mdx) - Single pane of view of your farm +- [**Printers**](./printers/index.mdx) - Printer overview +- [**Cameras**](./cameras/index.mdx) - Printer cameras +- [**Settings**](./settings/index.mdx) - FDM Monster settings diff --git a/docs/software_usage/menu/printers/images/all-checks-passed.png b/docs/software_usage/menu/printers/images/all-checks-passed.png new file mode 100644 index 00000000..c17350f9 Binary files /dev/null and b/docs/software_usage/menu/printers/images/all-checks-passed.png differ diff --git a/docs/software_usage/menu/printers/images/new-printer-dialog-filled.png b/docs/software_usage/menu/printers/images/new-printer-dialog-filled.png new file mode 100644 index 00000000..9bbb2052 Binary files /dev/null and b/docs/software_usage/menu/printers/images/new-printer-dialog-filled.png differ diff --git a/docs/software_usage/menu/printers/images/new-printer-dialog.png b/docs/software_usage/menu/printers/images/new-printer-dialog.png new file mode 100644 index 00000000..3ac8bb57 Binary files /dev/null and b/docs/software_usage/menu/printers/images/new-printer-dialog.png differ diff --git a/docs/software_usage/menu/printers/images/printers-added-printer.png b/docs/software_usage/menu/printers/images/printers-added-printer.png new file mode 100644 index 00000000..1d4a1991 Binary files /dev/null and b/docs/software_usage/menu/printers/images/printers-added-printer.png differ diff --git a/docs/software_usage/menu/printers/images/printers.png b/docs/software_usage/menu/printers/images/printers.png new file mode 100644 index 00000000..96e4ac55 Binary files /dev/null and b/docs/software_usage/menu/printers/images/printers.png differ diff --git a/docs/software_usage/menu/printers/index.mdx b/docs/software_usage/menu/printers/index.mdx new file mode 100644 index 00000000..b34275e4 --- /dev/null +++ b/docs/software_usage/menu/printers/index.mdx @@ -0,0 +1,6 @@ +--- +title: Printers +description: FDM Monster Printers +slug: /software_usage/menu/printers +--- + diff --git a/docs/software_usage/menu/settings/floors.mdx b/docs/software_usage/menu/settings/floors.mdx new file mode 100644 index 00000000..e69de29b diff --git a/docs/configuration/settings/grid_settings.mdx b/docs/software_usage/menu/settings/grid_settings.mdx similarity index 79% rename from docs/configuration/settings/grid_settings.mdx rename to docs/software_usage/menu/settings/grid_settings.mdx index 5b1c38a7..bee3ae30 100644 --- a/docs/configuration/settings/grid_settings.mdx +++ b/docs/software_usage/menu/settings/grid_settings.mdx @@ -1,14 +1,14 @@ --- title: Grid Settings description: How to change Grid Settings -slug: /configuration/settings/grid_settings +slug: /software_usage/menu/settings/grid_settings --- The grid settings influence how many printers are shown in the grid. You can adjust the amount of rows and columns, as well as enable large tile mode. Both types of settings can be changed on the fly, without restarting the server. -![Screenshot of FDM Monster with grid settings, allowing you to set grid rows and columns.](../../images/grid_settings.png) +![Screenshot of FDM Monster with grid settings, allowing you to set grid rows and columns.](../../../images/grid_settings.png) ## Grid Rows and Columns @@ -21,4 +21,4 @@ The large tile mode can be enabled by clicking the toggle button. When enabled, the grid will show large tiles instead of small tiles. In large tile mode, the grid will show fewer printers, but more information about each printer. -![Screenshot of grid view with large tiles](../../images/grid_settings_largetilemode.png) +![Screenshot of grid view with large tiles](../../../images/grid_settings_largetilemode.png) diff --git a/docs/configuration/settings/index.mdx b/docs/software_usage/menu/settings/index.mdx similarity index 91% rename from docs/configuration/settings/index.mdx rename to docs/software_usage/menu/settings/index.mdx index bf440e7c..b8c8970b 100644 --- a/docs/configuration/settings/index.mdx +++ b/docs/software_usage/menu/settings/index.mdx @@ -1,19 +1,19 @@ --- title: Settings description: FDM Monster settings -slug: /configuration/settings +slug: /software_usage/menu/settings --- This section specifies the settings that can be changed once the FDM Monster server has been started. Please visit this page on FDM Monster: -![Screenshot of FDM Monster with all settings sections](../../images/settings.png) +![Screenshot of FDM Monster with all settings sections](../../../images/settings.png) ## Grid Settings The Grid Settings section allows you to change the number of rows and columns in the grid, as well as enabling large tile mode. This can be useful if you want to reduce the amount of available printers in your farm. -Read more about it on the [grid settings page](grid_settings.mdx). +Read more about it on the [grid settings page](./grid_settings.mdx). ## Floors diff --git a/docs/configuration/moonraker.mdx b/docs/software_usage/moonraker.mdx similarity index 92% rename from docs/configuration/moonraker.mdx rename to docs/software_usage/moonraker.mdx index dd944b5b..9245c02d 100644 --- a/docs/configuration/moonraker.mdx +++ b/docs/software_usage/moonraker.mdx @@ -1,7 +1,7 @@ --- title: Enabling Moonraker support description: Enable the experimental Moonraker feature -slug: /configuration/moonraker +slug: /software_usage/moonraker --- :::note NOTE @@ -13,6 +13,5 @@ After you have setup your FDM Monster installation, you can enable experimental 1. Once logged in, click the cogwheel ⚙️ on the left side menu. 1. On the bottom click the **experimental** menu option. 1. Check the checkbox before **Enable Experimental Moonraker Support**. -1. Press **Save**. ![Experimental Klipper](../images/screenshots-1.7.0/experimental-klipper.png) diff --git a/docs/configuration/updating_client_bundle.mdx b/docs/software_usage/updating_client_bundle.mdx similarity index 98% rename from docs/configuration/updating_client_bundle.mdx rename to docs/software_usage/updating_client_bundle.mdx index db6da241..4ea9bca7 100644 --- a/docs/configuration/updating_client_bundle.mdx +++ b/docs/software_usage/updating_client_bundle.mdx @@ -1,7 +1,7 @@ --- title: Updating Client Bundle description: How to update the client bundle -slug: /configuration/updating_client_bundle +slug: /software_usage/updating_client_bundle --- :::warning Updating the Client Bundle diff --git a/docs/configuration/yaml_import_export.mdx b/docs/software_usage/yaml_import_export.mdx similarity index 98% rename from docs/configuration/yaml_import_export.mdx rename to docs/software_usage/yaml_import_export.mdx index 10c19e4a..9fd81ab0 100644 --- a/docs/configuration/yaml_import_export.mdx +++ b/docs/software_usage/yaml_import_export.mdx @@ -1,7 +1,7 @@ --- title: YAML Import and Export description: How to import and export configurations -slug: /configuration/yaml_import_export +slug: /software_usage/yaml_import_export --- The YAML import/export function allows users to export and import their printer and floor configurations in a YAML format. diff --git a/docusaurus.config.ts b/docusaurus.config.ts index eba99df8..dd9364a0 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -6,9 +6,9 @@ import type { Options as BlogOptions } from "@docusaurus/plugin-content-blog"; import type { Options as ClientRedirectsOptions } from "@docusaurus/plugin-client-redirects"; const config: Config = { - title: "FDM Monster Docs", + title: "FDM Monster", tagline: - "3D printer farm management platform for local or in-cloud usage using OctoPrint.", + "Are you ready to scale up your 3D Print farm?", favicon: "img/favicon.ico", // Set the production url of your site here @@ -99,6 +99,18 @@ const config: Config = { from: ['/docs/ourteam'], to: '/docs/community/ourteam', }, + { + from: ['/docs/software_usage/preconfiguration'], + to: '/docs/installing/deprecated/preconfiguration', + }, + { + from: ['/docs/installing/windows_service'], + to: '/docs/installing/deprecated/windows_service', + }, + { + from: ['/docs/installing/linux_service'], + to: '/docs/installing/deprecated/linux_service', + }, ], } satisfies ClientRedirectsOptions, ], @@ -174,9 +186,13 @@ const config: Config = { { title: "Docs", items: [ + { + label: "Installation", + to: "/docs/installing", + }, { label: "Getting Started", - to: "/docs/", + to: "/docs/software_usage/getting-started", }, ], }, diff --git a/package.json b/package.json index 577a28f4..225ef3b0 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,7 @@ "@docusaurus/plugin-client-redirects": "^3.5.2", "@docusaurus/preset-classic": "3.6.3", "@docusaurus/theme-search-algolia": "3.6.3", + "@iconify/react": "^5.1.0", "clsx": "2.1.1", "prism-react-renderer": "2.4.1", "react": "18.3.1", diff --git a/sidebars.ts b/sidebars.ts index cdbe5d70..1c52e4c3 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -14,47 +14,100 @@ import type {SidebarsConfig} from '@docusaurus/plugin-content-docs'; items: [ 'installing/monsterpi', 'installing/docker_compose', - 'installing/windows_service', - 'installing/linux_service', + { + type: 'category', + label: 'Deprecated', + link: { + type: 'doc', + id: 'installing/deprecated/index', + }, + items: [ + 'installing/deprecated/windows_service', + 'installing/deprecated/linux_service', + 'installing/deprecated/preconfiguration', + ], + }, ], }, { type: 'category', - label: 'Configuration', + label: 'Software Usage', link: { type: 'doc', - id: 'configuration/index', + id: 'software_usage/index', }, collapsed: true, items: [ - 'configuration/preconfiguration', + 'software_usage/first-time-setup', + 'software_usage/getting-started', { type: 'category', - label: 'Settings', + label: 'FDM Monster Menu Items', link: { type: 'doc', - id: 'configuration/settings/index', + id: 'software_usage/menu/index', }, items: [ - 'configuration/settings/grid_settings', + { + type: 'category', + label: 'Home', + link: { + type: 'doc', + id: 'software_usage/menu/home/index', + }, + items: [ + ], + }, + { + type: 'category', + label: 'Printers', + link: { + type: 'doc', + id: 'software_usage/menu/printers/index', + }, + items: [ + ], + }, + { + type: 'category', + label: 'Cameras', + link: { + type: 'doc', + id: 'software_usage/menu/cameras/index', + }, + items: [ + ], + }, + { + type: 'category', + label: 'Settings', + link: { + type: 'doc', + id: 'software_usage/menu/settings/index', + }, + items: [ + 'software_usage/menu/settings/grid_settings', + ], + }, + ], }, - 'configuration/moonraker', - 'configuration/updating_client_bundle', - 'configuration/yaml_import_export', + 'software_usage/moonraker', + 'software_usage/updating_client_bundle', + 'software_usage/yaml_import_export', ], }, { type: 'category', - label: 'Software usage', + label: '[TBD] Old Software usage', link: { type: 'doc', - id: 'software_usage/index', + id: 'old_software_usage/index', }, - collapsed: false, + collapsed: true, items: [ - 'software_usage/creating_printers', - 'software_usage/organizing_floors', + 'old_software_usage/creating_printers', + 'old_software_usage/organizing_floors', ], }, { @@ -64,7 +117,7 @@ import type {SidebarsConfig} from '@docusaurus/plugin-content-docs'; type: 'doc', id: 'troubleshooting/index', }, - collapsed: false, + collapsed: true, items: [ 'troubleshooting/log_dump', 'troubleshooting/sentry', @@ -82,6 +135,7 @@ import type {SidebarsConfig} from '@docusaurus/plugin-content-docs'; community: [ 'community/support', 'community/ourteam', + 'community/sponsor-us', 'community/links', { type: 'link', diff --git a/src/components/HomepageFeatures/index.tsx b/src/components/HomepageFeatures/index.tsx index 86ffbed4..6bf1951f 100644 --- a/src/components/HomepageFeatures/index.tsx +++ b/src/components/HomepageFeatures/index.tsx @@ -21,12 +21,11 @@ const FeatureList: FeatureItem[] = [ Svg: require("@site/static/img/docker-svgrepo-com.svg").default, description: ( <> - With docker you can be sure FDM Monster will run in isolation. For the - least hassle setup, you should give this a try! + With docker you can be sure FDM Monster will run in isolation. (easy) ), featureLink: { - description: "Read More!", + description: "Easy setup!", href: "/docs/installing/docker_compose", }, }, @@ -41,20 +40,39 @@ const FeatureList: FeatureItem[] = [ href: "/docs/installing/monsterpi", }, }, + { + title: "Enable moonraker/klipper support", + Svg: require("@site/static/img/klipper.svg").default, + description: ( + <>Connect FDM Monster with your klipper enabled printers. + ), + featureLink: { + description: "Read More!", + href: "/docs/software_usage/moonraker", + }, + }, { title: "Powered by OctoPrint", Svg: require("@site/static/img/octoprint-tentacle.svg").default, description: ( - <> - Using OctoPrint, FDM Monster prevents single points of failures in your - farm! - + <>Using OctoPrint, FDM Monster prevents single points of failures in your farm! ), featureLink: { description: "Read More!", href: "https://octoprint.org/", }, }, + { + title: "Powered by Moonraker", + Svg: require("@site/static/img/fdm-monster-logo.svg").default, + description: ( + <>Moonraker enables FDM Monster to communicate with your Klipper device! + ), + featureLink: { + description: "Read More!", + href: "https://moonraker.readthedocs.io/", + }, + }, ]; function Feature({ Svg, title, description, featureLink }) { @@ -66,7 +84,9 @@ function Feature({ Svg, title, description, featureLink }) {

{title}

{description}

- +
+
+ {featureLink.description}
@@ -75,15 +95,20 @@ function Feature({ Svg, title, description, featureLink }) { } export default function HomepageFeatures() { + const firstRow = FeatureList.slice(0, 3); + const secondRow = FeatureList.slice(3); return ( -
-
-
- {FeatureList.map((props, idx) => ( +
+
+ {firstRow.map((props, idx) => ( - ))} -
+ ))}
-
+
+ {secondRow.map((props, idx) => ( + + ))} +
+ ); } diff --git a/src/css/custom.css b/src/css/custom.css index 6d96bc12..c95909a5 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -6,21 +6,21 @@ /* You can override the default Infima variables here. */ :root { - /*--ifm-color-primary: #2e8555;*/ + /* --ifm-color-primary: #2e8555;*/ /*--ifm-color-primary-dark: #29784c;*/ /*--ifm-color-primary-darker: #277148;*/ /*--ifm-color-primary-darkest: #205d3b;*/ /*--ifm-color-primary-light: #33925d;*/ /*--ifm-color-primary-lighter: #359962;*/ - /*--ifm-color-primary-lightest: #3cad6e;*/ + /*--ifm-color-primary-lightest: #3cad6e; */ - --ifm-color-primary: #d52828; - --ifm-color-primary-dark: #782929; - --ifm-color-primary-darker: #712727; - --ifm-color-primary-darkest: #5d2020; - --ifm-color-primary-light: #923333; - --ifm-color-primary-lighter: #993535; - --ifm-color-primary-lightest: #ad3c3c; + --ifm-color-primary: #1eb6c3; + --ifm-color-primary-dark: #1ba1ad; + --ifm-color-primary-darker: #178d97; + --ifm-color-primary-darkest: #147881; + --ifm-color-primary-light: #21cbd9; + --ifm-color-primary-lighter: #34d2e0; + --ifm-color-primary-lightest: #4ad7e3; --ifm-code-font-size: 95%; --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1); } @@ -34,12 +34,12 @@ /*--ifm-color-primary-light: #29d5b0;*/ /*--ifm-color-primary-lighter: #32d8b4;*/ /*--ifm-color-primary-lightest: #4fddbf;*/ - --ifm-color-primary: #c91b1b; - --ifm-color-primary-dark: #af2121; - --ifm-color-primary-darker: #a51f1f; - --ifm-color-primary-darkest: #881a1a; - --ifm-color-primary-light: #d52929; - --ifm-color-primary-lighter: #d83232; - --ifm-color-primary-lightest: #dd4f4f; + --ifm-color-primary: #1eb6c3; + --ifm-color-primary-dark: #1ba1ad; + --ifm-color-primary-darker: #178d97; + --ifm-color-primary-darkest: #147881; + --ifm-color-primary-light: #21cbd9; + --ifm-color-primary-lighter: #34d2e0; + --ifm-color-primary-lightest: #4ad7e3; --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3); } diff --git a/src/theme/MDXComponents.tsx b/src/theme/MDXComponents.tsx new file mode 100644 index 00000000..5b7b6ad6 --- /dev/null +++ b/src/theme/MDXComponents.tsx @@ -0,0 +1,10 @@ +import React from 'react'; +// Import the original mapper +import MDXComponents from '@theme-original/MDXComponents'; +import { Icon } from '@iconify/react'; // Import the entire Iconify library. + +export default { + // Re-use the default mapping + ...MDXComponents, + IIcon: Icon, // Make the iconify Icon component available in MDX as . +}; diff --git a/static/img/klipper.svg b/static/img/klipper.svg new file mode 100644 index 00000000..c8125b81 --- /dev/null +++ b/static/img/klipper.svg @@ -0,0 +1,113 @@ + +image/svg+xml + + + + + + + \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index b4e9ecac..da6cccc9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1598,7 +1598,17 @@ __metadata: languageName: node linkType: hard -"@babel/types@npm:^7.21.3, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.0, @babel/types@npm:^7.26.3, @babel/types@npm:^7.4.4": +"@babel/types@npm:^7.21.3, @babel/types@npm:^7.25.9, @babel/types@npm:^7.26.0, @babel/types@npm:^7.4.4": + version: 7.26.0 + resolution: "@babel/types@npm:7.26.0" + dependencies: + "@babel/helper-string-parser": "npm:^7.25.9" + "@babel/helper-validator-identifier": "npm:^7.25.9" + checksum: 10c0/b694f41ad1597127e16024d766c33a641508aad037abd08d0d1f73af753e1119fa03b4a107d04b5f92cc19c095a594660547ae9bead1db2299212d644b0a5cb8 + languageName: node + linkType: hard + +"@babel/types@npm:^7.26.3": version: 7.26.3 resolution: "@babel/types@npm:7.26.3" dependencies: @@ -2738,6 +2748,24 @@ __metadata: languageName: node linkType: hard +"@iconify/react@npm:^5.1.0": + version: 5.1.0 + resolution: "@iconify/react@npm:5.1.0" + dependencies: + "@iconify/types": "npm:^2.0.0" + peerDependencies: + react: ">=16" + checksum: 10c0/4e20f03d8a8ae1a3ce2440b48ff3aab8f26ed729c6d1cc9120a4a42bec29d0b38366bd7c694aebdb01b98c491f0e12c54499f4a54e423353a9bb62b1dc1b3e87 + languageName: node + linkType: hard + +"@iconify/types@npm:^2.0.0": + version: 2.0.0 + resolution: "@iconify/types@npm:2.0.0" + checksum: 10c0/65a3be43500c7ccacf360e136d00e1717f050b7b91da644e94370256ac66f582d59212bdb30d00788aab4fc078262e91c95b805d1808d654b72f6d2072a7e4b2 + languageName: node + linkType: hard + "@isaacs/cliui@npm:^8.0.2": version: 8.0.2 resolution: "@isaacs/cliui@npm:8.0.2" @@ -6114,6 +6142,7 @@ __metadata: "@docusaurus/theme-search-algolia": "npm:3.6.3" "@docusaurus/tsconfig": "npm:3.6.3" "@docusaurus/types": "npm:3.6.3" + "@iconify/react": "npm:^5.1.0" "@types/react": "npm:18.3.16" clsx: "npm:2.1.1" prism-react-renderer: "npm:2.4.1" @@ -7605,16 +7634,7 @@ __metadata: languageName: node linkType: hard -"jsesc@npm:^3.0.2": - version: 3.1.0 - resolution: "jsesc@npm:3.1.0" - bin: - jsesc: bin/jsesc - checksum: 10c0/531779df5ec94f47e462da26b4cbf05eb88a83d9f08aac2ba04206508fc598527a153d08bd462bae82fc78b3eaa1a908e1a4a79f886e9238641c4cdefaf118b1 - languageName: node - linkType: hard - -"jsesc@npm:~3.0.2": +"jsesc@npm:^3.0.2, jsesc@npm:~3.0.2": version: 3.0.2 resolution: "jsesc@npm:3.0.2" bin: