Overview
Every Minecraft Creator Tools project stores configuration in anIProjectData interface. This metadata file controls project behavior, versioning, deployment, and editor preferences.
Configuration File
Project settings are stored in a JSON file managed by the Carto system, typically outside your project folder in a preferences directory. You can access and modify these settings programmatically through theProject class.
Core Properties
Internal project identifier (unique, lowercase, no spaces)
Human-readable project title displayed in the UI
Abbreviated project name for compact displays
Project description explaining its purpose
Author or organization name
Default namespace for project identifiers (e.g., “mycompany”)
Project Focus
Thefocus property determines project type and available features:
Project focus type:
general(0) - Standard add-on projectgameTests(1) - Game test focused projectworld(2) - World template projectfocusedCodeSnippet(3) - Code snippet/exampleeditorExtension(4) - Editor extension project
Script Configuration
Preferred scripting language:
javaScript(0) - JavaScripttypeScript(1) - TypeScript
Script API version:
latestStable(0) - Latest stable releasestable10(1) - Minecraft 1.0 stablelatestBeta(999) - Latest beta/preview
Main script file path (e.g., “scripts/main.js”)
Versioning
Major version number (increments for breaking changes)
Minor version number (increments for new features)
Patch version number (increments for bug fixes)
Deployment Settings
Automatic deployment mode:
0- Off (manual deployment only)1- On save (deploy when project saves)2- On change (deploy when files change)
Target Minecraft version:
main- Stable/Release versionpreview- Beta/Preview version
World Settings
Whether project uses custom world settings
Runtime world configuration (spawn point, game rules, etc.)
Editor-specific world settings for testing
Editor Preferences
Default editing mode:
default(0) - Standard editingsummarized(1) - Simplified vieweditors(2) - Advanced editorsraw(3) - Raw JSON editing
Display hidden/system files in project tree
Display function files in project tree
Display asset files (images, audio) in project tree
Display TypeScript type definition files
GitHub Integration
GitHub repository owner (username or organization)
GitHub repository name
Git branch name (e.g., “main”, “develop”)
Subfolder within repository containing the project
Example Configuration
Programmatic Access
Access project settings through theProject class:
Best Practices
The
defaultNamespace should be unique to avoid identifier conflicts with other add-ons.Related
- World Settings - Configure world properties
- Project API - Programmatic project management
- Validation Suites - Configure validation behavior