Skip to main content

Pixy

Build

What is Pixy

pixy is a transpiler that transpiles pixy files into regular python code. Pixy files are JSX inspired component description formats that brings markup style declarative language natively embedded in python. Check out it's DESIGN.

Example

todo_page = (
    <div class_name="TodoList">
        <todo_list>
            <todo_item status={Status.Completed}>"Remember the milk 🥛"</todo_item>
            <todo_item status={Status.Todo}>"Eggs 🥚"</todo_item>
        </todo_list>
    </div>
    )

In order to actually transform that to a UI representation like HTML you need the sister 👩 package, render_html. A full example implementing a todo-list can be found in todo_pixy

Development

  1. git checkout github.com/pixyverse/pixy.git

  2. cd pixy

  3. create/install deps in a virtualenv environment and activate it.

    make venv
    source .venv/bin/activate
    
  4. lint and typecheck

    make lint
    make pie
    
  5. Run Tests

    # Run Tests
    make test
    
  6. Example Pixy file

    # a.pix
    comp=<div>"Hello World"</div>
    print(comp)
    

    Transpile

    # Transpile a sample pixy file
    python -m pixyverse.pixy -p test.pix -o test.py
    

Known Limitations

Strings within tags always need to be quoted within single or double quotes.

Development Status

Prototype stage. Liable to explode without warning

Metadata

Release files for pixyverse.pixy 0.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pixyverse.pixy 0.0.8
File Size Uploaded
pixyverse_pixy-0.0.8.tar.gz 38.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pixyverse.pixy 0.0.8
File Interpreter ABI Platform
pixyverse.pixy-0.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 105.4 kB

Release files / pixyverse_pixy-0.0.8.tar.gz

Download URL pixyverse_pixy-0.0.8.tar.gz
Size 38.5 kB
Tags Source
SHA-256 checksum
How to use checksums
83b8380855d347b32414a78ad92c8838832d664baf7fa5bfbea7fe47b169a6fa
BLAKE2b-256 checksum
How to use checksums
81f21e3c714d7cbc7b0568cb59754cea219c26b47f33fccb499c93704c9b2a2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.0.0 CPython/3.12.3

Release files / pixyverse.pixy-0.0.8-py3-none-any.whl

Download URL pixyverse.pixy-0.0.8-py3-none-any.whl
Size 66.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b5b1c5aaf3fc42e2f37a634bcfb003442e6e677185f9fdea7163ed1c04b8a0e3
BLAKE2b-256 checksum
How to use checksums
87a6b282be360af8e32a97aad14ceeb7a9cd8031a992fc0e442f24101fe4d937
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.0.8 This release

2 release files

0.0.7

2 release files

0.0.6

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page