@avora-labs/meta-forge
v1.8.0
Published
AvoraMetaForge — A meta-driven Angular framework. Define entire applications through structured TypeScript metadata.
Downloads
2,117
Maintainers
Readme
✨ What is AvoraMetaForge?
AvoraMetaForge flips the traditional Angular development model upside down. Instead of writing endless HTML templates and boilerplate component classes, you define your entire application—from data tables and dynamic forms to dashboards and interactive dialogs—using strictly typed TypeScript JSON objects (metadata).
The core engine reads this metadata and natively renders beautiful, fully responsive, and highly interactive UI components on the fly. It drastically reduces boilerplate and allows developers to focus on pure business logic.
🚀 Features
- Zero-Boilerplate UI: Build complex dashboards without writing a single line of HTML.
- Intelligent Renderers: Out-of-the-box support for Forms, Tables, Cards, Accordions, Stats Grids, Dialogs, and Page Headers.
- Built-in State Management: The Action Dispatcher handles everything from API calls to dialog triggers seamlessly.
- Layout Engine: Native vertical and horizontal shell layouts designed for SaaS applications.
- Highly Extensible: Inject your own custom renderers directly into the core engine.
📦 Installation
To get the most out of AvoraMetaForge, we highly recommend using our companion CLI, which handles automatic installation, wiring, and scaffolding!
The Easy Way (Using the CLI)
npm install -g @avora-labs/cli
avora initThe Manual Way
npm install @avora-labs/meta-forgeThen, inject the providers into your app.config.ts:
import { ApplicationConfig } from '@angular/core';
import { provideAvoraMetaForge } from '@avora-labs/meta-forge';
export const appConfig: ApplicationConfig = {
providers: [
provideAvoraMetaForge()
]
};💻 Quick Start: Building a Form
Once configured, building a production-ready form with validation takes seconds:
import { FormMeta } from '@avora-labs/meta-forge';
export const loginForm: FormMeta = {
id: 'login',
submitLabel: 'Sign In',
onSubmit: { type: 'api', config: { action: 'auth.login' } },
fields: [
{
key: 'email',
type: 'email',
label: 'Email Address',
validators: [{ type: 'required' }, { type: 'email' }]
},
{
key: 'password',
type: 'password',
label: 'Password',
validators: [{ type: 'required' }]
}
]
};Pass this config to the form renderer and you're done!
🤝 Maintainer & Author
AvoraMetaForge is built and maintained by:
Dileesha Ekanayake
📧 [email protected]
Feel free to reach out for support, enterprise inquiries, or just to say hi!
📄 License
This software is UNLICENSED and proprietary. While anyone is free to download and use the compiled bundle from NPM for building applications, the source code remains private and may not be copied, modified, or redistributed.
