- Complete system overview with technology stack
- Detailed architecture documentation (database, DBAL, packages)
- 52 built-in packages cataloged and categorized
- MVP milestone clearly marked with all achievements
- Complete phase-by-phase roadmap through 2028
- Comprehensive feature status matrix
- Known issues and technical debt documented
- Deployment options for all platforms
- Development workflow and code standards
- Success metrics and long-term vision
- Contributing guide and project resources
- Changelog and version history
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
Added PROJECT_IMPROVEMENTS_SUMMARY.md documenting:
- All fixes and improvements made
- TypeScript error reduction (39 → ~19)
- Dependency resolution improvements
- Build system enhancements
- Remaining issues and recommendations
- Clear next steps for continued development
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
- Added index signatures to all generated types and Create/Update input types
- Fixed Workflow description field type (null vs undefined)
- Fixed lint errors in API route (proper type checking for user object)
- Added server-only directive to compiler module
- Temporarily disabled PackageStyleLoader (needs API route instead of client-side fs access)
- Simplified main.scss to avoid SCSS @use import order issues
- TypeScript errors reduced from 39 to ~19 (mostly missing Prisma models)
- Build process now gets further (past SCSS compilation)
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
- Fixed Storybook dependency version mismatch (downgraded to 8.6.15)
- Added @types/better-sqlite3 for better-sqlite3 type definitions
- Fixed Prisma adapter import (PrismaBetterSqlite3 vs PrismaBetterSQLite3)
- Removed datasource URL from Prisma schema (Prisma 7 requirement)
- Generated DBAL types.generated.ts from Prisma schema
- Added index signatures to Update*Input types for Record<string, unknown> compatibility
- Fixed ErrorBoundary override modifiers
- Fixed Zod record schema (requires both key and value types)
- Fixed orderBy syntax in get-error-logs (array format)
- Fixed type safety in API routes (user type assertions)
- Fixed hook imports and exports
- Fixed conditional expression type guards
- Added .npmrc for legacy peer deps support
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
- Removed all 43 generated seed/metadata.json files
- Removed generate-package-metadata.js and validate-package-metadata.js scripts
- Removed MVP_PACKAGE_METADATA_MIGRATION.md documentation
- Reverted package-integration.test.ts to original 8 packages
- Reverted scripts/README.md to original state
- Cleaned up empty seed directories
Per user feedback, packages already have comprehensive package.json files at root level.
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
- Created comprehensive documentation in docs/MVP_PACKAGE_METADATA_MIGRATION.md
- Documents the migration from 8 to 51 packages with metadata
- Includes usage instructions for generation and validation scripts
- Provides future maintenance guidelines
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
- Updated package-integration.test.ts to import all 51 packages
- Expanded valid categories list to match generated metadata
- Tests now verify all packages have proper metadata structure
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
- Created generate-package-metadata.js script to auto-generate metadata
- Created validate-package-metadata.js script for validation
- Generated seed/metadata.json for 43 packages missing them
- All 51 packages now have valid metadata conforming to metadata_schema.json
- Metadata includes: packageId, name, version, description, author, category, exports, dependencies
Co-authored-by: johndoe6345789 <224850594+johndoe6345789@users.noreply.github.com>
- Introduced `dbal_commands.h` for handling DBAL operations via CLI.
- Implemented `package_commands.cpp` and `package_commands.h` for package management, including listing, running scripts, and generating packages.
- Created `lua_runner.cpp` and `lua_runner.h` to execute Lua scripts in a secure sandbox environment.
- Added `http_client.cpp` and `http_client.h` for making HTTP requests to a specified base URL.
- Updated `main.cpp` to initialize the HTTP client and dispatch commands based on user input.
- Added `jsonScript` property to metadata schema for JSON script entry points.
- Refactored `generate-package.ts` to replace Lua scripts with JSON scripts for lifecycle hooks.
- Updated test generation to use JSON format for metadata validation.
- Modified documentation and comments to reflect the transition from Lua to JSON scripting.
- Adjusted Storybook configuration and mock data to align with new JSON script structure.
- Renamed relevant files and references from Lua to JSON for consistency across the project.
- Deleted dbal_commands.h and package_commands.h files, removing DBAL command handlers and package command definitions.
- Removed package_commands.cpp, which contained the implementation of package commands including list, run, and generate functionalities.
- Eliminated lua_runner.cpp and lua_runner.h, which provided the Lua script execution environment and related functionalities.
- Removed main.cpp and http_client files, which were responsible for the CLI entry point and HTTP client interactions.
- Updated functions.json files in theme_editor, ui_auth, ui_footer, ui_header, ui_home, ui_intro, ui_level2, ui_level3, ui_level4, ui_level5, ui_level6, ui_login, ui_pages, ui_permissions, user_manager, and workflow_editor packages.
- Removed luaScript entries from function definitions, retaining only category and other relevant metadata.
- Adjusted documentation in prisma/README.md to remove LuaScript entity reference.
- Deleted all LuaScript CRUD operations from Client and entities.
- Removed LuaScript validation functions and related files.
- Updated InMemoryStore to remove LuaScript storage.
- Cleaned up tests by removing LuaScript related test cases.
- Adjusted documentation and quick start guide to reflect the removal of LuaScript functionality.
- Updated `list_workflows.hpp` to replace `is_active` with `enabled` filter and added `tenant_id` filter.
- Modified sorting logic for workflows based on `created_at` to handle optional values.
- Enhanced `update_workflow.hpp` to include new fields: `nodes`, `edges`, `enabled`, `version`, and `created_at`.
- Removed obsolete `isValidWorkflowTrigger` validation function from `workflow_validation.hpp`.
- Adjusted unit tests in `client_test.cpp` to reflect changes in workflow and page management, including renaming fields and updating assertions.
- Updated Prisma schema in `schema.prisma` to align with new workflow and component models, including changes to data types and attributes.
- Introduced a new script `gen_prisma_schema.js` for generating Prisma schema from DBAL API schemas to maintain synchronization.
- Introduced `PageConfig` entity for page configuration and layout definition.
- Introduced `ComponentNode` entity for managing component hierarchy within pages.
- Implemented operations for creating, reading, updating, and deleting both entities.
- Updated Prisma schema to reflect new entities and relationships.
- Enhanced ACL rules for new entities to manage access control.
- Added conformance cases to test page and component hierarchy management.
- Created a script to check synchronization between DBAL and Prisma schemas.
- Updated page validation to include new properties such as path, componentTree, requiresAuth, and more.
- Enhanced session validation to check for bigint timestamps and added checks for ipAddress and userAgent.
- Improved user validation by adding checks for profilePicture, bio, createdAt, and tenantId.
- Refactored workflow validation to ensure nodes and edges are valid JSON strings and added checks for createdAt and updatedAt.
- Introduced isValidJsonString utility for validating JSON strings.
- Added seedUsers function to populate default users in the database.
- Removed unused generateComponentTree stub and replaced it with a full implementation for rendering Lua UI components.
- Updated useLevelRouting and useResolvedUser hooks to support new permission levels and user state management.
- Enhanced useRestApi hook to support request cancellation with AbortSignal.