-
Notifications
You must be signed in to change notification settings - Fork 0
Add ObjectStack Enterprise Framework documentation for Phase 1 #52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
…pecs Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
…d executionRoleArn Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
🚀 Preview DeploymentThis pull request will be automatically deployed to Vercel. Preview Links
Build StatusCheck the CI workflow for build status and any errors. Automated preview information for PR #52 |
|
@copilot 基于这个框架设定的目标重构整个文档 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request adds comprehensive Phase 1 documentation for the ObjectStack Enterprise Framework, introducing a "Metadata as Code" development model. The documentation targets professional development teams and presents ObjectStack as a code-driven alternative to visual configuration interfaces, with Git as the single source of truth and TypeScript as the primary development language.
Changes:
- Introduces the Enterprise Framework concept with bilingual (EN/CN) documentation explaining the three-layer architecture (Creator/SDK → Governance/CI-CD → Execution/Kernel)
- Adds detailed SDK specification documenting TypeScript APIs for defining business objects, triggers, permissions, and field types
- Adds comprehensive CLI reference covering all commands (init, generate, build, dev, migrate, deploy) with CI/CD integration patterns
- Adds deployment guide with Docker, Kubernetes, and cloud platform (AWS/GCP/Azure) deployment strategies
- Updates navigation structure to integrate new documentation sections
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| content/docs/concepts/enterprise-framework.mdx | English version of the enterprise framework concept documentation with architecture diagrams and workflow examples |
| content/docs/concepts/enterprise-framework.cn.mdx | Chinese version of the enterprise framework concept documentation (bilingual support) |
| content/docs/concepts/meta.json | Updated to include the new enterprise-framework page in the concepts navigation |
| content/docs/specifications/sdk/index.mdx | Complete SDK API reference with TypeScript interfaces, field types, triggers, and permissions |
| content/docs/specifications/sdk/meta.json | Navigation structure for SDK documentation |
| content/docs/specifications/cli/index.mdx | Full CLI command reference with usage examples and CI/CD integration patterns |
| content/docs/specifications/cli/meta.json | Navigation structure for CLI documentation |
| content/docs/specifications/deployment/index.mdx | Comprehensive deployment guide covering Docker, Kubernetes, and cloud platforms |
| content/docs/specifications/deployment/meta.json | Navigation structure for deployment documentation |
| content/docs/specifications/meta.json | Updated to add SDK, CLI, and deployment sections before existing ObjectQL/UI/OS specs |
|
|
||
| * **[SDK Reference](../sdk)**: Learn the ObjectStack SDK API | ||
| * **[Deployment Guide](../deployment)**: Deploy to production | ||
| * **[Best Practices](../../guides/best-practices)**: Development guidelines |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The link reference to 'guides/best-practices' doesn't exist in the repository. The guides directory is not present in the codebase. Either remove this link or create placeholder documentation for this guide.
| * **[Best Practices](../../guides/best-practices)**: Development guidelines |
|
|
||
| * **[CLI Reference](./cli)**: Learn how to use the ObjectStack CLI | ||
| * **[Deployment Guide](./deployment)**: Deploy your application | ||
| * **[Migration Guide](./migrations)**: Handle database schema changes |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The link reference to './migrations' (Migration Guide) doesn't exist in the specifications directory. There is no migrations subdirectory or index file. Either remove this link or create the corresponding documentation.
| * **[Migration Guide](./migrations)**: Handle database schema changes | |
| * **Migration Guide (planned)**: Handle database schema changes |
|
|
||
| ## Next Steps | ||
|
|
||
| * **[CLI Reference](./cli)**: Learn how to use the ObjectStack CLI |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incorrect relative path for CLI Reference link. The link uses './cli' but should be '../cli' since the CLI documentation is at the same level as the SDK directory (both under specifications/), not inside the SDK directory.
| * **[CLI Reference](./cli)**: Learn how to use the ObjectStack CLI | |
| * **[CLI Reference](../cli)**: Learn how to use the ObjectStack CLI |
| ## Next Steps | ||
|
|
||
| * **[CLI Reference](./cli)**: Learn how to use the ObjectStack CLI | ||
| * **[Deployment Guide](./deployment)**: Deploy your application |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incorrect relative path for Deployment Guide link. The link uses './deployment' but should be '../deployment' since the deployment documentation is at the same level as the SDK directory (both under specifications/), not inside the SDK directory.
| * **[Deployment Guide](./deployment)**: Deploy your application | |
| * **[Deployment Guide](../deployment)**: Deploy your application |
| maxLength: 200 | ||
| }), | ||
| amount: Field.Currency({ | ||
| label: '金额', |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistency between English and Chinese versions: In the English version, the amount field has required: false, but in the Chinese version it's missing this property entirely. The English version explicitly states required: false while the Chinese version defaults to no required constraint. These should match for consistency across bilingual documentation.
| label: '金额', | |
| label: '金额', | |
| required: false, |
| * **[Security Guide](../../guides/security)**: Secure your deployment | ||
| * **[Monitoring Guide](../../guides/monitoring)**: Set up comprehensive monitoring | ||
| * **[Backup & Recovery](../../guides/backup)**: Data protection strategies |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The link references to guides that don't exist in the repository: 'guides/security', 'guides/monitoring', and 'guides/backup'. These directories are not present in the codebase. Either remove these links or create placeholder documentation for these guides.
| * **[Security Guide](../../guides/security)**: Secure your deployment | |
| * **[Monitoring Guide](../../guides/monitoring)**: Set up comprehensive monitoring | |
| * **[Backup & Recovery](../../guides/backup)**: Data protection strategies | |
| * **Security Guide**: Secure your deployment | |
| * **Monitoring Guide**: Set up comprehensive monitoring | |
| * **Backup & Recovery**: Data protection strategies |
| FROM node:20-alpine AS base | ||
|
|
||
| WORKDIR /app | ||
|
|
||
| # Copy built artifacts | ||
| COPY build/ ./ | ||
|
|
||
| # Install production dependencies | ||
| RUN npm ci --omit=dev | ||
|
|
||
| EXPOSE 3000 | ||
|
|
||
| # Health check | ||
| HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \ | ||
| CMD node healthcheck.js | ||
|
|
||
| # Run the application | ||
| CMD ["node", "kernel/objectstack-runtime.js"] |
Copilot
AI
Jan 22, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The generated Dockerfile runs the Node.js application as root because no non-root USER is configured, which is risky for production deployments. If an attacker gains remote code execution in the container (through a framework or app vulnerability), running as root significantly increases the impact by making container breakout and host resource access easier. Adjust the Docker image to drop privileges and run the runtime under a dedicated non-root user to reduce the blast radius of any compromise.
Documents the "Metadata as Code" development model for ObjectStack - a Git-centric, TypeScript-first alternative to visual configuration interfaces targeting professional development teams.
Architecture Documentation
Enterprise Framework Concept (
concepts/enterprise-framework.mdx)Technical Specifications
SDK Reference (
specifications/sdk/)defineObject, field types, triggers, permissionsCLI Reference (
specifications/cli/)init,generate,build,dev,migrate,deployDeployment Guide (
specifications/deployment/)Example: Metadata as Code
On
git push, the build pipeline extracts metadata, generates migrations, and packages the runtime artifact (Docker/NPM).Navigation
Updated
meta.jsonfiles to integrate new documentation into site hierarchy under Concepts and Specifications sections.Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.