Metadata-Version: 2.4
Name: faker-news
Version: 0.1.1
Summary: Faker provider for generating fake news content using OpenAI-compatible LLM APIs
Author-email: Chris Beaven <smileychris@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/smileychris/faker-news
Project-URL: Documentation, https://github.com/smileychris/faker-news#readme
Project-URL: Repository, https://github.com/smileychris/faker-news
Project-URL: Issues, https://github.com/smileychris/faker-news/issues
Keywords: faker,news,generator,llm,openai
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: faker>=18.0.0
Requires-Dist: openai>=1.0.0
Requires-Dist: click>=8.0.0
Requires-Dist: keyring>=24.0.0
Requires-Dist: platformdirs>=3.0.0
Requires-Dist: yaspin>=3.0.0
Requires-Dist: simple-term-menu>=1.6.0

# faker-news

Faker provider that turns any OpenAI-compatible LLM into a fake news generator with caching and reuse controls.

## Features
- Generate headlines, intros, and full articles on demand
- Keep content in a SQLite cache with per-item usage tracking
- Batch requests to minimize API calls and latency
- Works with OpenAI, Azure OpenAI, Qwen/DashScope, and other OpenAI-compatible APIs

## Installation
```bash
pip install faker-news
```

## Quick Start

Try it without installation using uvx:
```bash
# Set up your API key / load example data
uvx faker-news setup

# Browse generated articles
uvx faker-news browse
```

Use as a library:
```python
from faker import Faker
from faker_news import NewsProvider

fake = Faker()
provider = NewsProvider(fake)
fake.add_provider(provider)

headline = fake.news_headline()
intro = fake.news_intro(headline=headline)
article = fake.news_article(headline=headline, words=500)
```

## Documentation
Full guides, API reference, and CLI details live in the `docs/` directory. Start with `docs/quick-start.md` or `docs/cli-reference.md`.

## Contributing
See `docs/contributing.md` for the development workflow and guidelines.

## License
MIT
