Skip to main content

Anvil Documentation

Ask DeepWiki

Python

Windows Linux macOS

Introduction to Anvil

Anvil is a comprehensive development toolkit designed for creating Minecraft Bedrock Edition content with ease and flexibility. Anvil aims to simplify the creation of custom Minecraft entities, blocks, commands, and more by leveraging Python and embracing a modular, component-based design philosophy.

Whether you're a seasoned Minecraft modder or just starting your journey in content development, Anvil provides you with the tools to make your creations come to life. Its features are designed to streamline workflows, enforce consistency, and offer a robust framework for handling the complexities of Minecraft content.

Community Contributions

Anvil is intended to grow as a community-driven project. Contributions are very much encouraged, whether that's fixing bugs, improving documentation, or adding support for new Minecraft Bedrock features. If you have ideas or want to help build the toolkit, we want you involved.

Key Features

  • Modular Development: Design blocks, entities, and features in a reusable manner to make your content scalable and easy to manage.
  • Schema Management: Automate JSON schema creation and validation for Minecraft packs to eliminate manual errors.
  • Report Generation: Generate detailed reports about the contents of your project, including entities, blocks, and other assets, for easy tracking and management.
  • Project Validation: Validate your project before submission to the Minecraft Marketplace, raising any errors or warnings that need to be addressed to meet Marketplace standards.
  • Multi-Format Packaging: Package your project into multiple formats, worlds, addons, templates and more.

Getting Started with Anvil

Prerequisites

To use Anvil, ensure you have the following installed:

  • Python 3.13 or higher.
  • Operating System: Windows, Linux, or macOS.

Installation

To install Anvil, you can use pip:

pip install mcanvil

This will install the latest version of Anvil along with its dependencies.

Creating Your First Project

To create a new Minecraft development project with Anvil, open your terminal and run the following command:

anvil init <namespace> <project_name> [options]

(You can also use the alias anvil create <namespace> <project_name> [options])

  • namespace: A unique identifier for your project. The namespace minecraft is reserved and cannot be used.
  • project_name: The name of your project.

Optional flags include:

  • --preview: Set up the project for Minecraft Preview.
  • --scriptapi: Adds support for Script API dependencies.
  • --addon: Marks the package as an addon, enforcing relevant constraints.
  • --vscode: Adds support for Visual Studio Code (generates workspace and launch configuration).

Example

anvil init my_ns awesome_project --scriptapi --vscode

This command will:

  • Create a folder named awesome_project in your working directory.
  • Set up the initial project structure, including JSON and Python files.
  • Generate .github/workflows/release.yml so version bumps in anvilconfig.json can build archives and publish a GitHub release.

Project Structure

Once you create your project, the structure will look like this:

awesome_project/
├── .github/
│   └── workflows/
│       └── release.yml
├── assets/
│   ├── bbmodels/
│   ├── particles/
│   ├── textures/
│   ├── sounds/
│   └── structures/
├── marketing/
├── output/
├── scripts/
│   ├── javascript/
│   └── python/
├── world/
├── .gitignore
├── CHANGELOG.md
├── anvilconfig.json
├── esbuild.js
├── package.json
└── tsconfig.json

Running Your Project

To test your project in Minecraft, navigate to your project folder and use the following command:

anvil run

This command will run your python script and generates the necessary files for your project.


Projects made with Anvil

Enchantments Plus Dinosaurs Sugar Rush Beyond: Platformers

Release files for mcanvil 0.9.93

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcanvil 0.9.93
File Size Uploaded
mcanvil-0.9.93.tar.gz 450.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mcanvil 0.9.93
File Interpreter ABI Platform
mcanvil-0.9.93-py3-none-any.whl Python 3 none any Details

Total release size: 921.9 kB

Release files / mcanvil-0.9.93.tar.gz

Download URL mcanvil-0.9.93.tar.gz
Size 450.9 kB
Tags Source
SHA-256 checksum
How to use checksums
4ae0dd297336573badfc705e1eaea9336531e0417c660d1e6ddb0e5dae8262fd
BLAKE2b-256 checksum
How to use checksums
e010a482bde4194cd20f77711b82db222d6509c7a16c1cb43a1f79c43ea467b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 16, 2026.

Transparency log

Release files / mcanvil-0.9.93-py3-none-any.whl

Download URL mcanvil-0.9.93-py3-none-any.whl
Size 471.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ad2115190be1b889c7a00378fd6dd49ee6899570ea8219ce83e5cf2596b234cc
BLAKE2b-256 checksum
How to use checksums
9167fa37f3c9111ca43736f014c3de4a7118582f3261d7542b6252c0bd1522a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 16, 2026.

Transparency log

Release history Release notifications | RSS feed

0.9.95

2 release files

0.9.94

2 release files

This release

0.9.93 This release

2 release files

0.9.91

2 release files

0.9.9

2 release files

0.9.7

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.4

2 release files

0.8.3

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.5.5

2 release files

0.5.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page