reacthexagen
v3.0.0
Published
**The "Vortex Engine" for Enterprise-Grade Hexagonal React Applications** *Created by rbaezc (Raul Baez Camarillo) - Licensed to Vortex Solutions*
Readme
💎 ReactHexaGen v3.0.0 (Workspace Edition)
The "Vortex Engine" for Enterprise-Grade Hexagonal React Applications Created by rbaezc (Raul Baez Camarillo) - Licensed to Vortex Solutions
ReactHexaGen is a high-performance CLI tool designed to scaffold React applications following the Hexagonal Architecture (Ports and Adapters) pattern. Version 3.0.0 introduces the Workspace Edition, with full support for Turborepo, automated MFE orchestration, and "Ready-to-Run" projects.
🚀 Key Features
- 🏗️ Workspace Edition: Native support for Turborepo and automated MFE ecosystems.
- 🛡️ Clean Architecture: Strict separation of Domain, Application, and Infrastructure.
- ✨ Magic Touch (Auto-wire): Automatically registers your new resources in the DI container.
- 🏃 Ready-to-Run: Generates a complete Vite + Typescript project that runs out-of-the-box.
- 💉 Flexible DI: Choose between Awilix, TSyringe, or Manual Dependency Injection.
- 🌐 MFE Automation: Native support for Vite Module Federation with auto-config.
- 🧪 Testing Pro: Built-in Vitest configuration and automated unit tests.
- 🎨 Presentation Layer: Generates DI-injected Hooks and Contexts for every resource.
🛠️ Installation
Use directly with NPX (Recommended)
npx reacthexagen init my-app🏗️ Project Scaffolding (init)
The init command sets up a complete foundation.
reacthexagen init my-awesome-appNote: This will launch an interactive wizard to configure your DI Strategy, State Management, Real-Time support, and Microfrontend settings. What's inside?
- Vite + React + TypeScript configuration.
- Path aliases (
@domain,@application, etc.) pre-configured. - DI Container setup (Awilix, TSyringe, or Manual).
- Enterprise error handling and Base Mappers.
- Testing environment (Vitest).
📦 Resource Generation (gen)
Generate complete features with a single command:
reacthexagen gen resource UserThis generates:
domain/entities/User.ts(withUser.test.ts)domain/repositories/IUserRepository.tsapplication/usecases/GetUserUseCase.ts(withGetUserUseCase.test.ts)infrastructure/adapters/http/HttpUserRepository.tspresentation/hooks/useUser.ts(DI Injected!)presentation/context/UserContext.tsx- AND automatically registers them in
container.ts!
📜 License
Distributed under the MIT License. See LICENSE for more information.
Developed with ❤️ by rbaezc (Raul Baez Camarillo). "Architecture is the art of making the complex simple."
