docs: Improve CONTRIBUTING.md with comprehensive contributor guide#41655
docs: Improve CONTRIBUTING.md with comprehensive contributor guide#41655xingzihai wants to merge 1 commit intoappsmithorg:releasefrom
Conversation
- Add table of contents for easy navigation - Add project architecture overview with tech stack - Add quick start checklist for new contributors - Add finding issues section with categorized links - Add development setup quick guide - Add pull request process guidelines - Add community support channels - Improve overall structure and organization
WalkthroughThe Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@CONTRIBUTING.md`:
- Around line 29-42: The fenced code block in CONTRIBUTING.md (the directory
tree starting with "appsmith/") is missing a language identifier; update the
opening fence to include a plaintext identifier (e.g., replace "```" with
"```text" or "```plaintext") so the directory tree renders correctly, ensuring
the block that contains "appsmith/ ├── app/ │ ├── client/" etc. is modified
accordingly.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: a6271e1c-75bd-4c0c-8beb-4062deca582e
📒 Files selected for processing (1)
CONTRIBUTING.md
| ``` | ||
| appsmith/ | ||
| ├── app/ | ||
| │ ├── client/ # Frontend (React + TypeScript) | ||
| │ │ ├── src/ # React components, widgets, utilities | ||
| │ │ ├── cypress/ # Cypress integration tests | ||
| │ │ └── packages/ # Shared packages including RTS (Real-Time Server) | ||
| │ └── server/ # Backend (Java + Spring + WebFlux) | ||
| │ ├── appsmith-server/ # Main server application | ||
| │ └── appsmith-plugins/ # Database/API connectors | ||
| ├── deploy/ # Docker & Kubernetes deployment configs | ||
| ├── contributions/ # Contribution guides and documentation | ||
| └── static/ # Static assets for documentation | ||
| ``` |
There was a problem hiding this comment.
Add language identifier to fenced code block.
The code block lacks a language specification. Add text or plaintext for proper rendering.
📝 Proposed fix
-```
+```text
appsmith/
├── app/📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ``` | |
| appsmith/ | |
| ├── app/ | |
| │ ├── client/ # Frontend (React + TypeScript) | |
| │ │ ├── src/ # React components, widgets, utilities | |
| │ │ ├── cypress/ # Cypress integration tests | |
| │ │ └── packages/ # Shared packages including RTS (Real-Time Server) | |
| │ └── server/ # Backend (Java + Spring + WebFlux) | |
| │ ├── appsmith-server/ # Main server application | |
| │ └── appsmith-plugins/ # Database/API connectors | |
| ├── deploy/ # Docker & Kubernetes deployment configs | |
| ├── contributions/ # Contribution guides and documentation | |
| └── static/ # Static assets for documentation | |
| ``` |
🧰 Tools
🪛 markdownlint-cli2 (0.21.0)
[warning] 29-29: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@CONTRIBUTING.md` around lines 29 - 42, The fenced code block in
CONTRIBUTING.md (the directory tree starting with "appsmith/") is missing a
language identifier; update the opening fence to include a plaintext identifier
(e.g., replace "```" with "```text" or "```plaintext") so the directory tree
renders correctly, ensuring the block that contains "appsmith/ ├── app/ │ ├──
client/" etc. is modified accordingly.
Summary
This PR significantly improves the CONTRIBUTING.md file to provide a more comprehensive and helpful guide for new contributors to Appsmith.
Changes Made
Added
Improved
Why This Matters
The original CONTRIBUTING.md was brief and served mainly as a pointer to other resources. New contributors often struggle to understand:
This improved version addresses all these concerns directly in the CONTRIBUTING.md file, making the contribution process more accessible and reducing friction for new contributors.
Testing
Related Issues
N/A - This is a documentation improvement initiated during open-source contribution exploration.
Screenshots
Before: Brief 60-line document
After: Comprehensive 250+ line guide with tables, checklists, and clear sections
Summary by CodeRabbit