Skip to content

Commit b7c33f3

Browse files
Copilothotlong
andcommitted
Move development plan to docs with lowercase filename and add menu
Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
1 parent 6c0f786 commit b7c33f3

File tree

4 files changed

+252
-1
lines changed

4 files changed

+252
-1
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ bootstrap();
139139

140140
Want to contribute or see what's coming next?
141141

142-
- **[Development Plan (Q1 2026)](./DEVELOPMENT_PLAN.md)** - Detailed implementation plan for upcoming features
142+
- **[Development Plan (Q1 2026)](./docs/guide/development-plan.md)** - Detailed implementation plan for upcoming features
143143
- **[Long-term Roadmap](./ROADMAP.md)** - Strategic vision through 2026 and beyond
144144
- **[Architecture Guide](./ARCHITECTURE.md)** - Deep dive into system design
145145
- **[Contributing Guide](./CONTRIBUTING.md)** - How to contribute to ObjectOS

docs/.vitepress/config.mts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ export default defineConfig({
1616
nav: [
1717
{ text: 'Guide', link: '/guide/' },
1818
{ text: 'Specifications', link: '/spec/' },
19+
{ text: 'Development', link: '/guide/development-plan' },
1920
],
2021

2122
// Sidebar Configuration
@@ -50,6 +51,13 @@ export default defineConfig({
5051
items: [
5152
{ text: 'UI Framework Overview', link: '/guide/ui-framework' }
5253
]
54+
},
55+
{
56+
text: 'Project Planning',
57+
items: [
58+
{ text: 'Development Plan (Q1 2026)', link: '/guide/development-plan' },
59+
{ text: 'Contributing to Development', link: '/guide/contributing-development' }
60+
]
5361
}
5462
],
5563

Lines changed: 243 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,243 @@
1+
# Contributing to Development
2+
3+
Welcome to the ObjectOS development effort! This guide helps you understand how to contribute to the project's ongoing development.
4+
5+
## Quick Links
6+
7+
- **[Development Plan (Q1 2026)](./development-plan.md)** - Current quarter's detailed implementation roadmap
8+
- **[Architecture Guide](./architecture.md)** - System design and architectural principles
9+
- **[Security Guide](./security-guide.md)** - Security best practices and guidelines
10+
11+
## How to Get Involved
12+
13+
### 1. Choose Your Area
14+
15+
ObjectOS development is organized into several key areas:
16+
17+
**🔐 Permission System** (High Priority)
18+
- Object-level permissions (CRUD)
19+
- Field-level security
20+
- Record-level security (RLS)
21+
- See: [Development Plan § 3.1-3.3](./development-plan.md#phase-1-permission-system-implementation-2-3-weeks)
22+
23+
**🪝 Lifecycle Hooks** (High Priority)
24+
- Standard hooks implementation
25+
- Hook debugging tools
26+
- See: [Development Plan § 3.4-3.5](./development-plan.md#phase-2-lifecycle-hooks-system-1-2-weeks)
27+
28+
**🔗 Relationship Fields** (High Priority)
29+
- Lookup fields (many-to-one)
30+
- Master-Detail relationships
31+
- Many-to-many relationships
32+
- See: [Development Plan § 3.6-3.8](./development-plan.md#phase-3-relationship-fields-implementation-2-3-weeks)
33+
34+
**🧪 Testing & Quality** (Ongoing)
35+
- Unit tests (target: 90% Kernel, 80% Server, 70% UI)
36+
- Integration tests
37+
- E2E tests
38+
- See: [Development Plan § 3.9-3.11](./development-plan.md#phase-4-testing--documentation-ongoing)
39+
40+
### 2. Understand the Standards
41+
42+
Before contributing code, please review:
43+
44+
- **[Architecture Principles](./architecture.md)** - Understand the kernel/driver/server separation
45+
- **[SDK Reference](./sdk-reference.md)** - Learn the ObjectOS API
46+
- **[Contributing Guide](../../CONTRIBUTING.md)** - Code style and workflow
47+
48+
### 3. Set Up Your Environment
49+
50+
```bash
51+
# Clone the repository
52+
git clone https://github.com/objectstack-ai/objectos.git
53+
cd objectos
54+
55+
# Install dependencies
56+
pnpm install
57+
58+
# Build all packages
59+
pnpm run build
60+
61+
# Run tests
62+
pnpm run test
63+
64+
# Start development server
65+
pnpm run dev
66+
```
67+
68+
### 4. Pick a Task
69+
70+
Tasks are organized in the [Development Plan](./development-plan.md) with:
71+
- **Task Lists** - Specific implementation steps
72+
- **Acceptance Criteria** - What "done" looks like
73+
- **Estimated Time** - How long it should take
74+
75+
Look for:
76+
- Tasks marked as high-priority
77+
- Tasks in the current week (see [Timeline](./development-plan.md#4-timeline--milestones))
78+
- Tasks that match your skills and interests
79+
80+
### 5. Submit Your Work
81+
82+
1. **Create a feature branch**
83+
```bash
84+
git checkout -b feature/permission-checker
85+
```
86+
87+
2. **Implement the feature**
88+
- Follow the task list in the development plan
89+
- Write tests as you go (TDD recommended)
90+
- Add JSDoc comments for public APIs
91+
92+
3. **Test thoroughly**
93+
```bash
94+
# Run unit tests
95+
pnpm --filter @objectos/kernel test
96+
97+
# Run integration tests
98+
pnpm --filter @objectos/server test
99+
100+
# Check coverage
101+
pnpm run test --coverage
102+
```
103+
104+
4. **Submit a pull request**
105+
- Reference the development plan section
106+
- Include before/after examples
107+
- Note any breaking changes
108+
- Request review from maintainers
109+
110+
## Development Workflow
111+
112+
### Weekly Cycle
113+
114+
Each week follows this pattern:
115+
116+
**Monday-Wednesday: Implementation**
117+
- Work on assigned tasks
118+
- Write tests alongside code
119+
- Document as you go
120+
121+
**Thursday: Code Review**
122+
- Submit PRs for review
123+
- Review others' PRs
124+
- Address feedback
125+
126+
**Friday: Integration**
127+
- Merge approved PRs
128+
- Update development plan status
129+
- Plan next week's tasks
130+
131+
### Communication Channels
132+
133+
- **GitHub Issues** - Bug reports and feature requests
134+
- **GitHub Discussions** - Questions and general discussion
135+
- **Pull Requests** - Code review and technical discussion
136+
137+
## Quality Standards
138+
139+
All contributions must meet these standards:
140+
141+
### Code Quality
142+
- ✅ TypeScript strict mode enabled
143+
- ✅ No `any` types (use `unknown` with guards)
144+
- ✅ All public APIs have JSDoc comments
145+
- ✅ Consistent naming conventions (see [Contributing Guide](../../CONTRIBUTING.md))
146+
147+
### Test Coverage
148+
- ✅ Kernel: ≥ 90% coverage
149+
- ✅ Server: ≥ 80% coverage
150+
- ✅ UI: ≥ 70% coverage
151+
- ✅ All edge cases tested
152+
153+
### Performance
154+
- ✅ API response time P95 < 100ms
155+
- ✅ Permission check overhead < 10ms
156+
- ✅ No N+1 queries in relationships
157+
158+
### Documentation
159+
- ✅ README updated if behavior changes
160+
- ✅ Guide updated for new features
161+
- ✅ Migration notes for breaking changes
162+
- ✅ Examples provided for complex features
163+
164+
## Current Priorities (Q1 2026)
165+
166+
### Week 1-2: Permission System Foundation
167+
Focus on object-level and field-level permissions. This is the foundation for enterprise security.
168+
169+
**Key Tasks:**
170+
- Implement `PermissionChecker` class
171+
- Add `PermissionGuard` to server
172+
- Create field visibility filters
173+
174+
**Success Metrics:**
175+
- All CRUD operations check permissions
176+
- 95%+ test coverage
177+
- < 5ms permission check overhead
178+
179+
### Week 3-4: RLS & Hooks
180+
Complete the permission system with record-level security, then move to lifecycle hooks.
181+
182+
**Key Tasks:**
183+
- Implement `RLSInjector`
184+
- Complete `HookManager`
185+
- Add hook debugging tools
186+
187+
**Success Metrics:**
188+
- Sharing rules work correctly
189+
- All 8 hook types functional
190+
- Hook execution traceable
191+
192+
### Week 5-7: Relationships
193+
Implement full relationship support, the most complex feature set.
194+
195+
**Key Tasks:**
196+
- Lookup field resolver
197+
- Master-Detail cascade delete
198+
- Many-to-many junction tables
199+
200+
**Success Metrics:**
201+
- No N+1 queries
202+
- Cascade operations work
203+
- Related records query correctly
204+
205+
## Getting Help
206+
207+
### For Contributors
208+
209+
**Not sure where to start?**
210+
- Look for issues labeled `good first issue`
211+
- Start with documentation improvements
212+
- Review the [Architecture Guide](./architecture.md) to understand the system
213+
214+
**Stuck on implementation?**
215+
- Check the [Development Plan](./development-plan.md) for code examples
216+
- Review the [SDK Reference](./sdk-reference.md)
217+
- Ask in GitHub Discussions
218+
219+
**Tests failing?**
220+
- Check the [Testing Guide](../../CONTRIBUTING.md#testing)
221+
- Look at existing tests for examples
222+
- Run tests in watch mode: `pnpm test --watch`
223+
224+
### For Maintainers
225+
226+
**Reviewing PRs?**
227+
- Check against acceptance criteria in development plan
228+
- Verify test coverage meets standards
229+
- Ensure documentation is updated
230+
231+
**Planning next sprint?**
232+
- Review [Timeline & Milestones](./development-plan.md#4-timeline--milestones)
233+
- Assess completion status
234+
- Adjust priorities based on progress
235+
236+
## Recognition
237+
238+
Contributors who make significant progress on the development plan will be:
239+
- Listed in release notes
240+
- Acknowledged in documentation
241+
- Invited to join the core team
242+
243+
Thank you for helping build the future of ObjectOS! 🚀
File renamed without changes.

0 commit comments

Comments
 (0)