⚡Flet-Easy is a package created as a Flet add-on, designed to be easy to use with a cleaner order in the code, having many customizable features.
Project description
🔥Flet-Easy
Flet-Easy
is a package built as an add-on for Flet
, designed for beginners what it does is to make Flet
easier when building your apps, with a tidier and simpler code.
Features
- Easy to use (hence the name).
- Facilitates
flet
event handling. - Simple page routing (There are three ways) for whichever one suits you best. (
Docs
) - App construction with numerous pages and custom flet configurations for desktop, mobile and web sites.
- Provides a better construction of your code, which can be scalable and easy to read (it adapts to your preferences, there are no limitations).
- Dynamic routing, customization in the routes for greater accuracy in sending data. (
Docs
) - Routing protection (
Docs
) - Custom Page 404 (
Docs
) - Controlled data sharing between pages. (
Docs
) - Asynchronous support.
- Middleware Support (in the app in general and in each of the pages). (
Docs
) - JWT support for authentication sessions in the data parameter. (useful to control the time of sessions) (
Docs
) - Working with other applications. (
Docs
) - CLI to create app structure
FletEasy
(fs init
) (Docs
) - Easy integration of
on_keyboard_event
in each of the pages. (Docs
) - Use the percentage of the page width and height of the page with
on_resize
. (Docs
) ResponsiveControlsy
control to make the app responsive, useful for desktop applications. (Docs
)- Soporta Application Packaging para su distribución. (view)
📌Flet events it handles
on_route_change
: Dynamic routingon_view_pop
on_keyboard_event
on_resize
on_error
💻Installation:
Requires installation Flet
for use:
pip install flet --upgrade
pip install flet-easy
💻Update:
pip install flet-easy --upgrade
🔥Flet-Easy app example
Here is an example of an application with 2 pages, "Home" and "Counter":
import flet as ft
import flet_easy as fs
app = fs.FletEasy(route_init="/flet-easy")
# We add a page
@app.page(route="/flet-easy", title="Flet-Easy")
def index_page(data: fs.Datasy):
return ft.View(
controls=[
ft.Text("Home page"),
ft.FilledButton("Go to Counter", on_click=data.go("/counter")),
],
vertical_alignment="center",
horizontal_alignment="center",
)
# We add a second page
@app.page(route="/counter", title="Counter")
def counter_page(data: fs.Datasy):
page = data.page
txt_number = ft.TextField(value="0", text_align="right", width=100)
def minus_click(e):
txt_number.value = str(int(txt_number.value) - 1)
page.update()
def plus_click(e):
txt_number.value = str(int(txt_number.value) + 1)
page.update()
return ft.View(
controls=[
ft.Row(
[
ft.IconButton(ft.icons.REMOVE, on_click=minus_click),
txt_number,
ft.IconButton(ft.icons.ADD, on_click=plus_click),
],
alignment="center",
),
ft.FilledButton("Go to Home", on_click=data.go("/flet-easy")),
],
vertical_alignment="center",
horizontal_alignment="center",
)
# We run the application
app.run()
🎬 Mode
🚀 How to use Flet-Easy
?
[!IMPORTANT] Documentation: https://daxexs.github.io/flet-easy/latest/
👀 Code examples
🔎 Contribute to this project
Read the CONTRIBUTING.md file
🧾 License
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
flet_easy-0.2.2.tar.gz
(203.1 kB
view hashes)
Built Distribution
flet_easy-0.2.2-py3-none-any.whl
(208.4 kB
view hashes)
Close
Hashes for flet_easy-0.2.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 123c1ee774ba82de290b8c081339f1a278239d478acba5cdc35495f5f7aa1638 |
|
MD5 | cf3012131ba101de1de9112b92ebb640 |
|
BLAKE2b-256 | 770eac89e83e08fa4aca15e74f9d872272ed8bf2e8549240c03f8fd04a72501d |