Charmcraft is the command-line tool for initializing, packaging, and publishing charms, the software operators used by Juju. With Charmcraft, you can bypass the boilerplate steps of crafting a charm and focus on what matters — building scalable, configurable, and easy-to-deploy applications for Juju.
Charmcraft provides commands to streamline every step of the charm development process, from initializing your charm project to releasing it on Charmhub.
In your project's root directory, initialize your charm project with basic template content by running:
charmcraft init
Once you've configured your project to suit the needs of the application you're charming, build the charm by running:
charmcraft pack
If you're ready to distribute your charm, you can register its name on Charmhub with:
charmcraft register
Upload your charm and any subsequent revisions to Charmhub with:
charmcraft upload
Charmcraft is available on all major Linux distributions and macOS.
The recommended way to install Charmcraft on Linux systems is through its snap.
sudo snap install charmcraft --classic
For information on installing Charmcraft on other platforms, refer to our installation guide.
The Charmcraft documentation provides guidance and learning materials for every step of the charming process. Whether you're new to charming or a seasoned expert, this is the best place to deepen your knowledge.
To get in touch with developers and other charmcraft-badge: https://snapcraft.io/charmcraft/badge.svg charmcraft-site: https://snapcraft.io/charmcraft members of the charming community, reach out on the forum or in our Matrix channel.
You can report any issues or bugs on the project's GitHub repository.
Charmcraft is covered by the Ubuntu Code of Conduct.
Charmcraft is open source and part of the Canonical family. We would love your help.
If you're interested, start with the contribution guide. https://github.com/canonical/charmcraft/actions/workflows/spread.yaml/badge.svg?event=push We welcome any suggestions and help with the docs. The Canonical Open Documentation Academy is the hub for doc development, including Charmcraft docs. No prior coding experience is required.
Charmcraft is released under the Apache-2.0 license
© 2023-2025 Canonical Ltd.