api-design
FreeBest practices for designing CosmWasm smart contract APIs. Use when defining message types, designing execute/query interfaces, or optimizing API ergonomics.
The English summary is being prepared. Showing the original description.
Guide for writing conventional commit messages. Use when committing changes, writing commit messages, or reviewing commit history.
The English summary is being prepared. Showing the original description.
See how to installReview the instructions the agent will receive before you install.
<type>(<scope>): <verb> <subject>
One line only. No body. No footer (except for breaking changes).
⚠️ Avoid weak verbs:
add,remove,change,update,modify
Use precise, action-oriented verbs:
| Verb | Use When |
|---|---|
enforce | Adding constraints or rules |
introduce | Bringing in new concepts/APIs |
implement | Building out functionality |
prevent | Blocking undesired behavior |
fix | Correcting bugs |
refactor | Restructuring without behavior change |
clarify | Improving readability/naming |
align | Making consistent with standards |
tighten | Strengthening validation/constraints |
harden | Security or robustness improvements |
validate | Input/state verification |
handle | Managing edge cases |
support | Enabling new use cases |
ensure | Guaranteeing invariants |
document | Documentation work |
| Type | Description | Triggers |
|---|---|---|
feat | New feature | Minor version bump |
fix | Bug fix | Patch version bump |
docs | Documentation only | No release |
style | Formatting, whitespace | No release |
refactor | Code restructuring | No release |
perf | Performance improvement | Patch version bump |
test | Adding/updating tests | No release |
build | Build system, dependencies | No release |
ci | CI/CD configuration | No release |
chore | Maintenance tasks | No release |
axone- prefix: gov, logicworkflow, dependabot, README, make, depsSee examples for comprehensive good and bad examples.
Quick reference:
feat(gov): introduce quadratic voting mechanism
fix(handlers): prevent overflow in vote counting
refactor(state): clarify storage key naming
test(gov): validate error paths for unauthorized access
build(deps): enforce abstract-sdk 0.26.1
Rule: One commit = one intention
| Instead of... | Prefer... |
|---|---|
| One big mixed commit | Multiple focused commits |
feat: implement X and fix Y | Two separate commits |
| Tests bundled with feature | Separate test: commit |
| Build changes with feature | Separate build: commit |
Use ! after type/scope:
feat(msg)!: restructure ExecuteMsg variants
refactor(api)!: enforce stricter validation schema
Commits are validated using commitlint. Ensuring lint passes is mandatory.
Validate locally:
npm i -g @commitlint/cli @commitlint/config-conventional
echo "feat(gov): introduce voting mechanism" | commitlint --extends @commitlint/config-conventional
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Best practices for designing CosmWasm smart contract APIs. Use when defining message types, designing execute/query interfaces, or optimizing API ergonomics.
The English summary is being prepared. Showing the original description.
Guide for writing Rust doc comments that produce accurate generated contract documentation. Use when editing Instantiate/Execute/Query/Response types or any public schema-facing API.
The English summary is being prepared. Showing the original description.
Axone contract structure and Abstract SDK patterns. Use when scaffolding or refactoring contracts, deciding layer boundaries, wiring AppContract entrypoints, or adding module metadata and replies.
The English summary is being prepared. Showing the original description.
Axone deployment workflows with cargo-make, cw-orch, and Abstract. Use when publishing modules, installing them on accounts, running local chain tasks, or inspecting deployments.
The English summary is being prepared. Showing the original description.
Guide for regenerating Axone contract schemas and rendered Markdown docs. Use when contract APIs or metadata change, when checking generated-doc drift, or when preparing documentation commits.
The English summary is being prepared. Showing the original description.
Domain-driven modeling patterns for Axone contracts. Use when introducing domain concepts, encoding invariants, or deciding boundaries between domain, handlers, services, gateways, queries, and state.
The English summary is being prepared. Showing the original description.