Charmcraft¶
Charmcraft is a tool designed to simplify the creation, building, and sharing of a Juju charm.
When you initialise a charm with Charmcraft, you automatically get all the crucial project files, pre-populated with helpful template content. These files are such that they can be packed right away; however, to make them meaningul for the application you are charming, you’ll want to customise the YAML and ops-powered Python in these files. For certain types of applications (Django, FastAPI, Flask, Go), if you initialise with a suitable Charmcraft extension, things are even easier – just tweak a few values in the YAML and you get a fully functioning charm. Either way, once you’re pleased with what you’ve got, you can again use Charmcraft to publish your charm on Charmhub.
You can create, build, and share a charm any way you want, but with Charmcraft you get state-of-the-art results in record time.
If you’re a charm author, you must use Charmcraft!
In this documentation¶
Start here: a hands-on introduction to Example Product for new users
Step-by-step guides covering key operations and common tasks
Technical information - specifications, APIs, architecture
Project and community¶
Charmcraft is a member of the Canonical family. It’s an open source project that warmly welcomes community projects, contributions, suggestions, fixes and constructive feedback.