After Framework

Fábrica de productos

product.spec.yaml, el generador, qué posee un producto y qué hereda.

Versión de la documentación: supercore main · paquetes 1.0.0

PipelineEnlace a esta sección: Pipeline

Tres partes: la spec propiedad del producto, el script generador y el registro de módulos, que asigna cada módulo compartido al paquete que lo posee.

  1. 01

    Idea

  2. 02

    Dominio

  3. 03

    Módulos

  4. 04

    Shell del producto

  5. 05

    Despliegue

product.spec.yamlEnlace a esta sección: product.spec.yaml

Se valida con factory/schema/product.spec.schema.json. Las pestañas con module: y los widgets de tipo module no generan código; los gestiona el shell heredado.

super_airport.product.spec.yaml
apiVersion: after.ai/v1
kind: SuperApp

metadata:
  name: SuperAirport              # PascalCase, must start with a capital
  package: super_airport          # snake_case pubspec name
  bundle: com.overstein.superairport
  productLine: enterprise         # consumer | enterprise

spec:
  domain: Airport / aviation operations
  reference: SuperHospital        # SuperGarage | SuperHospital

  features:                       # VERTICAL ONLY. No OS modules here.
    - id: flights
      titleKey: features.flights
      icon: flight_takeoff_outlined
      requiredPermission: airport.flights.read

  navigation:
    tabs:                         # 2–6 tabs, matching family shell
      - id: home
        labelKey: nav.home
      - id: flights
        labelKey: nav.flights
        feature: flights
      - id: tasks
        module: tasks             # inherited OS module — no code emitted

  permissions:
    - airport.flights.read
    - airport.gates.write

  branding:
    accent: "#0EA5E9"
    monogram: SA

Fuente supercore/docs/PRODUCT_FACTORY.md (se abre en una pestaña nueva)

Propio frente a heredadoEnlace a esta sección: Propio frente a heredado

El producto posee

  • Nombre, paquete, bundle, línea de producto
  • Funcionalidades verticales y claves i18n
  • Pestañas de navegación
  • Cadenas de permisos RBAC
  • Widgets de dashboard
  • Habilidades de IA y enlaces a herramientas
  • Color de acento y monograma

La plataforma aporta

  • Auth y superadmin
  • Membresía u organización
  • Motor RBAC y registro de auditoría
  • Calendario, tareas, documentos
  • Notificaciones y analítica
  • Motores de workflow, dashboard y búsqueda
  • Sistema de diseño, splash, CI

ComandosEnlace a esta sección: Comandos

validate_product_spec.ps1
powershell -File scripts\validate_product_spec.ps1 -SpecPath factory\specs\examples\super_airport.product.spec.yaml

Fuente supercore/factory/README.md (se abre en una pestaña nueva)

generate_product.ps1
# From a spec
powershell -File scripts\generate_product.ps1 -SpecPath factory\specs\examples\super_airport.product.spec.yaml

# From a name only (quick starter)
powershell -File scripts\generate_product.ps1 -Name SuperAirport -Reference SuperHospital

# Preview without writing files
powershell -File scripts\generate_product.ps1 -SpecPath factory\specs\examples\super_airport.product.spec.yaml -DryRun

Fuente supercore/factory/README.md (se abre en una pestaña nueva)

flutter
cd ..\superairport
flutter create .
flutter pub get
flutter analyze
flutter test

Fuente supercore/scripts/generate_product.ps1 (se abre en una pestaña nueva)

RegeneraciónEnlace a esta sección: Regeneración

Volver a ejecutar el generador con una spec actualizada renueva los archivos esqueleto sin destruir el código de funcionalidades escrito a mano.