create-kract
v1.1.7
Published
Create a new KRACT project workspace
Downloads
1,112
Readme
create-kract
Scaffold package for quickly creating new KRACT projects without installing kract globally.
Usage
Quick Start
Create a new project using any package manager:
# npm
npx create-kract@latest
# yarn
yarn create kract@latest
# pnpm
pnpm create kract@latest
# bun
bun create kract@latestThis command will automatically execute kract@latest create to set up your project structure.
Options
All project creation and Blender extension template options are supported:
Project Creation
# Create new project (interactive mode)
npx create-kract@latest
# Create project with all options specified
npx create-kract@latest --number 123 --client "ClientName" --name "ProjectName" --apps "ae,ps,b3d" --yes
# Add new application folders to existing project
npx create-kract@latest --add
# Generate default project.json configuration
npx create-kract@latest --jsonProject Creation Options:
--numberor-n <number>: Project number (1-999). If not specified, you'll be prompted--client <name>: Client name. If not specified, you'll be prompted--name <name>: Project name. If not specified, you'll be prompted--apps <app1,app2,...>: Comma-separated list of applications to include (e.g., "ae,ps,b3d"). If not specified, you'll be prompted to select--yesor-y: Skip confirmation prompt--json: Generate defaultproject.jsonconfiguration file in the current directory--addor-a: Add new application folders to an existing project (auto-detects project root by finding.kractfile)--helpor-h: Show help message
Blender Extension Template
# Create Blender extension template (interactive mode)
npx create-kract@latest --blender
# Create Blender extension with all options specified
npx create-kract@latest --blender add-on --name "My Addon" --tagline "TAGLINE" --maintainer "MAINTAINER <[email protected]>" --min 4.2.0 --yes
# Create Blender theme extension
npx create-kract@latest --blender theme --name "My Theme" --yesBlender Extension Template Options:
--blender [add-on|addon|theme]: Extension type (required). Useaddonas shorthand foradd-on--name "Extension Name": Extension name (optional, defaults to "my-addon" or "my-theme")--tagline "Short description": One-line description, max 64 characters, no ending punctuation (optional, defaults to "A Blender extension")--maintainer "Maintainer Name": Maintainer name (optional, defaults to "Developer")--min "4.2.0": Minimum Blender version (optional, defaults to "4.2.0")--yesor-y: Skip confirmation prompt
When running in interactive mode (--blender without type), only the extension type is required. All other fields are optional and will use default values if left empty.
How It Works
The create-kract package is an independent CLI tool built with TypeScript that:
- Provides a standalone project creation tool without requiring global installation of
kract - Implements all project creation and Blender extension template generation functionality directly
- Uses modern TUI libraries (@clack/prompts) for interactive user experience
- Supports custom project structures via
project.jsonconfiguration files - Automatically detects project roots and manages project metadata
Technical Details
- Language: TypeScript (strict mode)
- Build Tool: tsup for bundling and minification
- Code Protection: javascript-obfuscator for code obfuscation
- Import Aliases: Uses
@/alias forsrc/directory - Output: Single obfuscated binary at
dist/index.js
