/Dali

Powerful rendering of your source code

Primary LanguagePythonMIT LicenseMIT

Beta version

Required dependencies when installing Dali are not checked on all OS


Made in Ukraine Hatch project linting - Ruff code style - Black types - Mypy License - MIT

PyPI - Downloads

About

Dali (Dalí) - Powerful rendering of your source code.

It can render any* source code into an image.

Dali

Image: httpie source code (Dali v1.0.0-beta1)

arguments: window_controls=True, background='#576574'

Why Dali?

Dali is writen in Python language and has a high speed enough. Requires no network connection or specific operation system (Microsoft Windows has not been tested 🙃).

Dali uses Pygments for syntax highlighter and Pillow-SIMD for rendering. Pygments is used in GitHub on Jupyter Notebook pages & GitHub API pages.

You can use it in your project and create a great image of your code.

At the moment Dali is actively developed.

Examples

from file

from dali_renderer import Dali

instance = Dali("<path to save image>/image.png", window_controls=True, background='#576574')
instance.from_file("<path to source code file>")

from string

from dali_renderer import Dali

instance = Dali("<path to save image>/image.png", window_controls=True, background='#576574')
with open("<path to source code file>", 'r') as file:
   code = file.read()
instance.from_string(code)

Install

pip install dali_renderer
pip uninstall pillow
CC="cc -mavx2" pip install -U --force-reinstall pillow-simd

Features

Contributing

pip install hatch
git clone git@github.com:foozzi/Dali.git && cd ./Dali

Test

hatch run test

Lint

hatch run lint:typing # mypy

Formatting

hatch run lint:fmt # black, ruff

Build

hatch clean && hatch build