Files
metabuilder/packages
JohnDoe6345789 bf1401fe34 Enhance module definitions and add type annotations across various packages
- Added type annotations and class definitions in the dashboard layout, stats, and data table modules for improved type safety and documentation.
- Introduced new classes for UI components, props, and configuration in the form builder, navigation menu, notification center, and UI dialogs packages.
- Implemented detailed type definitions for actions, fields, and pagination components to streamline usage and enhance clarity.
- Updated initialization functions in multiple packages to include versioning and installation context.
- Improved structure and readability of the codebase by organizing and documenting component properties and methods.
2025-12-30 10:21:33 +00:00
..

Packages Folder

This folder contains modular packages for the MetaBuilder application. Each package is self-contained with its own components, metadata, and examples.

Structure

Each package follows this structure:

packages/
  ├── package_name/
  │   ├── seed/
  │   │   ├── components.json    # Component definitions
  │   │   ├── metadata.json      # Package metadata
  │   │   └── scripts/           # Optional Lua scripts
  │   └── static_content/
  │       └── examples.json      # Optional usage examples

Available Packages

  • admin_dialog: Admin dialog components for management interfaces
  • data_table: Data table components for displaying tabular data
  • form_builder: Form builder components for creating dynamic forms
  • nav_menu: Navigation menu components
  • dashboard: Dashboard layout components
  • notification_center: Notification center components
  • social_hub: Social feed components with creator tools and live rooms
  • codegen_studio: Code generation studio with template-driven exports
  • forum_forge: Modern forum starter with categories, threads, and moderation
  • arcade_lobby: Gaming lobby with queues, tournaments, and party setup
  • stream_cast: Live streaming control room with schedules and scene control

Package Metadata Format

Each metadata.json file should contain:

{
  "packageId": "package_name",
  "name": "Display Name",
  "version": "1.0.0",
  "description": "Package description",
  "author": "Author name",
  "category": "ui",
  "dependencies": [],
  "exports": {
    "components": []
  }
}

Components Format

Each components.json file should contain an array of component definitions.

Development

The main application imports from these packages via relative paths in src/lib/package-glue.ts.

To add a new package:

  1. Run npm run setup-packages <package-name> to create the package structure
  2. Add optional static_content/examples.json if needed
  3. Update src/lib/package-glue.ts to import the new package
  4. Commit the new package files to the repository