AriBermeki / PyHybrid

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hybrid foundation

Hybrid with Ant Design UI

Create an efficient and enjoyable work experience

Hybrid empowers developers to effortlessly build real-time web, mobile, and desktop applications in Python, without requiring prior frontend experience.

It is an incredibly powerful Python library that allows you to create cross-platform graphical user interface and Web applications with ease, similar to Electronjs, but with an integrated React and Ant Design user interface.

⚑ From idea to app in minutes

This feature makes Hybrid an ideal choice for creating sophisticated and comprehensive applications, catering to even the most demanding use cases.

At the heart of Hybrid's architecture are cutting-edge technologies such as React, Bottle, Chrome, providing an excellent platform for building high-quality applications that seamlessly blend into any environment.

Hybrid also supports the Python ZVT 700 electronic cash register interface, allowing for seamless integration of other transactions into your applications. Additionally, Hybrid supports PWA Progressive Web Applications, enabling easy installation of your app on IOS and Android operating systems.

πŸ”‹ Batteries included

If you're looking for a robust and versatile library to create visually stunning applications, then Hybrid is undoubtedly the right choice. Explore the full potential of this exceptional library by giving it a try today!

PyPI version Documentation Status

πŸ“ Simple architecture

No more complex architecture with JavaScript frontend, REST API backend, database, cache, etc. With Hybrid you just write a monolith stateful app in Python only and get multi-user, realtime Single-Page Application (SPA).

✨ Features

  • browser-based graphical user interface

  • standard GUI elements like label, button, checkbox, switch, slider, input, file upload, ...

  • simple grouping with rows, columns, cards and dialogs

  • general-purpose HTML and Markdown elements

  • powerful high-level elements to

    • plot graphs and charts,
    • render 3D scenes,
    • get steering events via virtual joysticks
    • annotate and overlay images
    • interact with tables
    • navigate foldable tree structures
  • notifications, dialogs and menus to provide state of the art user interaction

  • shared and individual web pages

  • ability to add custom routes and data responses

  • capture keyboard input for global shortcuts etc.

  • customize look by defining primary, secondary and accent colors

  • live-cycle events and session data

πŸ–₯ Environment Support

  • Modern browsers
  • Client-side Rendering

Browsers support

IE / Edge
IE / Edge
Firefox
Firefox
Chrome
Chrome
Safari
Safari
iOS Safari
iOS Safari
Samsung
Samsung
Opera
Opera
IE11, Edge last 2 versions last 2 versions last 2 versions last 2 versions last 2 versions last 2 versions

πŸ“¦ Install

pip install HybridUI

πŸ”¨ Usage

Write your Hybrid UI:

from hybrid import interface
layout = interface.title(content='Hello World from Hybrid UI!')
app = interface.compiler(layout=layout, globale_ui_style='main.css')
app.run()
 
   
from hybrid import interface






if __name__ == '__main__':

    def main(data):
        print(data)

    d1 = interface.title(content='Hybrid with Ant Design UI', level=2)
    d2 = interface.slider(onChange=main)
    image = interface.image(src="https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg", alt='hallo', width='350px', height='350px')
    content = interface.content(content=[d1,d2, image])

    app = interface.compiler(layout=content,globale_ui_style='main.css')
    app.run()
 
   

from hybrid import interface

# example with Button onclick

def main():
  print('Hallo')


layout = interface.button(text='Click', onclick=main)
app = interface.compiler(layout=layout, globale_ui_style='main.css')
app.run()
 
   

from hybrid import interface



def main(message):
  print(f'Hallo{message}')


layout = interface.input(placeholder='Click', onchange=main)
app = interface.compiler(layout=layout, globale_ui_style='main.css')
app.run()
 
   

from hybrid import interface

# example with violinChart

def main():
  print('Hallo')


layout = interface.violinChart()
app = interface.compiler(layout=layout, globale_ui_style='main.css')
app.run()
 
   

from hybrid import interface

# example with slider onchage

def main(message):
  print(f'slider value{message}')


layout = interface.slider(onchange=main)
app = interface.compiler(layout=layout, globale_ui_style='main.css')
app.run()
 
   

In August 2023, Hybrid has just been publicly released by software architecture Ari Bermeki and is in Alpha Stage.

Anyone can install and use Hybrid. There may be issues, but we are actively working to resolve them.

🀝 Contributing PRs Welcome

About

License:MIT License


Languages

Language:HTML 56.6%Language:JavaScript 36.0%Language:Python 7.4%