Skip to main content

A desktop application for laser cutting and engraving

Project description

GitHub Release PyPI version Snap Release Launchpad PPA License: MIT

Get it from the Snap Store Get it from Flathub Become a Patron

Rayforge

Rayforge is a modern, cross-platform 2D CAD, G-code sender and control software for GRBL, Marlin, Ruida, and Smoothieware-based laser cutters and engravers. Built with Gtk4 and Libadwaita, it provides a clean, native interface for Linux, MacOS and Windows, offering a full suite of tools for both hobbyists and professionals.

Screenshot

You can also check the official Rayforge homepage. We also have a Discord.

Key Features

Design & Editing

Feature Description
Parametric Sketch Editor Create precise, constraint-based 2D designs with geometric and dimensional constraints.
Comprehensive 2D Canvas Full suite of tools: alignment, transformation, measurement, zoom, pan, and more.
Multi-Layer Operations Assign different operations (e.g., engrave then cut) to layers in your design.
Stock Material System Document-level stock with geometry, thickness, and material assignment.
Undo/Redo Full undo/redo support across all document operations.
Broad File Support Import from SVG, DXF, PDF, JPEG, PNG, BMP, and Ruida (.rd). Export to SVG and DXF.
Project Files (.ryp) Compressed project format preserving all assets, layers, and configurations.

Operations & Toolpaths

Feature Description
Versatile Operations Supports Contour, Raster Engraving (with cross-hatch fill), Shrink Wrap, Depth Engraving, and Frame.
2.5D Cutting Multi-pass cuts with configurable step-down for thick materials.
True 4th Axis Support Full rotary axis support - as 4th axis, or axis replacement mode for hobby machines.
Animated 3D Simulation Simulate toolpaths in 3D with animated playback, scrubber, and speed control.
Holding Tabs Add tabs to contour cuts. Supports manual and automatic placement.
Overscan & Kerf Comp. Improve engraving quality with overscan; ensure dimensional accuracy with kerf compensation.
Dithering Algorithms Floyd-Steinberg and Bayer ordered dithering for high-quality raster engraving.
Post-Processors Lead-in/lead-out, merge overlapping lines, and crop toolpaths to stock boundary.
Advanced Path Generation Image tracing, travel time optimization, path smoothing, and spot size interpolation.

Machine Control

Feature Description
Multi-Machine Profiles Configure and instantly switch between multiple machine profiles.
Device Profiles Declarative device packages with import/export for sharing configurations.
Work Coordinate Systems 6 WCS (G54-G59) with per-layer assignment for cutting at different offsets.
No-Go Zones Define restricted areas with collision detection before sending G-code.
Machine Hours & Maintenance Track operating hours with configurable maintenance counters and notification thresholds.
GRBL Firmware Settings Read and write firmware parameters ($$) directly from the UI.
Arc & Bezier Curves Native G2/G3 arc and G5 bezier curve support with automatic linearization.
Multi-Laser Operations Choose different lasers for each operation in a job.
G-code Dialects Supports GRBL, Smoothieware, Marlin, LinuxCNC, Mach4, and custom dialects via built-in editor.
G-code Macros & Hooks Run custom G-code snippets before/after jobs. Supports variable substitution.
Pre-flight Checks Validates bounds, work area, and no-go zone collisions before sending a job.
G-code Console Interactive console with syntax highlighting and search.

Materials & Presets

Feature Description
Material Library 60+ built-in materials across categories with search and user-created material libraries.
Recipe/Preset System Auto-matching presets by material, thickness, machine, and laser head with specificity scoring.
Material Test Grid Generate power/speed test grids to find optimal laser settings for a given material.

Workflow & Automation

Feature Description
Camera Integration USB camera for workpiece alignment, positioning, background tracing, and fisheye calibration.
AI Workpiece Generation Generate SVG workpieces from text prompts using OpenAI-compatible AI providers.
Print & Cut Alignment Align cuts to printed material using registration marks with a guided wizard.
Headless/CLI Mode Worker-only mode without UI for batch processing and automation.
Projector Mode Project toolpaths onto your machine bed for alignment.

Platform & Extensibility

Feature Description
Modern UI Polished UI built with Gtk4 and Libadwaita. Supports system, light, and dark themes.
Addon System Built-in addon manager for installing and managing community extensions.
Extensible Open development model makes it easy to add support for new devices.
Cross-Platform Native builds for Linux, Mac and Windows.
Multi-Language Available in English, Portuguese, Spanish, German, French, Ukrainian, and Chinese.
Update Checker Automatic background check for new versions via the GitHub Releases API.

Device Support

Device Type Connection Method Notes
GRBL Serial Port Supported since version 0.13. The most common connection type.
GRBL Telnet Supported since version 0.16.
GRBL Network (WiFi/Ethernet) Connect to any GRBL device on your network.
Smoothieware Telnet Supported since version 0.15.
Marlin Serial Port Supported since version 1.7.2.
Ruida Network (UDP) Connect to Ruida-based controllers via UDP.
OctoPrint Network (HTTP API) Connect through an OctoPrint server.

Installation

For installation instructions refer to our homepage.

Development

For detailed information about developing for Rayforge, including setup instructions, testing, and contribution guidelines, please see the Developer Documentation.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rayforge-1.7.6.tar.gz (5.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rayforge-1.7.6-py3-none-any.whl (6.1 MB view details)

Uploaded Python 3

File details

Details for the file rayforge-1.7.6.tar.gz.

File metadata

  • Download URL: rayforge-1.7.6.tar.gz
  • Upload date:
  • Size: 5.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rayforge-1.7.6.tar.gz
Algorithm Hash digest
SHA256 b2124202e214eae85d56376eccc13874228c852e5ba9cfe258ec55a440e7fe48
MD5 1d7bfdbe17e3aafa2a95ca6d8ae3116b
BLAKE2b-256 6cbc7e6430a7e006e8695459753374e323ad52ca9d03da07acfa1625144b2c8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforge-1.7.6.tar.gz:

Publisher: publish-to-pypi.yml on barebaric/rayforge

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rayforge-1.7.6-py3-none-any.whl.

File metadata

  • Download URL: rayforge-1.7.6-py3-none-any.whl
  • Upload date:
  • Size: 6.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for rayforge-1.7.6-py3-none-any.whl
Algorithm Hash digest
SHA256 d0a6a382e1f1daa23b280ab072e58879e707324a4bb7dfc64cd63cbe5e628c19
MD5 e27aea9a5d58c6141915e5c58137a84a
BLAKE2b-256 3f98e73e9515dd9f9eaf73766806f9245ca5eb4e388bede336c4d2bf92b32a75

See more details on using hashes here.

Provenance

The following attestation bundles were made for rayforge-1.7.6-py3-none-any.whl:

Publisher: publish-to-pypi.yml on barebaric/rayforge

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page