3D printer / slicing GUI built on top of the Uranium framework https://ultimaker.com/software/ultimaker-cura/

Jelle Spijker 3c13ebfeeb Fix dev being (un-)plugged while still processing prev change 3 years ago
.github 0c8e9297e0 Merge branch 'master' into issue-forms 3 years ago
cmake 2d1128f088 Merge pull request #8196 from Ultimaker/speed_up_ci 4 years ago
cura 3c13ebfeeb Fix dev being (un-)plugged while still processing prev change 3 years ago
docker 78ecb7ec9a Change the devtoolset to version 8 3 years ago
docs d2c1dc6f6c Fix review comments 3 years ago
icons 879d45b430 New application icons 9 years ago
plugins 6feaecc450 Merge branch '4.11' of github.com:Ultimaker/Cura 3 years ago
resources e5a2c612f9 Merge pull request #10338 from Ultimaker/CURA-8496_Fix_arrow_overlapping_with_material_name 3 years ago
scripts e9d1e91ec2 Convert identation to spaces for line_length_checker script 3 years ago
tests 3be4b1a441 Fix failing test 3 years ago
.dockerignore cd01b096b5 Emit backend errors so we can process them differently than through a qml notification 6 years ago
.gitignore 8af4e0d05a Remove spaghetti settings from 462 visible_settings when upgrading 4 years ago
.pylintrc bbee2e0a14 Fix regex for private & long functions 4 years ago
CITATION.cff 8d9978e7ff Add citation file 3 years ago
CMakeLists.txt 6d5822375a Update cmakelists to install renamed metadata 3 years ago
Dockerfile cd01b096b5 Emit backend errors so we can process them differently than through a qml notification 6 years ago
Jenkinsfile e6d9ad31ab Use generated Makefiles to run tests 6 years ago
LICENSE 9a193ad5c5 Changing AGPLv3 to LGPLv3 7 years ago
README.md 65a2cd30fe Corrections to the paths to log files 3 years ago
build.sh 881be3c405 Add the scripts used to build the release package (still needs some more work, but works on my desktop) 9 years ago
com.ultimaker.cura.appdata.xml 5a8167cbff Fix unescaped & 3 years ago
com.ultimaker.cura.desktop.in a972648f67 Rename metadata files to conform with appstream spec 3 years ago
contributing.md a7f9fc5f6b Add contribution guidelines 5 years ago
cura.sharedmimeinfo 06cb628699 Update desktop and mimeinfo to add gcode mime type 6 years ago
cura_app.py 354d96d87a Fix getting PyCapsule error on import 3 years ago
pytest.ini 46ff3f4408 Added unit test stub 8 years ago
requirements.txt d81e1d090c Remove unsued dependency from requirements 3 years ago
run_coverage.py 87e0b8629a Add convenience script for running complete coverage 5 years ago
run_in_docker.sh e8481f5505 Cleanup 6 years ago
run_mypy.py 596d1570fb Show error code if MyPy failed 3 years ago
screenshot.png 52a6618630 Write a new starter text and add a screenshot 4 years ago
test-in-docker.sh b6216896cb Add a script to execute the CI scripts on a local Docker instance 4 years ago

README.md

Cura

Ultimaker Cura is a state-of-the-art slicer application to prepare your 3D models for printing with a 3D printer. With hundreds of settings and hundreds of community-managed print profiles, Ultimaker Cura is sure to lead your next project to a success.

Screenshot

Logging Issues

For crashes and similar issues, please attach the following information:

  • (On Windows) The log as produced by dxdiag (start -> run -> dxdiag -> save output)
  • The Cura GUI log file, located at
    • %APPDATA%\cura\<Cura version>\cura.log (Windows), or usually C:\Users\<your username>\AppData\Roaming\cura\<Cura version>\cura.log
    • $HOME/Library/Application Support/cura/<Cura version>/cura.log (OSX)
    • $HOME/.local/share/cura/<Cura version>/cura.log (Ubuntu/Linux)

If the Cura user interface still starts, you can also reach this directory from the application menu in Help -> Show settings folder

For additional support, you could also ask in the #cura channel on libera.chat. For help with development, there is also the #cura-dev channel.

Dependencies

  • Uranium Cura is built on top of the Uranium framework.
  • CuraEngine This will be needed at runtime to perform the actual slicing.
  • fdm_materials Required to load a printer that has swappable material profiles.
  • PySerial Only required for USB printing support.
  • python-zeroconf Only required to detect mDNS-enabled printers.

For a list of required Python packages, with their recommended version, see requirements.txt.

This list is not exhaustive at the moment, please check the links in the next section for more details.

Build scripts

Please check out cura-build for detailed building instructions.

If you want to build the entire environment from scratch before building Cura as well, cura-build-environment might be a starting point before cura-build. (Again, see cura-build for more details.)

Running from Source

Please check our Wiki page for details about running Cura from source.

Plugins

Please check our Wiki page for details about creating and using plugins.

Supported printers

Please check our Wiki page for guidelines about adding support for new machines.

Configuring Cura

Please check out Wiki page about configuration options for developers.

Translating Cura

Please check out Wiki page about how to translate Cura into other languages.

License

Cura is released under the terms of the LGPLv3 or higher. A copy of this license should be included with the software.