
Research
Namastex.ai npm Packages Hit with TeamPCP-Style CanisterWorm Malware
Malicious Namastex.ai npm packages appear to replicate TeamPCP-style Canister Worm tradecraft, including exfiltration and self-propagation.
flet-easy
Advanced tools
⚡Flet-Easy is a user-friendly add-on package for Flet, offering a cleaner code structure with numerous customizable features like JWT, routers, decorators, middleware and more.
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.
flet event handling.Docs)Docs)Docs)Docs)Docs)Docs)Docs)Docs)FletEasy (fs init) (Docs)on_keyboard_event in each of the pages. (Docs)on_resize. (Docs)ResponsiveControlsy control to make the app responsive, useful for desktop applications. (Docs)on_route_change : Dynamic routingon_view_popon_keyboard_eventon_resizeon_error[!NOTE] If you use the
fscli, it is important to havegitinstalled.
Installs all the dependencies to use, you can use all the functionalities provided by FletEasy
pip install flet-easy[all]
Requires installation of Flet >= 0.25.
pip install flet[all]
pip install flet-easy
pip install flet-easy[JWT]
pip install flet-easy[all] --upgrade
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()

Flet-Easy?[!IMPORTANT] 📑Documentation: https://daxexs.github.io/flet-easy/0.2.0/
Read the CONTRIBUTING.md file
FAQs
⚡Flet-Easy is a user-friendly add-on package for Flet, offering a cleaner code structure with numerous customizable features like JWT, routers, decorators, middleware and more.
We found that flet-easy demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
Malicious Namastex.ai npm packages appear to replicate TeamPCP-style Canister Worm tradecraft, including exfiltration and self-propagation.

Product
Explore exportable charts for vulnerabilities, dependencies, and usage with Reports, Socket’s new extensible reporting framework.

Product
Socket for Jira lets teams turn alerts into Jira tickets with manual creation, automated ticketing rules, and two-way sync.