Skill: blammectrappora/children-book-illustration-generator (version 1.0.0)

--- name: children-book-illustration-generator description: AI children's book illustration generator — create whimsical storybook art, picture book pages, fairy tale scenes, and kids' story illustrations. Perfect for self-publishing authors, KDP creators, teachers, and parents making bedtime story books, educational materials, and nursery wall art via the Neta AI image generation API (free trial at neta.art/open). tools: Bash --- # Children's Book Illustration Generator AI children's book illustration generator — create whimsical storybook art, picture book pages, fairy tale scenes, and kids' story illustrations. Perfect for self-publishing authors, KDP creators, teachers, and parents making bedtime story books, educational materials, and nursery wall art. ## Token Requires a Neta API token (free trial at <https://www.neta.art/open/>). Pass it via the `--token` flag. ```bash node <script> "your prompt" --token YOUR_TOKEN ``` ## When to use Use when someone asks to generate or create children book illustration ai generator images. ## Quick start ```bash node childrenbookillustrationgenerator.js "your description here" --token YOUR_TOKEN ``` ## Options - `--size` — `portrait`, `landscape`, `square`, `tall` (default: `landscape`) - `--ref` — reference image UUID for style inheritance ## Install ```bash npx skills add blammectrappora/children-book-illustration-generator ```

path: README.md
content: # Children's Book Illustration Generator

Generate beautiful children's book illustrations from text descriptions using AI. Create whimsical storybook art, picture book pages, fairy tale scenes, and kids' story illustrations — perfect for self-publishing authors, KDP creators, teachers, and parents making bedtime story books, educational materials, and nursery wall art.

Powered by the Neta AI image generation API (api.talesofai.com) — the same service as neta.art/open.

## Install

```bash
npx skills add blammectrappora/children-book-illustration-generator
```

or

```bash
clawhub install children-book-illustration-generator
```

## Token Setup

This skill requires a Neta API token (free trial available at <https://www.neta.art/open/>).

Pass it via the `--token` flag:

```bash
node <script> "your prompt" --token YOUR_TOKEN
```

## Usage

```bash
node childrenbookillustrationgenerator.js "a friendly dragon helping a child plant flowers" --token "$NETA_TOKEN"
```

```bash
node childrenbookillustrationgenerator.js "two kittens sharing an umbrella in the rain" --token "$NETA_TOKEN" --size portrait
```

```bash
node childrenbookillustrationgenerator.js "a magical forest with talking animals" --token "$NETA_TOKEN" --ref abc123-uuid
```

Returns a direct image URL.

## Options

| Flag | Description | Default |
|------|-------------|---------|
| `--token` | Neta API token (required) | — |
| `--size` | Image size: `portrait`, `landscape`, `square`, `tall` | `landscape` |
| `--ref` | Reference image UUID for style inheritance | — |

### Size Dimensions

| Size | Dimensions |
|------|-----------|
| `square` | 1024 x 1024 |
| `portrait` | 832 x 1216 |
| `landscape` | 1216 x 832 |
| `tall` | 704 x 1408 |

This skill requires a Neta API token (free trial available at https://www.neta.art/open/).


path: childrenbookillustrationgenerator.js
content: #!/usr/bin/env node

const args = process.argv.slice(2);

// Parse CLI arguments
let prompt = null;
let size = "landscape";
let tokenFlag = null;
let ref = null;

for (let i = 0; i < args.length; i++) {
  if (args[i] === "--token" && i + 1 < args.length) {
    tokenFlag = args[++i];
  } else if (args[i] === "--size" && i + 1 < args.length) {
    size = args[++i];
  } else if (args[i] === "--ref" && i + 1 < args.length) {
    ref = args[++i];
  } else if (!args[i].startsWith("--") && prompt === null) {
    prompt = args[i];
  }
}

const [REDACTED_SECRET];

if (!TOKEN) {
  console.error('\n\u2717 Token required. Pass via: --token YOUR_TOKEN');
  console.error('  Get yours at: https://www.neta.art/open/');
  process.exit(1);
}

if (!prompt) {
  console.error('\n\u2717 Prompt required. Usage:');
  console.error('  node childrenbookillustrationgenerator.js "your prompt" --token YOUR_TOKEN');
  process.exit(1);
}

const DEFAULT_PROMPT = "whimsical children's book illustration, storybook art style, soft pastel colors, friendly characters, warm lighting, hand-painted watercolor feel, cute and playful, picture book page";
const fullPrompt = `${prompt}, ${DEFAULT_PROMPT}`;

const sizes = {
  square: { width: 1024, height: 1024 },
  portrait: { width: 832, height: 1216 },
  landscape: { width: 1216, height: 832 },
  tall: { width: 704, height: 1408 },
};

const chosen = sizes[size];
if (!chosen) {
  console.error(`\u2717 Invalid size "${size}". Choose: square, portrait, landscape, tall`);
  process.exit(1);
}

const headers = {
  "x-token": TOKEN,
  "x-platform": "nieta-app/web",
  "content-type": "application/json",
};

const body = {
  storyId: "DO_NOT_USE",
  jobType: "universal",
  rawPrompt: [{ type: "freetext", value: fullPrompt, weight: 1 }],
  width: chosen.width,
  height: chosen.height,
  meta: { entrance: "PICTURE,VERSE" },
  context_model_series: "8_image_edit",
};

if (ref) {
  body.inherit_params = { collection_uuid: ref, picture_uuid: ref };
}

async function main() {
  console.error(`Generating children's book illustration (${size} ${chosen.width}x${chosen.height})...`);

  const createRes = await fetch("https://api.talesofai.com/v3/make_image", {
    method: "POST",
    headers,
    body: JSON.stringify(body),
  });

  if (!createRes.ok) {
    const text = await createRes.text();
    console.error(`\u2717 API error ${createRes.status}: ${text}`);
    process.exit(1);
  }

  const createData = await createRes.json();
  const taskUuid = typeof createData === "string" ? createData : createData.task_uuid;

  if (!taskUuid) {
    console.error("\u2717 No task_uuid returned from API");
    console.error(JSON.stringify(createData));
    process.exit(1);
  }

  console.error(`Task: ${taskUuid}`);
  console.error("Polling for result...");

  for (let attempt = 0; attempt < 90; attempt++) {
    await new Promise((r) => setTimeout(r, 2000));

    const pollRes = await fetch(`https://api.talesofai.com/v1/artifact/task/${taskUuid}`, {
      headers,
    });

    if (!pollRes.ok) {
      console.error(`Poll error ${pollRes.status}, retrying...`);
      continue;
    }

    const pollData = await pollRes.json();
    const status = pollData.task_status;

    if (status === "PENDING" || status === "MODERATION") {
      console.error(`  Status: ${status} (attempt ${attempt + 1}/90)`);
      continue;
    }

    const url =
      pollData.artifacts && pollData.artifacts[0] && pollData.artifacts[0].url
        ? pollData.artifacts[0].url
        : pollData.result_image_url;

    if (url) {
      console.log(url);
      process.exit(0);
    } else {
      console.error("\u2717 Task completed but no image URL found");
      console.error(JSON.stringify(pollData));
      process.exit(1);
    }
  }

  console.error("\u2717 Timed out after 90 polling attempts (3 minutes)");
  process.exit(1);
}

main().catch((err) => {
  console.error(`\u2717 ${err.message}`);
  process.exit(1);
});


path: package.json
content: {"name":[REDACTED_SECRET],"version":"1.0.0","type":"module","description":"Children's Book Illustration Generator — AI-powered children book illustration ai generator","license":"MIT"}


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)