Documentation

Use Cases

Overview of use cases of Divooka.

Divooka Use Cases

While Divooka moving towards feature-complete status, the current use cases are limited to small scripts and batch processing.

Examples

1. Batch Image Transformation Pipeline

Process thousands of images with a simple declarative script.

Use case: Resize, watermark, and convert formats for a media library.

images = load("input/*.png")

processed = images
  |> resize(width=1024)
  |> watermark("© Divooka")
  |> convert("webp")

save(processed, "output/")

2. Log File Analysis & Aggregation

Quickly extract structured insights from raw logs.

Use case: Count errors per service from multiple log files.

logs = load("logs/*.txt")

errors = logs
  |> parse(regex)
  |> filter(level == "ERROR")
  |> group_by(service)
  |> count()

print(errors)

3. CSV Data Cleanup + Transformation

Clean and normalize datasets in one pass.

Use case: Prepare a dataset for analytics.

data = load("users.csv")

clean = data
  |> filter(email != null)
  |> map(age = to_int(age))
  |> normalize(country)
  |> deduplicate(id)

save(clean, "clean_users.csv")

4. API Data Fetch + Local Caching

Pull remote data and reshape it locally.

Use case: Fetch product data and cache filtered results.

products = fetch("https://api.store.com/products")

filtered = products
  |> filter(price < 100)
  |> map(name, price)

save(filtered, "cache.json")

5. File System Refactoring Script

Batch rename and reorganize files.

Use case: Normalize messy download folders.

files = load("downloads/*")

organized = files
  |> rename(pattern="{date}_{name}")
  |> group_by(type)
  |> move_to("sorted/")

6. Markdown Documentation Generator

Generate docs from structured inputs.

Use case: Convert JSON config into markdown docs.

config = load("config.json")

docs = config
  |> map(to_markdown)
  |> join("\n\n")

save(docs, "README.md")

7. Bulk Code Refactoring Helper

Apply transformations across many files.

Use case: Replace deprecated function calls.

files = load("src/**/*.cs")

updated = files
  |> replace("oldFunc(", "newFunc(")

save(updated)

8. Scheduled Data Snapshot Script

Take periodic snapshots of changing data.

Use case: Archive daily API responses.

data = fetch("https://api.example.com/stats")

snapshot = data
  |> timestamp()
  |> save("snapshots/{date}.json")

9. AI-Powered Sci-Fi Image Generator (Small Creative Script)

Build a one-click tool that asks ChatGPT to write a detailed prompt, feeds it to DALL·E 3, and instantly previews the result.

Use case: Image generation.

prompt = generate_text(
  "Generate a 300-word description of an interesting sci-fi landscape for DALL·E 3"
)

image = prompt
  |> generate_image()

preview(image)

Available service providers: OpenAI (DALL·E 3), Comfy UI.

10. Bulk File Renamer & Organizer (Batch Processing Powerhouse)

Rename and organize an entire folder of photos, downloads, or logs in one clean graph—no loops, no scripts.

Use case: File system organization.

files = load("folder/*")

renamed = files
  |> replace(pattern="photo (n).jpg", format="2025-03_Vacation_{n}.jpg")

save(renamed)

Comments: The same three nodes that work on one file magically scale to thousands because Divooka automatically dispatches over arrays (no explicit For-Each or subgraphs needed).

11. Batch Novel Outline & Chapter Generator (LLM Workflow)

Turn a single “write my novel” idea into 8 world-building topics + 20 chapter summaries in one run.

Use case: Creative inspiration.

idea = input("novel idea")

topics = idea
  |> generate_topics(count=8)

chapters = topics
  |> expand(count=20)
  |> generate_text()

document = chapters
  |> to_markdown()

save(document, "novel_outline.md")

Recipe:

  • Start node or text input → LLM node(s) to generate 8 topics
  • Duplicate as Array + automatic dispatch → branches into 20 parallel chapter prompts
  • LLM Complete nodes → generate full outlines or drafts
  • Export to Markdown or Preview nodes → saves everything as a neatly formatted document

Comments: As this example is a bit complicated, more advanced techniques can be used to simplify the graph. See case study in Novel Generation.

12. Batch Image/Video Processor (Dataflow + Media Pack)

Process hundreds of photos or short clips: resize, apply filters, add watermarks, or feed into ComfyUI-style generation.

Use case: Media file preparation for rendering, game assets, or machine learning.

media = load("media/*")

processed = media
  |> resize(width=1024)
  |> apply_filter("cinematic")
  |> watermark("© Project")

save(processed, "output/")

Techniques: Optional LLM or ComfyUI API node can be used for smart tagging or style transfer.

Conclusion

Above examples demonstrate Divooka’s strength as a declarative transformation engine for small-scale pipelines, with clear potential to scale into distributed or real-time workflows.

References

https://wiki.methodox.io/en/KnowledgeBase/PseudoCode