A Python wrapper for the CoolText.com image generation API
Project description
pycooltext-api
A Python wrapper for the CoolText.com image generation API.
Build typed payloads, post to CoolText's /PostChange endpoint, and get back a
rendered image URL — all in a few lines of code.
Installation
pip install pycooltext-api -U
Quick Start
from cooltext import CoolText, PostChangeConfigOptions
config = PostChangeConfigOptions(LogoID="732440996", Text="Hello World")
result = CoolText(config).create()
print(result) # prints the image URL
result.download() # saves the image locally
Browse Available Logos
Visit https://thehritu.github.io/CoolText/ to browse all available logo styles and their IDs.
Configuration
PostChangeConfigOptions accepts these fields:
| Field | Type | Default | Description |
|---|---|---|---|
LogoID |
str |
required | ID of the CoolText logo style |
Text |
str |
"Cool Text" |
Text to render |
FontSize |
str |
"70" |
Font size |
FileFormat |
str |
"PNG" |
Output format |
BackgroundColor_color |
str |
"FFFFFF" |
Background colour (hex) |
Color1_color |
str |
None |
Primary text colour |
Color2_color |
str |
None |
Secondary colour |
Boolean1–Boolean3 |
str |
None |
Logo-specific toggles |
Integer1–Integer14_color |
str |
None |
Logo-specific numeric options |
Get default configuration values for a logo:
Returns a dictionary of all default values for the given logo id
from cooltext import CoolText, PostChangeConfigOptions
config = PostChangeConfigOptions(LogoID="2975689126")
defaults = CoolText(config).get_defaults()
print(defaults)
CoolTextResult
CoolText.create() returns a CoolTextResult object:
result = CoolText(config).create()
str(result) # the image URL as a string
bool(result) # False if the request failed
result.download() # save to current directory
result.download("out.png") # save to a specific path
result.download("out.png", stream=False) # disable streaming
Finding a Logo ID
Go to https://thehritu.github.io/CoolText/ — every logo is listed with its ID and default configuration values.
Search for logos by keyword:
Search for logos on cooltext.com by keyword:
from cooltext import CoolTextSearch
results = CoolTextSearch().search("gold") # list of CoolTextSearchResult
for result in results:
print(result.title, " - ", result.link)
print(result.to_dict()) # get title and link as a dictionary
CoolTextSearchResult
CoolTextSearch.search() returns a list of CoolTextSearchResult objects.
CoolTextSearchResult has these attributes:
title: The logo's title (e.g. "Gold Text")link: The URL to the logo's page on CoolText.com
CoolTextSearchResult has these methods:
to_dict(): Returns a dictionary with the title and link
from cooltext.modules import CoolTextSearchResult
result = CoolTextSearchResult("Gold Text", "https://cooltext.com/Logo-ID/1234567890")
print(result.title) # "Gold Text"
print(result.link) # "https://cooltext.com/Logo-ID/1234567890"
print(result.to_dict()) # {"title": "Gold Text", "link": "https://cooltext.com/Logo-ID/1234567890"}
CLI
First, install the extra dependency:
pip install rich
Usage
No arguments — launches an interactive prompt:
cooltext
Quick create — just pass your text directly:
cooltext "Hello World"
Pick a specific logo:
cooltext "Hello World" --logo 732453157
Save the image to a file:
cooltext "Hello World" --save output.png
Plain output (just the URL, no colors — useful for scripting):
cooltext "Hello World" --as-text
Search
Find logo styles by keyword:
cooltext search fire
cooltext search "neon" --limit 1
Add
--as-textto get plain line-by-line output instead of a table.
On Some OS
On some operating systems, the CLI may not be available as cooltext immediately after installation. If you encounter a "command not found" error, try running it with Python:
python -m cooltext "Hello World"
Links
- GitHub: https://github.com/TheHritu/CoolText
- Logo ID List: https://thehritu.github.io/CoolText/
- PyPI: https://pypi.org/project/pycooltext-api/
License
MIT © TheHritu
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pycooltext_api-0.1.4.tar.gz.
File metadata
- Download URL: pycooltext_api-0.1.4.tar.gz
- Upload date:
- Size: 17.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
30ea3d9479e20828f70837df02b581eef4d067174c507b129f730b71fa15f288
|
|
| MD5 |
d7f3ebd9b03ceb3954f2aaee64569a23
|
|
| BLAKE2b-256 |
658f6d3763d75e32ca11d9979485d072f22841ff7b623f7a784f3473e2d908c2
|
File details
Details for the file pycooltext_api-0.1.4-py3-none-any.whl.
File metadata
- Download URL: pycooltext_api-0.1.4-py3-none-any.whl
- Upload date:
- Size: 16.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18ebdffa25ba46ecd7ad9fe80705424b81e17a4b09ddfcb7f46a400a299634f0
|
|
| MD5 |
ae899203ad8f6c4b54862687d696e950
|
|
| BLAKE2b-256 |
4c2ba1383a10b2362f23bd063faa118cb6af1ad1d59efe03e9574c3890bd1b28
|