Skip to content

docs: update Contributions documentation for clarity and consistency#41651

Open
sebastianiv21 wants to merge 2 commits intoreleasefrom
410-contribution-docs-command-context
Open

docs: update Contributions documentation for clarity and consistency#41651
sebastianiv21 wants to merge 2 commits intoreleasefrom
410-contribution-docs-command-context

Conversation

@sebastianiv21
Copy link
Copy Markdown
Contributor

@sebastianiv21 sebastianiv21 commented Mar 24, 2026

Description

Tip

Add a TL;DR when the description is longer than 500 words or extremely technical (helps the content, marketing, and DevRel team).

Please also include relevant motivation and context. List any dependencies that are required for this change. Add links to Notion, Figma or any other documents that might be relevant to the PR.

  • Revised steps for setting up local development environment in ClientSetup.md, including clearer instructions for creating HTTPS certificates and running the backend server.
  • Enhanced ServerSetup.md with improved directory navigation instructions and environment file setup guidance.
  • Ensured consistency in command execution context across both documents, specifying when to run commands from the repo root or specific directories.

This update aims to streamline the onboarding process for new developers and improve overall documentation clarity.

Fixes #41586
or
Fixes Issue URL

Warning

If no issue exists, please create an issue first, and check with the maintainers if the issue is valid.

Automation

/ok-to-test tags=""

🔍 Cypress test results

Warning

Tests have not run on the HEAD 73afb38 yet


Tue, 24 Mar 2026 18:07:43 UTC

Communication

Should the DevRel and Marketing teams inform users about this change?

  • Yes
  • No

Summary by CodeRabbit

  • Documentation
    • Improved local client and server setup documentation with clearer instructions and better organization.
    • Added explicit guidance on where to run commands (e.g., repo root vs. specific directories).
    • Enhanced formatting and readability with better sub-steps and step numbering.

…d consistency

- Revised steps for setting up local development environment in ClientSetup.md, including clearer instructions for creating HTTPS certificates and running the backend server.
- Enhanced ServerSetup.md with improved directory navigation instructions and environment file setup guidance.
- Ensured consistency in command execution context across both documents, specifying when to run commands from the repo root or specific directories.

This update aims to streamline the onboarding process for new developers and improve overall documentation clarity.
@sebastianiv21 sebastianiv21 requested a review from tomjose92 March 24, 2026 18:06
@sebastianiv21 sebastianiv21 added the skip-changelog Adding this label to a PR prevents it from being listed in the changelog label Mar 24, 2026
@github-actions github-actions bot added the Bug Something isn't working label Mar 24, 2026
@github-actions github-actions bot added the Needs Triaging Needs attention from maintainers to triage label Mar 24, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Mar 24, 2026

Walkthrough

Updated setup documentation for both client and server environments to explicitly clarify working directories and prerequisites. Changes include reformatted numbered sections, added guidance on where to run commands (repo root vs. specific subdirectories), improved formatting of sub-steps, and corrected structural inconsistencies in instructional flow.

Changes

Cohort / File(s) Summary
Development Setup Documentation
contributions/ClientSetup.md, contributions/ServerSetup.md
Clarified working directory requirements for setup commands (e.g., "run from repo root", app/server, app/client). Consolidated and renumbered prerequisites/steps, improved formatting of sub-instructions (e.g., HTTPS certificate setup, Cypress/Jest commands), and standardized directional guidance throughout both client and server setup flows.

Estimated Code Review Effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

📚 Paths were murky, steps unclear,
But now the docs shine bright and dear,
From root to server, client too,
Each directory knows what it must do! ✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main change: updating contribution documentation for clarity and consistency across setup guides.
Linked Issues check ✅ Passed The PR directly addresses issue #41586 by clarifying command execution context and directory specifications in ClientSetup.md, removing ambiguity around the .env file setup process.
Out of Scope Changes check ✅ Passed All changes in ClientSetup.md and ServerSetup.md are focused on clarifying command execution context and directory navigation, staying aligned with the issue objective of improving documentation accuracy.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description check ✅ Passed PR description includes summary of changes, addresses issue #41586, and specifies team communication, but lacks detailed motivation and dependency context beyond general onboarding improvement.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch 410-contribution-docs-command-context

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions bot removed Bug Something isn't working skip-changelog Adding this label to a PR prevents it from being listed in the changelog labels Mar 24, 2026
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (7)
contributions/ClientSetup.md (5)

15-22: Add language identifier to code block.

The bash code block is missing a language specifier.

📝 Proposed fix
-    ```
+    ```bash
     curl -s https://api.github.com/repos/FiloSottile/mkcert/releases/latest \
     | grep "browser_download_url.*linux-amd64" \
     | cut -d : -f 2,3 | tr -d \" \
     | wget -i - -O mkcert
     chmod +x  mkcert
     sudo mv mkcert /usr/local/bin
     ```
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@contributions/ClientSetup.md` around lines 15 - 22, Update the fenced code
block in the ClientSetup.md snippet so the opening fence includes a language
identifier by changing ``` to ```bash; specifically modify the triple-backtick
that precedes the curl/wget/chmod/sudo commands so the block becomes a bash code
block for proper syntax highlighting and tooling recognition.

