Skip to main content

Cute 3x3 images from snowflake IDs

Project description

Tests PyPI version

Cute Snowflakes

Have you ever wanted cute 3x3 images from snowflake IDs? Great, because here they are!

Examples:

Installation

Requires Python 3.7+

pip install cutesnowflakes

Usage:

As a command line application:

cutesnowflakes.py encode 118999881999119725

cutesnowflakes.py decode folder/my_file.png

for more information and options use: cutesnowflakes.py encode --help or cutesnowflakes.py decode --help

Available colors for encoding are:

grey
red
green
blue
purple
magenta
yellow
orange

As a library:

## CREATING A SNOWFLAKE
from cutesnowflakes import encode, decode

# Create the snowflake
image, meta = encode("118999881999119725")
# Open it in the system photo viewer
image.show()
# Save the image with its metadata
image.save("my_image.png", pnginfo=meta)

## LOADING A SNOWFLAKE
from PIL.PngImagePlugin import PngImageFile

with PngImageFile("my_image.png") as fp:
    print(decode(fp))

## USING A DIFFERENT COLOR
from cutesnowflakes import Color

image, meta = encode("118999881999119725", Color.magenta)

# To decode with a specific color:
result = decode(fp, color = Color.magenta)

Changelog:

Legend:

+   : Added
-   : Removed
*** : Fixed
\   : Changed

1.0.1 (Current release)

*** Missing info in setup.py
\ Clarified version compatibilies in setup.py

1.0.0

+ Custom formatting
*** Decoding without metadata not using color parameter
\ Slight code improvements
\ Blackened code

0.4.0:

\\\ Major rewrite
+ __version__ import to __init__.py
+ New improved command line interface with Click
+ New docstrings
+ Logging
+ Added descriptive comments where useful
- CuteSnowflakes class
- Support for custom formatting (Temporarily)
\ Now requires Python 3.7 or higher
\ Improved old docstrings

0.3.0

+ __version__ to __init__.py
+ Error handling for set_mode()
+ Support for 19 and 20 digit snowflakes
+ Support for custom colors through command line --encode argument
\ Various minor code cleanups and improvements
\ Rename __usage() to print_usage()
\ Improved test suite
\ Improved type annotations
*** Possibility for integer overflows

0.2.1:

*** \ Various minor documentation and structure changes/fixes

0.2.0:

\ Move to a class instead of bare functions
\ Improved command line arguments
\ Moved version to setup.py
+ Multiple colors with set_mode() and format hint PngInfo

0.1.0:

+ Initial version

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

cutesnowflakes-1.0.1.tar.gz (5.0 kB view hashes)

Uploaded Source

Built Distribution

cutesnowflakes-1.0.1-py3-none-any.whl (5.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page