Skip to content

CodeBizarre/cutesnowflakes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

About

Create cute 3x3 images from snowflake IDs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages