Generate placeholder text (lorem ipsum) in various formats. Create paragraphs, sentences, words, or custom templates for mockups and testing.
Scanned 2/12/2026
Install via CLI
openskills install dkyazzentwatwa/chatgpt-skills---
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)
No comments yet. Be the first to comment!