home / skills / dkyazzentwatwa / chatgpt-skills / lorem-ipsum-generator
This skill generates placeholder lorem ipsum text in multiple formats for mockups, tests, and templates.
npx playbooks add skill dkyazzentwatwa/chatgpt-skills --skill lorem-ipsum-generatorReview the files below or copy the command above to add this skill to your agents.
---
name: lorem-ipsum-generator
description: Generate placeholder text (lorem ipsum) in various formats. Create paragraphs, sentences, words, or custom templates for mockups and testing.
---
# 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)
This skill generates placeholder text for mockups, wireframes, and testing in multiple formats. It produces paragraphs, sentences, words, lists, HTML fragments, and fills templates with configurable styles and exact word counts. It supports classic lorem, hipster, corporate, and tech variations for different design tones.
Instantiate the generator and call methods to request paragraphs, sentences, words, lists, or HTML output. You can set a style (classic, hipster, corporate, tech), specify exact word counts per paragraph, or provide templates with placeholders that the generator fills. CLI options mirror the API for quick use in scripts and build pipelines.
Can I control exact word counts per paragraph?
Yes. Use the paragraphs(count, words_per=...) method to request a specific word count per paragraph.
Does the generator support HTML output?
Yes. Methods like html_paragraphs, html_list, and html_article return ready-to-insert HTML fragments.