Agent skill

lorem-ipsum-generator

Generate placeholder text (lorem ipsum) in various formats. Create paragraphs, sentences, words, or custom templates for mockups and testing.

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/testing/lorem-ipsum-generator

SKILL.md

Lorem Ipsum Generator

Generate placeholder text for mockups, wireframes, and testing purposes.

Features

  • Classic Lorem: Traditional lorem ipsum text
  • Multiple Formats: Paragraphs, sentences, words, lists
  • Custom Length: Specify exact word/sentence/paragraph counts
  • HTML Output: Generate with HTML tags
  • Alternative Sources: Hipster, bacon, corporate ipsum variations
  • Templates: Fill templates with placeholder text

Quick Start

python
from lorem_gen import LoremGenerator

gen = LoremGenerator()

# Generate paragraphs
text = gen.paragraphs(3)
print(text)

# Generate sentences
sentences = gen.sentences(5)
print(sentences)

# Generate words
words = gen.words(50)
print(words)

CLI Usage

bash
# Generate 3 paragraphs
python lorem_gen.py --paragraphs 3

# Generate 5 sentences
python lorem_gen.py --sentences 5

# Generate 100 words
python lorem_gen.py --words 100

# HTML output
python lorem_gen.py --paragraphs 3 --html

# Generate bullet list
python lorem_gen.py --list 5

# Generate with specific word count per paragraph
python lorem_gen.py --paragraphs 3 --words-per 50

# Alternative style
python lorem_gen.py --paragraphs 3 --style hipster

# Save to file
python lorem_gen.py --paragraphs 5 --output placeholder.txt

API Reference

LoremGenerator Class

python
class LoremGenerator:
    def __init__(self, style: str = "classic")

    # Basic generation
    def paragraphs(self, count: int = 3, words_per: int = None) -> str
    def sentences(self, count: int = 5) -> str
    def words(self, count: int = 50) -> str

    # Structured output
    def list_items(self, count: int = 5, ordered: bool = False) -> str
    def heading(self, level: int = 1) -> str
    def title(self, words: int = 4) -> str

    # HTML output
    def html_paragraphs(self, count: int = 3) -> str
    def html_list(self, count: int = 5, ordered: bool = False) -> str
    def html_article(self, sections: int = 3) -> str

    # Templates
    def fill_template(self, template: str) -> str

    # Configuration
    def set_style(self, style: str) -> 'LoremGenerator'

Output Formats

Paragraphs

python
text = gen.paragraphs(2)

# Output:
# Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do
# eiusmod tempor incididunt ut labore et dolore magna aliqua.
#
# Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris
# nisi ut aliquip ex ea commodo consequat.

Sentences

python
text = gen.sentences(3)

# Output:
# Lorem ipsum dolor sit amet. Consectetur adipiscing elit. Sed do eiusmod tempor.

Words

python
text = gen.words(10)

# Output:
# Lorem ipsum dolor sit amet consectetur adipiscing elit sed do

Lists

python
# Unordered list
text = gen.list_items(3)
# - Lorem ipsum dolor sit amet
# - Consectetur adipiscing elit
# - Sed do eiusmod tempor

# Ordered list
text = gen.list_items(3, ordered=True)
# 1. Lorem ipsum dolor sit amet
# 2. Consectetur adipiscing elit
# 3. Sed do eiusmod tempor

HTML Output

HTML Paragraphs

python
html = gen.html_paragraphs(2)

# <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
# <p>Sed do eiusmod tempor incididunt ut labore.</p>

HTML List

python
html = gen.html_list(3, ordered=False)

# <ul>
#   <li>Lorem ipsum dolor sit amet</li>
#   <li>Consectetur adipiscing elit</li>
#   <li>Sed do eiusmod tempor</li>
# </ul>

HTML Article

python
html = gen.html_article(sections=2)

# <article>
#   <h1>Lorem Ipsum Dolor</h1>
#   <p>Lorem ipsum dolor sit amet...</p>
#   <h2>Consectetur Adipiscing</h2>
#   <p>Ut enim ad minim veniam...</p>
# </article>

Text Styles

Classic Lorem Ipsum

Traditional Latin placeholder text:

python
gen = LoremGenerator(style="classic")

Hipster Ipsum

Trendy, modern vocabulary:

python
gen = LoremGenerator(style="hipster")
# "Artisan cold-pressed pour-over, sustainable raw denim..."

Corporate Ipsum

Business jargon:

python
gen = LoremGenerator(style="corporate")
# "Leverage agile frameworks to provide robust synopsis..."

Tech Ipsum

Technology-focused text:

python
gen = LoremGenerator(style="tech")
# "API endpoints serverless microservices kubernetes..."

Templates

Fill templates with placeholder text:

python
template = """
# {{title}}

{{paragraph}}

## Features

{{list:5}}

## Details

{{paragraph}}
{{paragraph}}
"""

result = gen.fill_template(template)

Template Placeholders

Placeholder Output
{{title}} 3-5 word title
{{heading}} Section heading
{{paragraph}} Single paragraph
{{sentence}} Single sentence
{{words:N}} N words
{{list:N}} N list items
{{name}} Random name
{{email}} Random email
{{date}} Random date

Specific Word Counts

Control exact word count per paragraph:

python
# Each paragraph will have exactly 50 words
text = gen.paragraphs(3, words_per=50)

# Generate exactly 200 words
text = gen.words(200)

Example Workflows

Mockup Text Generation

python
gen = LoremGenerator()

# Generate blog post mockup
title = gen.title(words=6)
intro = gen.paragraphs(1, words_per=100)
body = gen.paragraphs(3, words_per=150)
conclusion = gen.paragraphs(1, words_per=75)

print(f"# {title}\n\n{intro}\n\n{body}\n\n{conclusion}")

HTML Page Content

python
gen = LoremGenerator()

html = f"""
<!DOCTYPE html>
<html>
<body>
  <header>
    <h1>{gen.title()}</h1>
  </header>
  <main>
    {gen.html_paragraphs(3)}
    <h2>Features</h2>
    {gen.html_list(5)}
    {gen.html_paragraphs(2)}
  </main>
</body>
</html>
"""

Test Data Generation

python
gen = LoremGenerator()

# Generate test articles
articles = []
for i in range(10):
    articles.append({
        "title": gen.title(),
        "excerpt": gen.sentences(2),
        "body": gen.paragraphs(5),
        "tags": gen.words(3).split()
    })

Dependencies

  • faker>=22.0.0 (optional, for enhanced fake data)

Didn't find tool you were looking for?

Be as detailed as possible for better results