62-64: Add language identifier to code block.

📝 Proposed fix
-    ```
+    ```bash
     echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
     ```
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@contributions/ClientSetup.md` around lines 62 - 64, The code block containing
the command echo fs.inotify.max_user_watches=524288 | sudo tee -a
/etc/sysctl.conf && sudo sysctl -p in contributions/ClientSetup.md is missing a
language identifier; update the opening triple-backtick to include bash (i.e.,
change ``` to ```bash) so syntax highlighting and tooling recognize the shell
snippet in the code fence around that command.

41-43: Add language identifier to code block.

📝 Proposed fix
-      ```
+      ```bash
       cat /etc/hosts | grep appsmith
       ```
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@contributions/ClientSetup.md` around lines 41 - 43, Add a language identifier
to the fenced code block containing the command "cat /etc/hosts | grep appsmith"
so it becomes a bash-highlighted block; locate the triple-backtick fence
surrounding that command and change the opening fence from ``` to ```bash to
enable proper syntax highlighting.

34-37: Fix list indentation for consistency.

Sub-step 2 under item 6 has the same indentation issue.

📝 Proposed fix
-  2. Add the domain `dev.appsmith.com` to `/etc/hosts`.
+   2. Add the domain `dev.appsmith.com` to `/etc/hosts`.
-    ```bash
+      ```bash
-     echo "127.0.0.1 dev.appsmith.com" | sudo tee -a /etc/hosts
+       echo "127.0.0.1 dev.appsmith.com" | sudo tee -a /etc/hosts
-    ```
+      ```
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@contributions/ClientSetup.md` around lines 34 - 37, Sub-step 2 under item 6
has inconsistent indentation for the fenced bash block and its inner line;
adjust the indentation so the opening fence ```bash, the command line echo
"127.0.0.1 dev.appsmith.com" | sudo tee -a /etc/hosts, and the closing ``` align
consistently with the surrounding list indentation (make the command indented
one level further than the fence), updating the three affected lines in the
markdown snippet to match the list's indentation.

27-33: Fix list indentation for consistency.

Sub-step 1 under item 6 has inconsistent indentation (2 spaces instead of the expected 0 for same-level items), which violates markdown formatting standards.

📝 Proposed fix
 6. **Create local HTTPS certificates**
-  1. Run from repo root:
+   1. Run from repo root:
-    ```bash
+      ```bash
-     cd app/client/docker && mkcert -install && mkcert "*.appsmith.com" && cd ../../..
+       cd app/client/docker && mkcert -install && mkcert "*.appsmith.com" && cd ../../..
-    ```
+      ```
-     This command will create 2 files in the `docker/` directory:
+      This command will create 2 files in the `docker/` directory:
-    - `_wildcard.appsmith.com-key.pem`
+      - `_wildcard.appsmith.com-key.pem`
-    - `_wildcard.appsmith.com.pem`
+      - `_wildcard.appsmith.com.pem`
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@contributions/ClientSetup.md` around lines 27 - 33, Fix the inconsistent
indentation in item 6 sub-step 1: remove the two leading spaces before the code
fence, the command line ("cd app/client/docker && mkcert -install && mkcert
\"*.appsmith.com\" && cd ../../.."), the closing fence, the explanatory sentence
("This command will create 2 files in the `docker/` directory:"), and the two
list bullets ("_wildcard.appsmith.com-key.pem" and "_wildcard.appsmith.com.pem")
so all same-level markdown elements (the ```bash fence, the command, the
explanation, and the list items) use no leading spaces and match the other
top-level list formatting.
contributions/ServerSetup.md (2)

90-92: Add language identifier to code block.

The code block is missing a language specifier.

📝 Proposed fix
-            ```
+            ```bash
             mongosh
             ```
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@contributions/ServerSetup.md` around lines 90 - 92, The fenced code block
containing the single line "mongosh" is missing a language specifier; update the
triple-backtick fence that wraps "mongosh" to include a language identifier
(e.g., change ``` to ```bash) so the block is rendered/highlighted correctly in
ServerSetup.md.

21-24: Add language identifier to code block.

The code block is missing a language specifier, which affects rendering and syntax highlighting.

📝 Proposed fix
-    ```
+    ```bash
     git clone https://github.com/appsmithorg/appsmith.git
     cd appsmith
     ```
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@contributions/ServerSetup.md` around lines 21 - 24, Update the fenced code
block containing the shell commands starting with "git clone
https://github.com/appsmithorg/appsmith.git" and "cd appsmith" to include a
language identifier by changing the opening triple backticks to "```bash" so the
block is rendered with proper shell syntax highlighting; locate the block by
searching for the exact commands or the plain triple-backtick fence and modify
only the opening fence.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@contributions/ServerSetup.md`:
- Around line 223-227: Update the Windows instructions to use the same working
directory and script path as the MacOS section: change the Windows "from
`app/server`" wording and `./scripts/start-dev-server.sh` path to "from repo
root" with `./app/server/scripts/start-dev-server.sh` so both OS sections
consistently instruct running the same script from the repository root (ensure
the Windows subsection text and the path string are updated).

---

Nitpick comments:
In `@contributions/ClientSetup.md`:
- Around line 15-22: Update the fenced code block in the ClientSetup.md snippet
so the opening fence includes a language identifier by changing ``` to ```bash;
specifically modify the triple-backtick that precedes the curl/wget/chmod/sudo
commands so the block becomes a bash code block for proper syntax highlighting
and tooling recognition.
- Around line 62-64: The code block containing the command echo
fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl
-p in contributions/ClientSetup.md is missing a language identifier; update the
opening triple-backtick to include bash (i.e., change ``` to ```bash) so syntax
highlighting and tooling recognize the shell snippet in the code fence around
that command.
- Around line 41-43: Add a language identifier to the fenced code block
containing the command "cat /etc/hosts | grep appsmith" so it becomes a
bash-highlighted block; locate the triple-backtick fence surrounding that
command and change the opening fence from ``` to ```bash to enable proper syntax
highlighting.
- Around line 34-37: Sub-step 2 under item 6 has inconsistent indentation for
the fenced bash block and its inner line; adjust the indentation so the opening
fence ```bash, the command line echo "127.0.0.1 dev.appsmith.com" | sudo tee -a
/etc/hosts, and the closing ``` align consistently with the surrounding list
indentation (make the command indented one level further than the fence),
updating the three affected lines in the markdown snippet to match the list's
indentation.
- Around line 27-33: Fix the inconsistent indentation in item 6 sub-step 1:
remove the two leading spaces before the code fence, the command line ("cd
app/client/docker && mkcert -install && mkcert \"*.appsmith.com\" && cd
../../.."), the closing fence, the explanatory sentence ("This command will
create 2 files in the `docker/` directory:"), and the two list bullets
("_wildcard.appsmith.com-key.pem" and "_wildcard.appsmith.com.pem") so all
same-level markdown elements (the ```bash fence, the command, the explanation,
and the list items) use no leading spaces and match the other top-level list
formatting.

