Skip to content

Conversation

@bajramemini
Copy link
Contributor

Comprehensive analysis document covering:

  • Current EAV architecture evaluation
  • Performance benchmarks and comparison matrix
  • Hybrid approach recommendation (dedicated tables by default)
  • Migration strategies for existing installations
  • Implementation plan in 4 phases
  • Field-to-column mapping recommendations
  • Backward compatibility considerations

claude and others added 4 commits December 31, 2025 19:07
Comprehensive analysis document covering:
- Current EAV architecture evaluation
- Performance benchmarks and comparison matrix
- Hybrid approach recommendation (dedicated tables by default)
- Migration strategies for existing installations
- Implementation plan in 4 phases
- Field-to-column mapping recommendations
- Backward compatibility considerations
This implements the plan from improvements_for_posts.md to favor dedicated
migrations over the WordPress-style posts/meta (EAV) pattern.

Changes:
- Update MakeResource command with --dynamic and --no-migration flags
- Auto-generate migrations when creating resources with custom tables
- Add $usesMeta = false to custom resource stub
- Add tableColumnType to field classes for migration generation:
  - Boolean: boolean
  - Image, File, Repeater, Json, Checkbox: json
  - Time: time
  - Code: text
- Enhance CreateResourceMigration command:
  - Skip structural fields (Tab, Panel, etc.)
  - Skip relationship fields using pivot tables
  - Add --soft-deletes and --no-timestamps flags
  - Output table summary of field-to-column mapping
  - Add composite indexes for common queries
- Update config with better documentation and AURA_CUSTOM_TABLES env var
- Update CLAUDE.md with database storage patterns documentation

The default behavior remains unchanged (posts/meta) for backward compatibility.
Set AURA_CUSTOM_TABLES=true to use dedicated tables by default.
- Change default value of custom_tables_for_resources to true
- Existing installations can set AURA_CUSTOM_TABLES=false for backwards compatibility
- Update documentation to reflect new default
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants