The Charm SDK documentation presupposes familiarity with Juju.
The Charm SDK is a toolkit for building charms.
The SDK provides a Python library for developing and testing charms, ops
, and a CLI tool for building, packaging and publishing charms, charmcraft
.
A charm can be developed in a variety of ways. However, the SDK provides useful abstractions and CLI commands so you can develop and share your charm better and faster.
Whether you are a charm developer or a charm end user, with the Charm SDK you get a smoother experience.
For a collection of existing charms, see Charmhub. To deploy and manage an existing or new charm, see Juju docs.
In this documentation
Tutorials Get started - a hands-on introduction to the Charm SDK for new users |
How-to guides Step-by-step guides covering key operations and common tasks |
Explanation Concepts - discussion and clarification of key topics |
Reference Technical information - specifications, APIs, architecture |
Project and community
The Juju SDK is an open source project that warmly welcomes community projects, contributions, suggestions, fixes and constructive feedback.
- Learn about the Roadmap & Releases
- Read our Code of Conduct
- Join our Matrix chat
- Join the Discourse forum to talk about Juju, charms, docs, or to meet the community
- Report a bug on GitHub (for code) or GitHub (for docs)
- Contribute to the documentation on Discourse
- Contribute to the code on Github
- Visit the Juju careers page