Split the reflex repository into a monorepo producing separate pip distributions, so users only install what they need.
Proposed Packages
| Package |
Contents |
reflex-core |
Runtime, event system, compiler, rx.Field, Var system |
reflex-html |
Base HTML elements with Tailwind support |
reflex-radix |
Radix Themes component library |
reflex-lucide |
Lucide icon set |
reflex-orm |
Database/ORM functionality (see ENG-9181) |
The top-level reflex package becomes a meta-package that depends on all of the above for backward compatibility.
Motivation
- Users who don't need a database shouldn't install SQLAlchemy/Alembic
- Users who want a different component library shouldn't be forced into Radix
- Smaller install footprint for production deployments and containerized apps
- Clearer separation of concerns for contributors
Tracking
Parent: ENG-9180 (Dependency Reduction & Monorepo)
Roadmap: #2727 — Section 4
Split the reflex repository into a monorepo producing separate pip distributions, so users only install what they need.
Proposed Packages
reflex-corerx.Field, Var systemreflex-htmlreflex-radixreflex-lucidereflex-ormThe top-level
reflexpackage becomes a meta-package that depends on all of the above for backward compatibility.Motivation
Tracking
Parent: ENG-9180 (Dependency Reduction & Monorepo)
Roadmap: #2727 — Section 4