In `@contributions/ServerSetup.md`:
- Around line 90-92: The fenced code block containing the single line "mongosh"
is missing a language specifier; update the triple-backtick fence that wraps
"mongosh" to include a language identifier (e.g., change ``` to ```bash) so the
block is rendered/highlighted correctly in ServerSetup.md.
- Around line 21-24: Update the fenced code block containing the shell commands
starting with "git clone https://github.com/appsmithorg/appsmith.git" and "cd
appsmith" to include a language identifier by changing the opening triple
backticks to "```bash" so the block is rendered with proper shell syntax
highlighting; locate the block by searching for the exact commands or the plain
triple-backtick fence and modify only the opening fence.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: ec6f4084-245d-4ad3-880b-7f3ddb1ac840

📥 Commits

Reviewing files that changed from the base of the PR and between 97e2376 and 73afb38.

📒 Files selected for processing (2)
  • contributions/ClientSetup.md
  • contributions/ServerSetup.md

Comment on lines +223 to 227
10. Start the Java server by running from repo root:

```console
./app/server/scripts/start-dev-server.sh
```
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Inconsistent working directory between MacOS and Windows sections.

Line 223 instructs running the Java server "from repo root" with path ./app/server/scripts/start-dev-server.sh, but Line 388 (Windows section) says "from app/server" with path ./scripts/start-dev-server.sh. Both approaches work, but the inconsistency may confuse developers switching between OS-specific instructions.

🔧 Standardize to repo root for consistency

Update the Windows section to match the MacOS pattern:

-8. Start the Java server by running from `app/server`:
+8. Start the Java server by running from repo root:

 ```console
-./scripts/start-dev-server.sh
+./app/server/scripts/start-dev-server.sh

</details>

<details>
<summary>🤖 Prompt for AI Agents</summary>

Verify each finding against the current code and only fix it if needed.

In @contributions/ServerSetup.md around lines 223 - 227, Update the Windows
instructions to use the same working directory and script path as the MacOS
section: change the Windows "from app/server" wording and
./scripts/start-dev-server.sh path to "from repo root" with
./app/server/scripts/start-dev-server.sh so both OS sections consistently
instruct running the same script from the repository root (ensure the Windows
subsection text and the path string are updated).


</details>

<!-- fingerprinting:phantom:triton:puma -->

<!-- This is an auto-generated comment by CodeRabbit -->

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Needs Triaging Needs attention from maintainers to triage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: The development setup documentation for Client has error for ".env" file

1 participant