Swiftray is a free and open-sourced software for grbl-based laser cutters and engravers.
Features
- Layer controls - cut and engrave simultaneously
- Divide by color - efficient workflows for third party design software
- Hack as you like - you can modify all codes to match you self-built lasers
- Blazing performance - written in C++
- Low memory usage - even runnable on embedded system
- Cross-platform - compiles on Windows and MacOS
- Compilers must support C++17 standards.
- Qt Framework 6.7.2
- Qt Framework and Creator can be installed via online installer
- OpenCV 4
- Boost 1.8
- Potrace
- libxml2
- libiconv (Windows)
- icu4c (MacOS)
- poppler
- glib
- cairo
git clone https://github.com/flux3dp/swiftray.git
cd swiftray
git submodule update --init --recursive
cd third_party/sentry-native
cmake -B build -S . \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DSENTRY_BACKEND=crashpad \
-DSENTRY_INTEGRATION_QT=YES \
-DCMAKE_PREFIX_PATH=<PATH_TO_QT>/lib/cmake
cmake --build build --config RelWithDebInfo --parallel
cmake --install build --prefix install
# The process can be skipped since the sentry-native can be installed via vcpkg
See discussions here
in msys2 install the following packages first
pacman -S base-devel
pacman -S mingw-w64-x86_64-gcc
pacman -S mingw-w64-x86_64-autotools
pacman -S mingw-w64-x86_64-make
pacman -S mingw-w64-x86_64-zlib
pacman -S mingw-w64-x86_64-python-conan
then
$ cd third_party/libpotrace
$ curl https://potrace.sourceforge.net/download/1.16/potrace-1.16.tar.gz -o potrace-1.16.tar.gz
$ tar -xzvf potrace-1.16.tar.gz
$ conan install . --build=missing
$ conan build .
$ conan create . user/testing
$ mkdir build
$ cd build
$ cmake ..
$ make -j12
- Install vcpkg, the dependency manager
- Build using Visual Studio by automatically loading the CMake project
- For local development, set env QML2_IMPORT_PATH to
/path/to/qml/dlls
We can use built-in tool macdeployqt
to deploy the app bundle generated by QMake
$ cd <bin folder in Qt>
$ ./macdeployqt <absolute path>/build-swiftray-Desktop_Qt_5_15_2_clang_64bit-Release/Swiftray.app -qmldir=<absolute path>/swiftray//src/windows/qml -dmg
$ <Qt_Installed_Dir>/6.7.2/msvc2019_64/bin/windeployqt.exe --qmldir src/windows/qml --compiler-runtime build/bin/Swiftray.exe
- Use Modern C++ as possible as you can.
- Reduce logic implementation in widgets and QML codes, to maintain low coupling with Qt Framework.
Run $ doxygen Doxygen
and view docs/index.html
Swiftray is community developed, commercially supported for long-term development.
Swiftray is original brought to you by the development team at FLUX Inc.
Swiftray is GNU General Public License v3.0 licensed.