Documentation Index
Fetch the complete documentation index at: https://mintlify.com/SGizek/Raiku/llms.txt
Use this file to discover all available pages before exploring further.
raiku init is your starting point for creating a new Raiku package. It walks you through an interactive wizard — prompting for name, language, version, author, description, license, build command, and tags — then generates every required file in a single step. All eight supported languages are covered with idiomatic scaffolding, so you get a properly structured src/ directory no matter which ecosystem you are targeting. Once the wizard completes, the package directory is ready for raiku validate and raiku publish.
Usage
Flags
| Flag | Short | Default | Description |
|---|---|---|---|
NAME | — | prompted | Package name (lowercase letters, digits, hyphens, underscores; must start with a letter) |
--language | -l | prompted | Target language — skips the language prompt |
--output-dir | -o | . | Directory in which to create the package folder |
--yes | -y | false | Accept all defaults without interactive prompts |
Generated File Structure
Runningraiku init always produces the following layout:
Language-Specific src/ Contents
| Language | Files created inside src/ |
|---|---|
| Python | <name>.py, pyproject.toml |
| Rust | lib.rs, Cargo.toml |
| C | <name>.c, <name>.h |
| C++ | <name>.hpp, <name>.cpp, CMakeLists.txt |
| Zig | <name>.zig, build.zig |
| Java | dev/raiku/<name>/<Name>.java |
| C# | <Name>.cs, <name>.csproj |
| Go | <name>.go, <name>_test.go, go.mod |
Language aliases are accepted — for example
py, rs, cpp, c++, cs, c#, and golang are all normalised to their canonical form before the wizard proceeds.Behavior
- If
NAMEis omitted, the wizard prompts for it and validates that it matches^[a-z][a-z0-9_\-]*$. - The wizard then asks for language, version (default
1.0.0), author, description, license (defaultMIT), stability level (defaultstable), build command (pre-filled from a language template), and optional comma-separated tags. - Before writing any files, it prints a summary and asks for confirmation — unless
--yesis passed. - The package directory is created at
<output-dir>/<name>/. If the directory already exists, the command exits with an error rather than overwriting anything. - Source files are generated from built-in language templates that expand
{name},{name_safe}, and{cls}placeholders.
Examples
Next Steps
Afterraiku init succeeds, the terminal prints the three recommended follow-up commands: