Bug Fixes
- Move chakra components into its repo (reflex-chakra)
- Fix import clash between connectionToaster and hooks.useState
- Fix various line_chart issues
- Validate Toast Props
- Use different registry when in china
Bug Fixes
- Properly set `is_hydrated` to `false` on page navigation events
- @rx.var(cache=True) now correctly gets the initial value
- Accessing /404 now shows the 404 page content
- Fix event actions for Recharts event triggers
- Allow setting `rx.breakpoints` in the `style` prop
Use templates from reflex-dev/templates
- Nicer looking default style for charts and graphs
- Support rx.svg circle, polygon and rect components
- Bug fixes for background tasks, class_name prop, fully controlled inputs and more
- Progress on Var Operations refactor
Specify frontend and backend exception handlers
- Recharts improvements
- Fix for 404 error on dynamic route after hot reload
- Fix deprecation warnings
- Support mutation tracking for SQLAlchemy models
Fix hot-reload issues on Windows
- rx.clipboard component for handling on_paste event
- rx.breakpoints API for passing responsive CSS props
- Fix ComponentState with backend vars issue
- Fix sqlmodel metaclass conflict issue
Support rx.SessionStorage as State Var
- More Recharts improvements
- Better support for interactive stateless apps
- Fix websocket disconnect when navigating to another domain
- Make .web folder location configurable with REFLEX_WEB_WORKDIR
Better support for serializing datetime, Color, Path, and others to string
- Default theme appearance to system light/dark setting
- Toast component is now promoted to `rx.toast`
- Recharts props accept `rx.color` values
- Avoid hang when backend disconnects while processing an event
Plotly Improvements
- More granular lazy imports
- External asset support
- Numerous bug fixes (see release notes)
Support for Lifespan tasks
- Vertical tabs
- Configurable gunicorn workers in prod mode
- Fix for setting global font_family style
Connection Error is now a Toast
- rx.toast supports action buttons and on_dismiss/on_auto_close
- Improved typing for ConnectionState and State mixins
- Faster CLI launch time
- Better customizability for rx.accordion
Radix Themes 3.0
- New public API methods for wrapping 3rd-Party Components
- Generic throttle and debounce for all event handlers
- Use Alembic batch mode for db makemigrations
- Experimental toast component in rx._x.toast
Bug Fixes and Various Improvements
- Fix for UnicodeDecodeError on Windows
- Use npm fallback when bun does not work
- Allow set in Var.contains
- Fix for light/dark dialogs not matching current theme appearance
Support Bun on Windows for Faster Dependency Installation
- Expose transpile_packages for Components that do not identify as ES6 module
- Enum types are serialized to their values
- Automatic tuple unpacking for Component children
New reflex init templates
- Use any Reflex app on Github as an initial template
- reflex run will automatically init the app when required
- Reflex Experimental Namespace: rx._x
- Windows support for Python 3.12
rx.ComponentState provides simple per-component state
- Use dill instead of cloudpickle
- More compatible package pins
- rx.EventHandler annotation
- Automatic pyi generation for published components
Support SQLAlchemy Models Directly
- Experimental Multi-process Compilation
- Better default titles for SEO
- router.session.client_ip more likely to be correct now
- Allow rx.download to resolve rx.get_upload_url links
Fix missing on_load and /_upload in prod deployments
- rx.upload exposes on_drop event trigger
- rx.el.form supports on_submit event trigger
- Improve 'Stateless' app detection
- Expose lang and other attributes on <html> tag
CLI for Creating and Publishing 3rd Party Components
- get_state() API for accessing arbitrary states
- Set initial_value for computed vars
- Less invasive backend disconnected notification
Syncronize local storage between tabs
- Tuple type annotations are now respected index-wise
- Substates are serialized individually
- Better Image Serialization
Fix Windows Hot-reload Issues
- Fix browser error when triggering upload with no files selected
- Fix regression: rx.link with is_external
Replace Chakra with Radix components
- Entirely new core component library based on radix-ui
- App-wide theming system
- Enhanced support for upload and download
Lucide Icons now available at rx.lucide.icon
- Custom Reflex support directory (REFLEX_DIR)
- Better support for native SQLAlchemy models
- Avoid exposing unused _upload and _event endpoints
Improve hot-reload times in dev mode
- Allow State subclasses to use mixins to define fields
- Improvements to Radix-UI preview components
New rx.match helper acts as a switch statement
- app.compile() is no longer required
- Add time_picker component
- Support bare SQLAlchemy DeclarativeBase models
Support SQLAlchemy v2
- Preview of radix themes components
- Allow redis:// and rediss:// style URL
rx.el components working with State
Performance Improvements
- More flexible rx.State subclassing
- Enhanced standard HTML elements under `rx.el`
Support Dynamic Forms
- Support python 3.12
- NextJS 14
- Fast lazy import
- Upload with progress and cancellation
Work with Github Codespaces
- Expose gunicorn_worker_class for extended configuration
- stop_propagation and prevent_default for all events
New rx.data_editor Component
- Reflex hosting alpha CLI
- Drop python 3.7 support
- Experimental support for Radix themes
Core Graphing Improvements
- Core Graphing Library is now Recharts
- HTML Editor Component
- Run Arbitrary Javascript from Event Handler
- Redirect into New Window
- rx.constants Module Refactored
Background Tasks + Improved API for wrapping components.
- Support long-running non-blocking operations
- Trigger file downloads
- Better change tracking for state vars
- Arbitrary args for event triggers and serializers for custom types
Reduced Package Size + Client-side Storage.
- Reduced initial package size by 60%
- Client-side Storage integrated with State
- Added on_mount and on_unmount triggers for all components
- Per-component prop autocompletion for IDEs and breakpoints support
Bug fix to connect to no sql databases.
- Added the step prop to Slider.
- Added support for limits in pagination
Performance improvements + bug fixes.
- Removing the Node dependency on Windows
- 3x performance improvement on the frontend (dev mode should be much snappier now!)
- f-string support for vars