From d44ca56d395ecfeb252de5d3a15422c84bec5d6f Mon Sep 17 00:00:00 2001 From: bakedpotatolord Date: Tue, 10 Jun 2025 21:14:47 -0600 Subject: [PATCH] apply formatting --- docs/gridbot/bom.md | 4 +- docs/gridbot/index.md | 2 - docs/kiri-moto/CAM/machines.md | 22 ++--- docs/kiri-moto/CAM/ops.mdx | 37 ++++---- docs/kiri-moto/CAM/processOpts.mdx | 3 +- docs/kiri-moto/CAM/tools.md | 9 +- docs/kiri-moto/apis.md | 36 ++++---- docs/kiri-moto/engine-apis.md | 46 +++++----- docs/kiri-moto/faq.md | 13 ++- docs/kiri-moto/gcode-macros.md | 17 ++-- docs/kiri-moto/index.md | 5 +- docs/kiri-moto/interface.md | 3 +- docs/kiri-moto/localization.md | 1 - docs/kiri-moto/octoprint.md | 2 - docs/kiri-moto/shared-profiles.md | 6 +- docs/src/components/carousel.js | 132 +++++++++++++---------------- docs/src/custom.css | 12 ++- 17 files changed, 165 insertions(+), 185 deletions(-) diff --git a/docs/gridbot/bom.md b/docs/gridbot/bom.md index f5086b52..53947815 100644 --- a/docs/gridbot/bom.md +++ b/docs/gridbot/bom.md @@ -1,7 +1,5 @@ # Parts List - - | **Quantity** | **Name** | **Description** | **Product Link** | | ------------ | ------------------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | 1 | upper xy belt | | [https://www.amazon.com/Printing-FYSETC-Fiberglass-Rostock-Printers/dp/B07CDDPCM8](https://www.amazon.com/Printing-FYSETC-Fiberglass-Rostock-Printers/dp/B07CDDPCM8) | @@ -9,7 +7,7 @@ | 1 | z belt | 1140-1160 mm | [https://www.amazon.com/gp/product/B018HN8576](https://www.amazon.com/gp/product/B018HN8576) | | 1 | 24v power supply | | [https://www.amazon.com/EAGWELL-Universal-Regulated-Switching-Computer/dp/B01IOK5FM0](https://www.amazon.com/EAGWELL-Universal-Regulated-Switching-Computer/dp/B01IOK5FM0) | | 1 | SKR V1.3 | | [https://www.amazon.com/gp/product/B07Z3FZGJ1](https://www.amazon.com/gp/product/B07Z3FZGJ1) | -| 2 | cross bar | | [https://hobbyking.com/en\_us/aluminum-square-tube-diy-multi-rotor-12-8x12-8x600mm-5inch-black.html](https://hobbyking.com/en\_us/aluminum-square-tube-diy-multi-rotor-12-8x12-8x600mm-5inch-black.html) | +| 2 | cross bar | | [https://hobbyking.com/en_us/aluminum-square-tube-diy-multi-rotor-12-8x12-8x600mm-5inch-black.html](https://hobbyking.com/en_us/aluminum-square-tube-diy-multi-rotor-12-8x12-8x600mm-5inch-black.html) | | 1 | hot end mount | 3d print solid | | | 1 | bltouch mount | 3d print solid | | | 3 | level bracket | 3d print solid | | diff --git a/docs/gridbot/index.md b/docs/gridbot/index.md index aa024ac2..14741b90 100644 --- a/docs/gridbot/index.md +++ b/docs/gridbot/index.md @@ -15,6 +15,4 @@ The [control software](https://github.com/GridSpace/grid-bot) is open source on A Beta for a [new design](https://cad.onshape.com/documents/d0514606a660a802eb16304a/w/43a797f28bcc004e3e7e7e17/e/61abf70c46004ffbc0134231) is also available. Check [forum.grid.space](https://forum.grid.space) for progress on this and other builds. - - ![](/img/GridBot-Two-Right.png) diff --git a/docs/kiri-moto/CAM/machines.md b/docs/kiri-moto/CAM/machines.md index a96e8f2b..5212ebc2 100644 --- a/docs/kiri-moto/CAM/machines.md +++ b/docs/kiri-moto/CAM/machines.md @@ -14,11 +14,11 @@ You can access it from the top-right menu: ## Workspace Dimensions -These values define your machine’s cutting envelope. Use your *actual usable* dimensions here, not the marketing ones. +These values define your machine’s cutting envelope. Use your _actual usable_ dimensions here, not the marketing ones. -- **X (width)** — Maximum horizontal travel (left to right) -- **Y (depth)** — Maximum front-to-back travel -- **Z (height)** — Maximum vertical travel (top to bottom) +- **X (width)** — Maximum horizontal travel (left to right) +- **Y (depth)** — Maximum front-to-back travel +- **Z (height)** — Maximum vertical travel (top to bottom) The units of these values are based on the units set in your global preferences (defaults to mm). @@ -34,9 +34,9 @@ The units of these values are based on the units set in your global preferences Customize how your G-code is formatted for your controller or post-processor: -- **Strip Comments** — Removes all G-code comments for cleaner, smaller files -- **Token Spacer** — Inserts a space between G-code tokens (e.g., `G1 X1 Y1` vs `G1X1Y1`) -- **Enable Laser** — Enables [Laser](ops#Laser-Mode-Only) operations (typically uses `M3/M5`; adjusts movement strategy) +- **Strip Comments** — Removes all G-code comments for cleaner, smaller files +- **Token Spacer** — Inserts a space between G-code tokens (e.g., `G1 X1 Y1` vs `G1X1Y1`) +- **Enable Laser** — Enables [Laser](ops#Laser-Mode-Only) operations (typically uses `M3/M5`; adjusts movement strategy) - **File Extension** — Optional override for exported file type (e.g., `.nc`, `.ngc`, `.cnc`, `.cam`, `.gcode`, `.txt`) --- @@ -45,10 +45,10 @@ Customize how your G-code is formatted for your controller or post-processor: Macros insert custom G-code at key stages of toolpath generation. Each tab corresponds to a different context. In these boxes, you have access to [G-code macros](../gcode-macros). Not all macros are available in all contexts, so be careful! -- **Header** — Runs once at the beginning of the job (e.g., mode override, move to safe Z) -- **Footer** — Runs at the end of the job (e.g., spindle stop, move to safe Z) -- **Tool** — Called when changing tools. Automatic tool changes and tool measurement can be put here. -- **Dwell** — Code for pausing movement/spindle at specified positions +- **Header** — Runs once at the beginning of the job (e.g., mode override, move to safe Z) +- **Footer** — Runs at the end of the job (e.g., spindle stop, move to safe Z) +- **Tool** — Called when changing tools. Automatic tool changes and tool measurement can be put here. +- **Dwell** — Code for pausing movement/spindle at specified positions - **Spindle** — Code to set spindle RPM --- diff --git a/docs/kiri-moto/CAM/ops.mdx b/docs/kiri-moto/CAM/ops.mdx index 5f1e3cd4..91847c5a 100644 --- a/docs/kiri-moto/CAM/ops.mdx +++ b/docs/kiri-moto/CAM/ops.mdx @@ -2,7 +2,8 @@ description: Keyboard Shortcuts and Mouse Controls label: ops --- -import { ImageCarousel } from '@site/docs/src/components/carousel.js' + +import { ImageCarousel } from "@site/docs/src/components/carousel.js"; # Operations @@ -43,8 +44,8 @@ Operations that apply to all objects in the workspace. The Outline op generates a toolpath surrounding the edges of a part. It is highly configurable and can select both internal or external edges specifically. The Outline operation is great for: -- Cutting out many objects at once -- Generating a rough/finishing pass on an object +- Cutting out many objects at once +- Generating a rough/finishing pass on an object - Easily avoiding specific features like pockets or holes ### Level @@ -53,8 +54,8 @@ The Outline op generates a toolpath surrounding the edges of a part. It is highl The Level op creates a flat-surface clearing toolpath across a selected area. It is designed to remove material to a consistent depth, making it useful for preparing stock, flattening uneven surfaces, or cleaning up residual material. The Level operation is great for: -- Surfacing raw stock before detail cuts -- Creating uniform faces on complex objects +- Surfacing raw stock before detail cuts +- Creating uniform faces on complex objects - Clearing large areas with consistent depth quickly ### Rough @@ -63,10 +64,10 @@ The Level op creates a flat-surface clearing toolpath across a selected area. It The Rough op removes large volumes of material quickly using a stepped-down toolpath. It is typically the first pass in a multi-step workflow, clearing space for finishing tools without concern for fine detail. The Rough operation is great for: -- Rapid bulk material removal -- Preparing many parts for finishing simultaneously -- Clearing voids or flat faces for many objects at once -- Preparing a part for finish machining +- Rapid bulk material removal +- Preparing many parts for finishing simultaneously +- Clearing voids or flat faces for many objects at once +- Preparing a part for finish machining - Preserving tool life by reducing cutting load in later passes ### Contour @@ -76,8 +77,8 @@ The Rough op removes large volumes of material quickly using a stepped-down tool The Contour op generates detailed toolpaths for complex organic surface geometries. It can trace along the X or Y axis and has configurable precision. It is useful for: -- Carving 3D shapes with organic or curved profiles -- Finishing complex wall geometries +- Carving 3D shapes with organic or curved profiles +- Finishing complex wall geometries - Cleaning up a part after [roughing](#rough) ### Register @@ -101,8 +102,8 @@ The Drill op creates pecking toolpaths for a drill tool to follow. It can also drill holes of other diameters and even mark holes instead of drilling. It is useful for: -- Generating a toolpath for a drill tool -- Selecting specific holes to remove material from +- Generating a toolpath for a drill tool +- Selecting specific holes to remove material from - Marking holes to be drilled manually ### Trace @@ -115,9 +116,9 @@ When the type parameter is set to "clear," it can even act like a [Pocket](#pock clearing the area above the shape created by the selected lines or loop. While the Trace op can do a lot, some specific use cases include: -- Engraving lettering or other text -- Drilling out a hole helically -- Outlining a part with a nonstandard offset +- Engraving lettering or other text +- Drilling out a hole helically +- Outlining a part with a nonstandard offset - Outlining only one part on the workspace ### Pocket @@ -128,8 +129,8 @@ The Pocket operation takes a selection of polygon faces and generates a pocket t The operation has options to expand and smooth the pocket selection, and the contour option even allows for an approximation of a v-bit carve. Some use cases specific to the Pocket op include: -- Creating one pocket in a part with multiple -- Attempting a v-carve +- Creating one pocket in a part with multiple +- Attempting a v-carve - Clearing a specific area of a part ### Gcode diff --git a/docs/kiri-moto/CAM/processOpts.mdx b/docs/kiri-moto/CAM/processOpts.mdx index a2dbb6d1..75ce5fb7 100644 --- a/docs/kiri-moto/CAM/processOpts.mdx +++ b/docs/kiri-moto/CAM/processOpts.mdx @@ -1,7 +1,8 @@ --- description: Process options for the CAM mode --- -import { ImageCarousel } from '@site/docs/src/components/carousel.js' + +import { ImageCarousel } from "@site/docs/src/components/carousel.js"; # Process Options diff --git a/docs/kiri-moto/CAM/tools.md b/docs/kiri-moto/CAM/tools.md index f5a07632..f1e64ec3 100644 --- a/docs/kiri-moto/CAM/tools.md +++ b/docs/kiri-moto/CAM/tools.md @@ -13,8 +13,9 @@ Additionally, tools can be imported and exported as `.km` files. The file format ![](/img/CAM/toolMenu.png) -Kiri:Moto currently supports four types of tools: -- End Mills -- Ball Mills -- Taper Mills +Kiri:Moto currently supports four types of tools: + +- End Mills +- Ball Mills +- Taper Mills - Drills diff --git a/docs/kiri-moto/apis.md b/docs/kiri-moto/apis.md index c28c15d4..0ef06927 100644 --- a/docs/kiri-moto/apis.md +++ b/docs/kiri-moto/apis.md @@ -40,24 +40,24 @@ JSON dictionaries can be used for reference from the [CLI package](https://githu Kiri:Moto is designed to be embedded in a page using an IFrame. The look and feel and other controls are available for the loaded page using a messaging API. An example page is [here](https://grid.space/kiri/frame.html). -| function | description | -| --------------------------- | ------------------------------------------------------------------------------------------------------- | -| setFrame(_id\_obj_) | id or object of IFrame with Kiri:Moto loaded | -| load(_url_) | load an [STL](https://en.wikipedia.org/wiki/STL\_\(file\_format\)) referred to by _url_ | -| clear() | remove all objects from workspace | -| parse(_data_) | parse the text or binary contents of an [STL](https://en.wikipedia.org/wiki/STL\_\(file\_format\)) file | -| setMode(_mode_) | where _mode_ comes from:`[ "CAM", "FDM", "LASER", "SLA" ]` | -| setDevice(_options_) | change default Device options | -| setProcess(options) | change default Process options | -| setController(options) | change default Core options | -| slice() | async slice of loaded object | -| prepare() | async path routing of slice data | -| export() | async gcode generation from routed paths | -| onmessage(_fn_) | function will receive all IFrame messages | -| onevent(_event, data_) | function will receive named messages | -| emit(_event, data_) | send named event with data payload | -| alert(_msg, time_) | show alert message with optional time in seconds | -| process(_percent, message_) | set progress bar (0.0 to 1.0) with optional message | +| function | description | +| --------------------------- | ----------------------------------------------------------------------------------------------------- | +| setFrame(_id_obj_) | id or object of IFrame with Kiri:Moto loaded | +| load(_url_) | load an [STL]() referred to by _url_ | +| clear() | remove all objects from workspace | +| parse(_data_) | parse the text or binary contents of an [STL]() file | +| setMode(_mode_) | where _mode_ comes from:`[ "CAM", "FDM", "LASER", "SLA" ]` | +| setDevice(_options_) | change default Device options | +| setProcess(options) | change default Process options | +| setController(options) | change default Core options | +| slice() | async slice of loaded object | +| prepare() | async path routing of slice data | +| export() | async gcode generation from routed paths | +| onmessage(_fn_) | function will receive all IFrame messages | +| onevent(_event, data_) | function will receive named messages | +| emit(_event, data_) | send named event with data payload | +| alert(_msg, time_) | show alert message with optional time in seconds | +| process(_percent, message_) | set progress bar (0.0 to 1.0) with optional message | ## Events diff --git a/docs/kiri-moto/engine-apis.md b/docs/kiri-moto/engine-apis.md index 30d9d8d5..54d93d59 100644 --- a/docs/kiri-moto/engine-apis.md +++ b/docs/kiri-moto/engine-apis.md @@ -4,38 +4,38 @@ label: Engine APIs --- # Engine APIs + The `Engine` class serves as an abstraction layer for interacting with the `kiri` 3D slicing engine. It handles loading and parsing STL files, manipulating widgets (3D models), configuring slicing parameters, and executing the toolpath generation pipeline: slice, prepare, and export. This API is designed with method chaining in mind, and provides hooks for custom event listeners. you can view some example of how to use the engine [here](https://grid.space/kiri/engine.html). - --- ## Methods -| Method | Description | Returns | -|--------|-------------|---------| -| `load(url)` | Loads an [STL](https://en.wikipedia.org/wiki/STL\_\(file\_format\)) file from a given URL and centers the model. | `Promise` | -| `clear()` | Clears all objects from workspace. | `void` | -| `parse(data)` | Parses raw [STL](https://en.wikipedia.org/wiki/STL\_\(file\_format\)) data and loads it as a centered widget. | `Promise` | -| `setListener(listener)` | Sets an event listener function to receive engine progress updates | `Engine` | -| `setRender(bool)` | Enables or disables rendering. | `Engine` | -| `setMode(mode)` | Sets the slicing mode where mode is "CAM"|"FDM"|"LASER"|"SLA" . | `Engine` | -| `setDevice(device)` | Merges a custom device profile into the current settings. | `Engine` | -| `setProcess(process)` | Merges custom slicing process parameters. | `Engine` | -| `setController(controller)` | Sets the slicing controller settings and starts/stops the worker pool accordingly. | `Engine` | -| `setTools(tools)` | Sets the tool definitions (e.g. cutters, extruders). | `Engine` | -| `setStock(stock)` | Sets the stock material dimensions. | `Engine` | -| `setOrigin(x, y, z)` | Defines the origin point for the part. | `Engine` | -| `moveTo(x, y, z)` | Moves the widget to the specified absolute coordinates. | `Engine` | -| `move(x, y, z)` | Moves the widget by the specified delta values. | `Engine` | -| `scale(x, y, z)` | Scales the widget along each axis. | `Engine` | -| `rotate(x, y, z)` | Rotates the widget in degrees along each axis. | `Engine` | -| `slice()` | Starts the slicing process and returns once complete. | `Promise` | -| `prepare()` | Prepares the sliced toolpaths for export (e.g. G-code generation). | `Promise` | -| `export()` | Exports the toolpaths as a string (e.g. G-code). | `Promise` | +| Method | Description | Returns | +| --------------------------- | -------------------------------------------------------------------------------------------------------------- | ----------------- | ------- | ------- | -------- | +| `load(url)` | Loads an [STL]() file from a given URL and centers the model. | `Promise` | +| `clear()` | Clears all objects from workspace. | `void` | +| `parse(data)` | Parses raw [STL]() data and loads it as a centered widget. | `Promise` | +| `setListener(listener)` | Sets an event listener function to receive engine progress updates | `Engine` | +| `setRender(bool)` | Enables or disables rendering. | `Engine` | +| `setMode(mode)` | Sets the slicing mode where mode is "CAM" | "FDM" | "LASER" | "SLA" . | `Engine` | +| `setDevice(device)` | Merges a custom device profile into the current settings. | `Engine` | +| `setProcess(process)` | Merges custom slicing process parameters. | `Engine` | +| `setController(controller)` | Sets the slicing controller settings and starts/stops the worker pool accordingly. | `Engine` | +| `setTools(tools)` | Sets the tool definitions (e.g. cutters, extruders). | `Engine` | +| `setStock(stock)` | Sets the stock material dimensions. | `Engine` | +| `setOrigin(x, y, z)` | Defines the origin point for the part. | `Engine` | +| `moveTo(x, y, z)` | Moves the widget to the specified absolute coordinates. | `Engine` | +| `move(x, y, z)` | Moves the widget by the specified delta values. | `Engine` | +| `scale(x, y, z)` | Scales the widget along each axis. | `Engine` | +| `rotate(x, y, z)` | Rotates the widget in degrees along each axis. | `Engine` | +| `slice()` | Starts the slicing process and returns once complete. | `Promise` | +| `prepare()` | Prepares the sliced toolpaths for export (e.g. G-code generation). | `Promise` | +| `export()` | Exports the toolpaths as a string (e.g. G-code). | `Promise` | --- @@ -51,4 +51,4 @@ If a listener is set via `setListener(fn)`, it will be called with events such a - `{ export: { segment } }` — during G-code segment export - `{ export: { done } }` — when export is finished -These allow for building progress indicators or responding to processing stages. \ No newline at end of file +These allow for building progress indicators or responding to processing stages. diff --git a/docs/kiri-moto/faq.md b/docs/kiri-moto/faq.md index ce34a310..a652bb6c 100644 --- a/docs/kiri-moto/faq.md +++ b/docs/kiri-moto/faq.md @@ -8,7 +8,7 @@ description: Frequently Asked Questions Entirely. -The source code is on [GitHub](https://github.com/GridSpace/grid-apps) if you want to install and run it yourself. It is available under the [MIT](https://en.wikipedia.org/wiki/MIT\_License) license, which is one of the most liberal in terms of allowing you to do what you want with the code without restriction. +The source code is on [GitHub](https://github.com/GridSpace/grid-apps) if you want to install and run it yourself. It is available under the [MIT](https://en.wikipedia.org/wiki/MIT_License) license, which is one of the most liberal in terms of allowing you to do what you want with the code without restriction. Multiple live [versions](https://grid.space/choose) (including current development branches) are served free of charge and free of ads on [Grid.Space](https://grid.space/kiri/). @@ -18,10 +18,10 @@ It has similar capabilities to other 3D printing slicers like Cura, Simplify3D, It is very different in several important ways: -* There is no software to install or maintain. It's just a web page. -* As a web app, it runs in a security sandbox and cannot access data on your hard drive -* It offers several modes of operation for most of the common maker tools, like CNC mills -* It is updated quite frequently (several times a week) with bug fixes and new features +- There is no software to install or maintain. It's just a web page. +- As a web app, it runs in a security sandbox and cannot access data on your hard drive +- It offers several modes of operation for most of the common maker tools, like CNC mills +- It is updated quite frequently (several times a week) with bug fixes and new features ## What language is it written in? @@ -29,7 +29,7 @@ It is almost entirely Javascript. There are a few minor modules compiled into WA ## What file types are supported? -[STL](https://en.wikipedia.org/wiki/STL\_\(file\_format\)), [OBJ](https://en.wikipedia.org/wiki/Wavefront\_.obj\_file), and [3MF](https://github.com/3MFConsortium/spec\_core/blob/master/3MF%20Core%20Specification.md) files are supported for 3D part import. [SVG](https://en.wikipedia.org/wiki/Scalable\_Vector\_Graphics) files import and auto-convert into 3D models. [PNG](https://en.wikipedia.org/wiki/Portable\_Network\_Graphics) files are supported for 2D image to 3D model conversion. +[STL](), [OBJ](https://en.wikipedia.org/wiki/Wavefront_.obj_file), and [3MF](https://github.com/3MFConsortium/spec_core/blob/master/3MF%20Core%20Specification.md) files are supported for 3D part import. [SVG](https://en.wikipedia.org/wiki/Scalable_Vector_Graphics) files import and auto-convert into 3D models. [PNG](https://en.wikipedia.org/wiki/Portable_Network_Graphics) files are supported for 2D image to 3D model conversion. ## What if my printer isn't supported? @@ -47,4 +47,3 @@ Kiri comes from Kiri-e, which is the Japanese art of paper-cutting. Moto is shor - `kmz` stands for **Kiri Moto Zip**, and contains an entire zipped workspace - `km` stands for **Kiri Moto**, and contains [CAM tool](/CAM/tools) paramers. - diff --git a/docs/kiri-moto/gcode-macros.md b/docs/kiri-moto/gcode-macros.md index 7bb71fc4..263e98ee 100644 --- a/docs/kiri-moto/gcode-macros.md +++ b/docs/kiri-moto/gcode-macros.md @@ -19,7 +19,6 @@ description: Variable Substitutions and Expressions in GCode Macros - \{print-time\} = alias for \{time\} ... deprecated after 2.8 - \{print_time\} = alias for \{time\} ... 2.9 and beyond - ## FDM (3D Printing) Mode Only ### FDM Macros @@ -44,10 +43,12 @@ description: Variable Substitutions and Expressions in GCode Macros - \{e\} = amount of filament extruded ### "Feature" only Macros (v3.4+) + - \{feature\} = feature region of the print (brims, infill, etc) - \{minx|miny|maxx|maxy\} = position in mm of extents of the print area ### Logical Code Flow (IF / ELIF / ELSE / END) + ``` ;; IF { layer >= 10 && layer <= 20 } ;; ..... inside 10-20 layer={layer} @@ -58,7 +59,8 @@ description: Variable Substitutions and Expressions in GCode Macros ;; END ``` -### PREAMBLE control (v3.4+) +### PREAMBLE control (v3.4+) + Allows for intro comment and config list to be re-positioned after the header or disabled. This was introduced to allow GCode output to work with Ultimaker. `;; PREAMBLE OFF` @@ -96,24 +98,25 @@ Set decimal precision (n = integer) (v3.8+) `;; DECIMALS = n` ### Axis Scaling (v3.7+) + Allows for a factor to be applied to X,Y,Z coordinates. Useful for some machines like the Roland MDX-40A that uses an unusual coordinate space. Default axis scale is `1` _`;; SCALE { "X":100, "Y":100, "Z":100 }`_ - ## CAM & FDM Modes - - ### Simple Algebraic Expression Support +## CAM & FDM Modes + +### Simple Algebraic Expression Support - Text inside `{}` is evaluated algebraically with access to JS classes and methods - `{Math.min(layer/layers, 0.5) + 1}` - `{token+n} {token-n}` ### Axis Remapping (v3.5+) - Allows for over-riding the default axis names. Useful for swapping axes and changing output for specific firmware targets. The format of the map is a JSON object._ + +Allows for over-riding the default axis names. Useful for swapping axes and changing output for specific firmware targets. The format of the map is a JSON object.\_ `;; AXISMAP {"X":"Y", "Y":"Z", "E":"E1"}` - ## Laser Mode Only ### Laser Macros diff --git a/docs/kiri-moto/index.md b/docs/kiri-moto/index.md index 7bd3fc4c..5917baaa 100644 --- a/docs/kiri-moto/index.md +++ b/docs/kiri-moto/index.md @@ -12,11 +12,11 @@ Kiri:Moto is focused on privacy, performance, and ease-of-use. Kiri:Moto has been in continuous development since 2013. It typically gets new development releases a few times a week and major releases every 4-8 weeks. -Please consider supporting this project with a [donation](https://paypal.me/gridspace3d?locale.x=en\_US). +Please consider supporting this project with a [donation](https://paypal.me/gridspace3d?locale.x=en_US). ## Privacy -Kiri:Moto is served free of ads, trackers, and any collection of personal data ([PII](https://en.wikipedia.org/wiki/Personal\_data)). Don't trust that? You can also install and run it yourself from [source](https://github.com/GridSpace/grid-apps). +Kiri:Moto is served free of ads, trackers, and any collection of personal data ([PII](https://en.wikipedia.org/wiki/Personal_data)). Don't trust that? You can also install and run it yourself from [source](https://github.com/GridSpace/grid-apps). Because Kiri:Moto runs in a browser's security sandbox, it does not have access to the personal and private data on your local hard drive the way installed desktop software does. @@ -29,4 +29,3 @@ Kiri:Moto is a compact, fast-loading page free of bloat. This is achieved by min ## Ease of Use Creating an interface that is usable for new to advanced users can be a challenge. Kiri:Moto takes a strong editorial stance on complexity. Much of the software in the maker universe is riddled with parameters and controls that are duplicative and work at cross-purposes. - diff --git a/docs/kiri-moto/interface.md b/docs/kiri-moto/interface.md index efe98a16..f02b8de3 100644 --- a/docs/kiri-moto/interface.md +++ b/docs/kiri-moto/interface.md @@ -10,7 +10,7 @@ The left menus control workspace, work mode, and objects while. The right menus control the behavior and settings for slicing, path routing, and path to code exports. -[OBJ](https://www.cs.cmu.edu/\~mbz/personal/graphics/obj.html), [STL](https://en.wikipedia.org/wiki/STL\_\(file\_format\)), and [3MF](https://docs.fileformat.com/3d/3mf/) files import natively. [SVG](https://en.wikipedia.org/wiki/Scalable\_Vector\_Graphics), [JPG](https://en.wikipedia.org/wiki/JPEG\_File\_Interchange\_Format), and [PNG](https://en.wikipedia.org/wiki/Portable\_Network\_Graphics) are auto-extruded into a 3D parts. +[OBJ](https://www.cs.cmu.edu/~mbz/personal/graphics/obj.html), [STL](), and [3MF](https://docs.fileformat.com/3d/3mf/) files import natively. [SVG](https://en.wikipedia.org/wiki/Scalable_Vector_Graphics), [JPG](https://en.wikipedia.org/wiki/JPEG_File_Interchange_Format), and [PNG](https://en.wikipedia.org/wiki/Portable_Network_Graphics) are auto-extruded into a 3D parts. ![A minimalist approach](/img/kiri-moto.png) @@ -27,4 +27,3 @@ Application preferences are mode-dependent. For example, CNC preferences show an ![CNC Mode Preferences](/img/preferences-cam.png) ![FDM Mode Preferences](/img/preferences-fdm.png) - diff --git a/docs/kiri-moto/localization.md b/docs/kiri-moto/localization.md index 53011d13..12b59aec 100644 --- a/docs/kiri-moto/localization.md +++ b/docs/kiri-moto/localization.md @@ -15,4 +15,3 @@ Replace all values with correct localized values and submit a [pull request](htt If you have the time, please consider also localizing `web/kiri/lang/en-help.html` Test your language by appending `?ln:XX` to your local URL where `XX` is the name of your language file _without_ the `.js` extension. - diff --git a/docs/kiri-moto/octoprint.md b/docs/kiri-moto/octoprint.md index dc4b2ae1..85e7a1f8 100644 --- a/docs/kiri-moto/octoprint.md +++ b/docs/kiri-moto/octoprint.md @@ -14,8 +14,6 @@ The `send` button will spool a print directly to OctoPrint where it will sit und ![](/img/gridsend.png) - - ## Local Sending OctoPrint has a web api endpoint that can be configured on `Export` when enabled. diff --git a/docs/kiri-moto/shared-profiles.md b/docs/kiri-moto/shared-profiles.md index bd2970aa..427ecbdf 100644 --- a/docs/kiri-moto/shared-profiles.md +++ b/docs/kiri-moto/shared-profiles.md @@ -6,9 +6,9 @@ description: For Classrooms and Shared Workstations, Maintain Consistent Setups [Kiri:Moto](https://grid.space/kiri/) stores all settings in our browser's local cache. There are times when you want to share settings between computers or setup a master config that is shared in classroom settings. In order to facilitate this, Kiri:Moto provides two hot keys and a URL short-cut for loading a default configuration at the time the application page loads. -* `U` key (uppercase) to get a unique settings key -* `u` key (lowercase) to restore a setting with a given key -* append `#key` to Kiri's URL to load the app with a given key +- `U` key (uppercase) to get a unique settings key +- `u` key (lowercase) to restore a setting with a given key +- append `#key` to Kiri's URL to load the app with a given key Using the last method, you can create a master settings configuration then give our or link to Kiri with an url that looks like: diff --git a/docs/src/components/carousel.js b/docs/src/components/carousel.js index 99532be5..49634d04 100644 --- a/docs/src/components/carousel.js +++ b/docs/src/components/carousel.js @@ -1,76 +1,64 @@ -import React from 'react'; -import { Carousel } from 'react-responsive-carousel'; -import 'react-responsive-carousel/lib/styles/carousel.min.css'; +import React from "react"; +import { Carousel } from "react-responsive-carousel"; +import "react-responsive-carousel/lib/styles/carousel.min.css"; - -const imageDescripts= { - outline:[ - [ '/1.png', 'outline of a complex part'], - [ '/2.png', 'outline of a non-flat part with inside holes'], - [ '/3.png', 'outside-only outline'], - [ '/4.png', 'inside-only outline'], +const imageDescripts = { + outline: [ + ["/1.png", "outline of a complex part"], + ["/2.png", "outline of a non-flat part with inside holes"], + ["/3.png", "outside-only outline"], + ["/4.png", "inside-only outline"], ], - level:[ - [ '/1.png', 'level of a large part'], - [ '/2.png', `level of a square part's stock`], - [ '/3.png', `level of a part with a non-uniform top surface`], + level: [ + ["/1.png", "level of a large part"], + ["/2.png", `level of a square part's stock`], + ["/3.png", `level of a part with a non-uniform top surface`], ], - rough:[ - [ '/1.png', 'rough cut of two parts'], - [ '/2.png', 'side-view of a rough cut'], - [ '/3.png', 'rough cut of a part with a complex top surface'], - [ '/4.gif', 'animate of complex rough cut'], + rough: [ + ["/1.png", "rough cut of two parts"], + ["/2.png", "side-view of a rough cut"], + ["/3.png", "rough cut of a part with a complex top surface"], + ["/4.gif", "animate of complex rough cut"], ], - contour:[ - [ '/1.png', 'close-up of a precise contour'], - [ '/2.png', 'contour of multiple parts at once'], - [ '/3.png', 'low precision contour'], + contour: [ + ["/1.png", "close-up of a precise contour"], + ["/2.png", "contour of multiple parts at once"], + ["/3.png", "low precision contour"], ], - register:[ - [ '/1.png', '2-drill register'], - [ '/2.png', '3-drill register'], - [ '/3.png', 'jigsaw register'], + register: [ + ["/1.png", "2-drill register"], + ["/2.png", "3-drill register"], + ["/3.png", "jigsaw register"], ], - drill:[ - [ '/1.png', 'drills for a robot baseplate'], - [ '/2.png', 'drills for a pegboard'], - [ '/3.png', 'selecting only matching-size holes'], + drill: [ + ["/1.png", "drills for a robot baseplate"], + ["/2.png", "drills for a pegboard"], + ["/3.png", "selecting only matching-size holes"], ], - trace:[ - [ '/1.png', 'toolpath tracing a design into a part'], - [ '/2.png', 'selecting loops to trace'], - [ '/3.png', 'tracing edges for deburring'], - [ '/4.png', 'trace to clear a pocket'], - [ '/5.png', 'arbitrary offset outline'], + trace: [ + ["/1.png", "toolpath tracing a design into a part"], + ["/2.png", "selecting loops to trace"], + ["/3.png", "tracing edges for deburring"], + ["/4.png", "trace to clear a pocket"], + ["/5.png", "arbitrary offset outline"], ], - pocket:[ - [ '/1.png', 'selecting areas to pocket'], - [ '/2.png', 'toolpath for pocket'], - [ '/3.gif', 'pocket animation'], - [ '/4.png', 'toolpath for v-bit carve'], - [ '/5.png', 'many-pocketed part'], + pocket: [ + ["/1.png", "selecting areas to pocket"], + ["/2.png", "toolpath for pocket"], + ["/3.gif", "pocket animation"], + ["/4.png", "toolpath for v-bit carve"], + ["/5.png", "many-pocketed part"], ], - gcode:[ - [ '/1.png', 'the gcode editor popup'], + gcode: [["/1.png", "the gcode editor popup"]], + laserOn: [], + laserOff: [], + index: [], + lathe: [], + tabs: [ + ["/1.png", "tabs added to part"], + ["/2.png", "sliced part with tabs"], ], - laserOn:[ - - ], - laserOff:[ - - ], - index:[ - - ], - lathe:[ - - ], - tabs:[ - [ '/1.png', 'tabs added to part'], - [ '/2.png', 'sliced part with tabs'], - ] -} - +}; /** * A carousel of images. @@ -78,17 +66,15 @@ const imageDescripts= { * @param {keyof typeof imageDescripts} images - The key to an array of images and descriptions. * @returns {ReactElement} - A carousel of the given images. */ -export function ImageCarousel({base,images}) { +export function ImageCarousel({ base, images }) { return ( - - {imageDescripts[images].map(([image,caption], index) => ( - -
- -

{caption}

-
+ + {imageDescripts[images].map(([image, caption], index) => ( +
+ +

{caption}

+
))} -
); -} \ No newline at end of file +} diff --git a/docs/src/custom.css b/docs/src/custom.css index abe3290e..e51d1d87 100644 --- a/docs/src/custom.css +++ b/docs/src/custom.css @@ -1,9 +1,7 @@ - - -.navbar{ - height:5rem +.navbar { + height: 5rem; } -.navbar .navbar__items{ - height:4.5rem -} \ No newline at end of file +.navbar .navbar__items { + height: 4.5rem; +}