Releases: Privoce/GenUI
Releases · Privoce/GenUI
GenUI v0.1.2
CHANGELOG
Release V0.1.2 (2025-04-06)
General
-
if_else_if_else
syntactic sugar- basic
- nested
- router
- configuration
- code
-
nav_to!
macro -
nav_back!
macro - component inherits
-
- add lifecycle
-
#[before_update]
macro -
#[update]
macro
-
- self-close tag for component in
<template></template>
- Allow single_script strategies to use genui api
- automatic id strategy (see
utils::Ulid
), all components will automatically generate id - the define page automatically add getter and setter from
GView
component - add redraw if callback events need
- adjust the getter|setter so that both the original object and the ref have two-way binding adjustment
- genui
- builtin
- use
Result<(), Box<std::error::Error>>
as setter's return value - replace
use gen_component::*;
touse gen_components::{themes::*, utils::*, *};
- add Default trait for Deref Prop struct
- computed:
#[computed([args...])]
for powerful value bind
Fixes
- if the regular method uses (self), you need to add cx as a regular parameter
Tests
See: v0.1.2 Tests
GenUI v0.1.1
CHANGELOG
Release V0.1.1 (2025-03-09)
Fixes
- Analyzer
- Value
- Enum: parse_template can not parse standard string type
- Bind:
ident()
output wrong bind ident
- multi err_from_to
- Util
- git download function
- Value
General
- Add builtin components
- popup
- popup_container
- dialog
- drawer
- tool_tip
- drop_down
- tag
- loading
- collapse
- toggle
- Optimize builtin components
- image:
src
can usebase64
,local_file
,url
- radio: animation, lifecycle
- checkbox: animation, lifecycle
- image:
- combine
gen_parser
withgen_converter
asgen_analyzer
gen_analyzer
- remove one convert layer (from 640.625µs(avg) -> 200.132µs)
- reduce the number of repeated traversals
- early static analysis
rssyin
- visitor_chain -> define analyzer use
ra_ap_syntax
- add new
ScriptBridger
- visitor_chain -> define analyzer use
- remove
gen_mk_script_objs
- new rust script syntax
- add
#[component]
- use
#[prop]
on prop struct - replace lifecycle
#[before_create]
to#[before_mount]
- add
#[mounted]
- replace
default_prop!
toimpl Default trait
(just like usual rust) - impl
#[component]
struct
- add
Others
See ract CHANGELOG
GenUI v0.1.0
Introduction
GenUI is an innovative SFP front-end framework developed in the Rust language, was originally inspired by Vue3 and Makepad. Intended to help users write front-end projects using Rust more efficiently.
Features
- Book for GenUI
- the entire set of GenUI and other syntax design
- the underlying Makepad encoding conversion and compiler
- dynamic script embedding (plug-in capability)
- Rust script processing:
- two-way binding
- component events
- component import
- component definition
- event definition
- network (http)
- Integrate Basic GenUI Builtin Components
- Ract Cli support
- Built-in syntax sugar
- for
- if_else_if_else
- Integrate all Builtin Components
- Optimize static compilation
- Powerful Scss like
<style>
- Self-Close component tag
- Powerful Bind
- VSCode Plugin
- Remote Services
About dependencies
- Ract
- GenUI Makepad Plugin (Code Generator)
- GenUI Pareser
- GenUI Converter
- GenUI dynmatic run
- GenUI Makepad Script Objects
- GenUI Global Utils
- GenUI Plugin Handler
- Rust Script Syntax Visitor Chain
- GenUI Builtin Component
Releases
Collaboration and Feedback
Important
GenUI is currently in the early stages of development, with many features still being planned and implemented. We welcome community feedback and collaboration! If you have any suggestions for the framework, need to report an issue, or would like to add features, please contact us through the following channels:
- GitHub: https://github.com/Privoce/GenUI
- Discord: https://discord.gg/jVEJDhE75Y
- Email: syf20020816@outlook.com
- Collaboration Email: han@privoce.com
Thank you for your support, and we look forward to building a better GenUI with you!