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

Remco Burema 75747b66c3 Nightlies: Hardcode text-color of build-name. 2 years ago
.github 67dec0dd3a Update bugreport.yaml 2 years ago
cmake bde680f353 Use modern >=3.12 cmake find_package Python logic 2 years ago
cura 04ba72091b Show build-version in header if 'alternate version' enabled. 2 years ago
docker f8f58c51c9 Add LD_LIBRARY_PATH 2 years ago
docs 9b23d3ac9a Add drawing of how per object stacks work 2 years ago
icons 84d9d5bec4 Embed more sizes in the ico file so that it looks better 2 years ago
plugins d1374c7220 Show striped bacground when 'alternate version' enabled. 2 years ago
resources 75747b66c3 Nightlies: Hardcode text-color of build-name. 2 years ago
scripts 77f5c91b77 Update names of function calls 2 years ago
tests 12ee57e4ad Merge branch 'master' into CURA-8640_PyQt6 2 years ago
.dockerignore cd01b096b5 Emit backend errors so we can process them differently than through a qml notification 6 years ago
.gitignore 097cc9388a Added orientiation plugin to gitignore 2 years ago
.pylintrc bbee2e0a14 Fix regex for private & long functions 4 years ago
CITATION.cff 67d76e3af8 Change version in citation file to 4.12 3 years ago
CMakeLists.txt c3c59ef67a fixed install dir 2 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 7677f999ec Fix cura-build-environment link in README.md 2 years ago
SECURITY.md 2cd5b2d46d Add security policy 2 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 8cf1afc770 Update master branch to main in XML file link 2 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-logo.PNG b31e4e81ce Update readme 3 years ago
cura.sharedmimeinfo 06cb628699 Update desktop and mimeinfo to add gcode mime type 6 years ago
cura_app.py 21fdaa70dd Merge branch '4.13' of github.com:Ultimaker/Cura 2 years ago
pytest.ini 46ff3f4408 Added unit test stub 8 years ago
requirements.txt 20907bc295 Update requirements from cura-build-environment 2 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
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.