animtoreal
animtoreal is a lightweight Python package that turns a textual description of an animated character into a structured, step‑by‑step plan for bringing that character into the real world.
It extracts key information such as props, costumes, interactive experiences and other production details using a large language model, without requiring any media files.
Why use animtoreal?
- Quickly generate a production‑ready spec from a creative brief.
- Leverage any LLM – the package ships with a default free‑tier LLM (
ChatLLM7) but you can plug in OpenAI, Anthropic, Google Gemini, or any LangChain‑compatible model.- No heavy dependencies or UI required – just a single function call.
📦 Installation
pip install animtoreal
🚀 Quick Start
from animtoreal import animtoreal
user_input = """
I want to create a small floating silver robot that can interact with children.
It should have smooth metal panels, a small LED face that displays simple emotions,
and a lightweight adjustable arm that can point at objects. The robot must be
battery powered, easy to clean, and have a friendly safety char.
"""
# Using the built‑in default LLM (ChatLLM7)
response = animtoreal(user_input)
print(response)
response will be a list of strings, each representing a structured element of the production plan.
📚 Function Signature
animtoreal(
user_input: str,
api_key: Optional[str] = None,
llm: Optional[BaseChatModel] = None
) -> List[str]
| Parameter | Type | Description |
|---|---|---|
user_input |
str |
Text description of the character. |
llm |
Optional[BaseChatModel] |
A LangChain ChatModel instance. If omitted, the default ChatLLM7 is used. |
api_key |
Optional[str] |
API key for LLM7. If omitted, the package will look for LLM7_API_KEY in the environment, and fall back to "None" (for the free tier). |
🔗 Using Your Own LLM
animtoreal is agnostic to the underlying LLM.
Below are quick examples with popular providers.
OpenAI
from langchain_openai import ChatOpenAI
from animtoreal import animtoreal
llm = ChatOpenAI() # defaults to your OPENAI_API_KEY env var
response = animtoreal(user_input, llm=llm)
Anthropic
from langchain_anthropic import ChatAnthropic
from animtoreal import animtoreal
llm = ChatAnthropic()
response = animtoreal(user_input, llm=llm)
Google Gemini
from langchain_google_genai import ChatGoogleGenerativeAI
from animtoreal import animtoreal
llm = ChatGoogleGenerativeAI()
response = animtoreal(user_input, llm=llm)
🔒 LLM7 API Key & Rate Limits
-
The default free tier of LLM7 is usually sufficient for most small‑to‑medium projects.
-
If you need higher limits, provide your key via an environment variable:
export LLM7_API_KEY="your_real_api_key"
or pass it directly:
response = animtoreal(user_input, api_key="your_real_api_key")
-
Obtain a free key at: https://token.llm7.io/
🤝 Contributing & Issues
- GitHub Issues: https://github.com/chigwell/animtoreal/issues
Feel free to open an issue if you encounter bugs or have feature requests.
📄 Licensing
This project is open source under the MIT License. (Adapt as appropriate.)
👤 Maintainer
- Eugene Evstafev
hi@euegne.plus
GitHub: @chigwell
Happy creating! 🎨🦾
Metadata
Release files for animtoreal 2025.12.21143241
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| animtoreal-2025.12.21143241.tar.gz | 6.6 kB | Without provenance | Details for animtoreal-2025.12.21143241.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| animtoreal-2025.12.21143241-py3-none-any.whl | Python 3 | none | any | Details for animtoreal-2025.12.21143241-py3-none-any.whl |
Total release size: 13.9 kB
Release files / animtoreal-2025.12.21143241.tar.gz
| Download URL | animtoreal-2025.12.21143241.tar.gz |
|---|---|
| Size | 6.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
317e605f0026524650310e30ac2b3c9924cabdefe7898adc20715198cfae96ac
|
|
BLAKE2b-256 checksum How to use checksums |
6625e046990b1c1b1562030cf1385b53fd8f4758550b1cb21f6e23c5df19ff87
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.1
|
Release files / animtoreal-2025.12.21143241-py3-none-any.whl
| Download URL | animtoreal-2025.12.21143241-py3-none-any.whl |
|---|---|
| Size | 7.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cd05e5ab6a3004d7054533d34b49a7560a8f20413a2362699fa8232ae7297a7f
|
|
BLAKE2b-256 checksum How to use checksums |
73dd880c3420a9ac314514b29d4d2fa70c4016558fa5e08f6c106729cd3a9f59
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.1
|
Security for animtoreal 2025.12.21143241
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.