You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Alexei Dorofeev 7faeb18604 Merge branch 'T10205' пре 4 месеци
.github Improve issue template a bit пре 2 година
cmake Fix PYTHONPATH pass-through пре 2 година
cura T9011: Layout changes. Added "syringe_printer" option to printer definition. пре 4 месеци
docs Some extra tips for users of the profiler. пре 3 година
icons updated colors, .ico and Cura LE icons and splash screen пре 2 година
plugins Updated Marlin FW to v2.0.0.174 for LulzBot Bio printer. пре 4 месеци
resources T10205 PLA updates for Pro and Workhorse пре 4 месеци
tests Merge remote-tracking branch 'um/3.2' пре 2 година
.gitignore adding pro series filament пре 1 година
CMakeLists.txt Reintroducing rCT7472f5546afa0682f24bb5a8fe0ce0397f82ab81 Add possibility to manage PYTHON_SITE_PACKAGES_DIR. пре 2 година
CPackConfig.cmake Removing PostProcessing repo version number, since it was merge into cura-lulzbot repo. пре 1 година
Jenkinsfile Move Jenkins timeout into parallel_nodes block пре 2 година
LICENSE Changing AGPLv3 to LGPLv3 пре 2 година Merge remote-tracking branch 'um/3.2' пре 2 година Add the scripts used to build the release package (still needs some more work, but works on my desktop) пре 4 година Merge remote-tracking branch 'um/3.1' into upstream3.1 пре 2 година
cura.appdata.xml T1244: Replacing Cura2 names with cura-lulzbot or Cura LulzBot Edition. пре 2 година
cura.sharedmimeinfo Adding cura.sharedmimeinfo пре 4 година T1152: For linux log console output for frozen app to console instead of the file. пре 2 година
installer.nsi T5842: added rambo driver installation пре 11 месеци
pytest.ini Added unit test stub пре 3 година T1244: Replacing Cura2 names with cura-lulzbot or Cura LulzBot Edition. пре 2 година Make the script find Uranium via the PYTHONPATH env var. пре 3 година Change AGPL to LGPL пре 2 година
version.json updated version to 3.2 пре 2 година


This is the new, shiny frontend for Cura. Check daid/LegacyCura for the legacy Cura that everyone knows and loves/hates. We re-worked the whole GUI code at Ultimaker, because the old code started to become unmaintainable.

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
    • $USER/Library/Application Support/cura/<Cura version>/cura.log (OSX)
    • $USER/.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 FreeNode IRC. For help with development, there is also the #cura-dev channel.


  • Uranium Cura is built on top of the Uranium framework.
  • CuraEngine This will be needed at runtime to perform the actual slicing.
  • PySerial Only required for USB printing support.
  • python-zeroconf Only required to detect mDNS-enabled printers

Configuring Cura

  • Link your CuraEngine backend by inserting the following line in ~/.config/cura-lulzbot/config.cfg : [backend] location = /[path_to_the..]/CuraEngine/build/CuraEngine

Build scripts
Please checkout [cura-build]( for detailed building instructions.

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
If you'd like to contribute a translation of Cura, please first look for [any existing translation]( If your language is already there in the source code but not in Cura's interface, it may be partially translated.

There are four files that need to be translated for Cura:
3. (This one is the most work.)

Copy these files and rename them to `*.po` (remove the `t`). Then create the actual translations by filling in the empty `msgstr` entries. These are gettext files, which are plain text so you can open them with any text editor such as Notepad or GEdit, but it is probably easier with a specialised tool such as [POEdit]( or [Virtaal](

Do not hestiate to ask us about a translation or the meaning of some text via Github Issues.

Once the translation is complete, it's probably best to test them in Cura. Use your favourite software to convert the .po file to a .mo file (such as [GetText]( Then put the .mo files in the `.../resources/i18n/<language code>/LC_MESSAGES` folder in your Cura installation. Then find your Cura configuration file (next to the log as described above, except on Linux where it is located in `~/.config/cura`) and change the language preference to the name of the folder you just created. Then start Cura. If working correctly, your Cura should now be translated.

To submit your translation, ideally you would make two pull requests where all `*.po` files are located in that same `<language code>` folder in the resources of both the Cura and Uranium repositories. Put `cura.po`, `fdmprinter.def.json.po` and `fdmextruder.def.json.po` in the Cura repository, and put `uranium.po` in the Uranium repository. Then submit the pull requests to Github. For people with less experience with Git, you can also e-mail the translations to the e-mail address listed at the top of the [cura.pot]( file as the `Report-Msgid-Bugs-To` entry and we'll make sure it gets checked and included.

After the translation is submitted, the Cura maintainers will check for its completeness and check whether it is consistent. We will take special care to look for common mistakes, such as translating mark-up `<message>` code and such. We are often not fluent in every language, so we expect the translator and the international users to make corrections where necessary. Of course, there will always be some mistakes in every translation.

When the next Cura release comes around, some of the texts will have changed and some new texts will have been added. Around the time when the beta is released we will invoke a string freeze, meaning that no developer is allowed to make changes to the texts. Then we will update the translation template `.pot` files and ask all our translators to update their translations. If you are unable to update the translation in time for the actual release, we will remove the language from the drop-down menu in the Preferences window. The translation stays in Cura however, so that someone might pick it up again later and update it with the newest texts. Also, users who had previously selected the language can still continue Cura in their language but English text will appear among the original text.

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