Files
metabuilder/docs/INDEX.md
2025-12-26 00:44:17 +00:00

11 KiB
Raw Blame History

MetaBuilder Documentation Index

Welcome to the MetaBuilder documentation. This is your central hub for all project information, organized by category for easy navigation.

<EFBFBD> MASTER NAVIGATION - Complete guide to all documentation
<EFBFBD>📋 View Documentation Organization - Understand the doc structure and guidelines

📚 Quick Navigation

🚀 Getting Started

Start here if you're new to the project:

🏗️ Architecture

Understand the system design:

🧪 Testing

Everything about testing the application:

🔒 Security

Security documentation and standards:

🔧 API Reference

API documentation and integration guides:

📋 Implementation Guides

Detailed implementation documentation:

🔄 Refactoring

Refactoring guides and tracking:

🚨 Troubleshooting

Solutions to common issues:

  • Check for known issues and solutions
  • Database setup problems
  • Build and deployment issues

📚 Reference Documentation

Additional references:

  • Documentation Index - Detailed doc structure
  • Architecture and design patterns
  • Lua scripting guide
  • Database migration guides

🎯 Common Tasks

I want to...

...get started with development → Go to Getting Started

...understand the architecture → Read 5-Level System

...write tests → Check Testing Guidelines

...secure my code → Review Security Guide

...refactor code → See Refactoring Strategy

...integrate with the database → Learn about DBAL Integration

...create a new package → Follow Packages System


📂 Documentation Structure

docs/
├── README.md                          # Project overview
├── INDEX.md                           # This file - documentation map
│
├── getting-started/                   # For new developers
│   ├── PRD.md
│   └── QUICK_START.md
│
├── architecture/                      # System design
│   ├── 5-level-system.md
│   ├── data-driven-architecture.md
│   ├── database.md
│   ├── packages.md
│   ├── generic-page-system.md
│   └── css-as-abstract-system.md
│
├── testing/                           # Test documentation
│   ├── TESTING_GUIDELINES.md
│   ├── UNIT_TESTS_IMPLEMENTATION.md
│   └── quick-reference.md
│
├── security/                          # Security docs
│   ├── SECURITY.md
│   └── SECURE_DATABASE_LAYER.md
│
├── api/                               # API documentation
│   ├── platform-guide.md
│   ├── quick-reference.md
│   └── DBAL_INTEGRATION.md
│
├── implementation/                    # Detailed guides
│   ├── COMPONENT_MAP.md
│   ├── MULTI_TENANT_SYSTEM.md
│   ├── PRISMA_IMPLEMENTATION_COMPLETE.md
│   └── TYPESCRIPT_DBAL_ENHANCEMENTS.md
│
├── refactoring/                       # Refactoring guides
│   ├── REFACTORING_STRATEGY.md
│   ├── REFACTORING_QUICK_REFERENCE.md
│   ├── REFACTORING_ENFORCEMENT_GUIDE.md
│   └── REFACTORING_CHECKLIST.md
│
├── development/                       # Development guides
│   └── typescript-reduction-guide.md
│
├── troubleshooting/                   # Troubleshooting
│   └── (Known issues and solutions)
│
└── reference/                         # Additional references
    ├── documentation-index.md
    └── (Other reference materials)

🏆 Key Concepts

Five-Level Architecture

MetaBuilder uses a sophisticated 5-level architecture:

  1. Level 0: Global system configuration
  2. Level 1: Tenant-specific features
  3. Level 2: Module and package definitions
  4. Level 3: Entity and form configurations
  5. Level 4: Individual records and data

→ Learn more: 5-Level System

Data-Driven Design

95% of functionality is defined through JSON and Lua, not TypeScript. → Learn more: Data-Driven Architecture

Package System

Components are organized as self-contained packages with seeds, scripts, and assets. → Learn more: Packages System

Multi-Tenancy

Each tenant has isolated configurations, data, and customizations. → Learn more: Multi-Tenant System


📞 Support

If you can't find what you're looking for:

  1. Use the search feature in your editor (Ctrl+F)
  2. Check the Reference Documentation
  3. Look at existing code examples
  4. Review the Troubleshooting section

Last Updated: December 2025

Migrations

Data migrations, code refactoring, and relocation guides.

Troubleshooting

Diagnostics, debugging guides, and common issues.

Archive

Completed phases and historical work.

Code-to-Documentation Mapping

Source Code (src/)

Documentation for TypeScript/React source code

  • components/ - React components (atoms, molecules, organisms)
  • lib/ - Core library modules (auth, database, lua, packages)
  • hooks/ - React custom hooks
  • seed-data/ - Database seed data
  • types/ - TypeScript type definitions
  • styles/ - Styling system and Tailwind configuration
  • tests/ - Unit and integration tests

DBAL (Data Abstraction Layer)

Documentation for C++ and TypeScript database layer

  • api/ - API schemas and versioning
  • backends/ - Database backend implementations (Prisma, SQLite)
  • common/ - Shared DBAL utilities
  • cpp/ - C++ implementation
  • ts/ - TypeScript implementation
  • tools/ - Development tools
  • scripts/ - Automation scripts

Packages

Documentation for feature packages

Additional Topics

Architecture

Fundamental architecture and design patterns.

Database

Database-specific documentation.

Development

Development workflow and best practices.

Lua Scripting

Lua integration and scripting.

  • lua/ - Lua documentation and examples

Reference

Quick lookup and API reference.

Security

Security policies and guidelines.

Navigation Tips

  1. New to MetaBuilder? Start with README.md and ATOMIC_QUICKSTART.md
  2. Building a feature? Check IMPLEMENTATION_ROADMAP.md and the implementation/ folder
  3. Setting up locally? See SASS_QUICK_REFERENCE.md and guides/
  4. Deploying to production? Review NGINX_INTEGRATION.md and deployments/
  5. Debugging issues? Check troubleshooting/ first
  6. Running CI/CD locally? See github-actions-local-testing.md