Skip to content

Conversation

coratgerl
Copy link
Contributor

@coratgerl coratgerl commented Sep 30, 2025

New Pull Request Checklist

Closes: #2465

Summary by CodeRabbit

  • Documentation
    • Reorganized configuration docs into a unified Configuration Reference with Root, Global/App, User, CLI/Server and helper-command sections and cross-links.
    • Replaced per-option inline blocks with consolidated tables and modular sections; added expanded JSON examples, file/config guidance, environment variable and CLI flag mappings.
    • Updated terminology, formatting and usage instructions for clearer discovery and editing.

Copy link

I will reformat the title to use the proper commit message syntax.

@parse-github-assistant parse-github-assistant bot changed the title feat: improve README config feat: Improve README config Sep 30, 2025
Copy link

parse-github-assistant bot commented Sep 30, 2025

🚀 Thanks for opening this pull request! We appreciate your effort in improving the project. Please let us know once your pull request is ready for review.

Copy link

coderabbitai bot commented Sep 30, 2025

📝 Walkthrough

Walkthrough

Rewrote README configuration docs into a unified Configuration Reference covering root keys, app/global/user sections, CLI & environment mappings, helper CLI commands, expanded JSON examples, and reorganized file/config guidance. No code or public API changes.

Changes

Cohort / File(s) Summary
Documentation restructuring
README.md
Replaced per-option inline blocks with a consolidated Configuration Reference. Introduced Root Configuration Keys, App Configuration, User Configuration, CLI & Server Options, Helper CLI Commands, environment/CLI mappings, expanded JSON examples, reorganized File/Config guidance, added cross-links and standardized terminology/formatting.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Pre-merge checks and finishing touches

❌ Failed checks (2 warnings)
Check name Status Explanation Resolution
Linked Issues Check ⚠️ Warning While the README has been reorganized into modular sections with multiple tables, the changes do not clearly present a single unified table that maps each CLI option to its config file path with columns for type, optionality, description, and an overview of unsupported options as required by issue #2465. Ensure you include one comprehensive table listing all CLI parameters alongside their config file keys, types, optionality, descriptions, and a column indicating any current support gaps to satisfy the linked issue’s requirements.
Description Check ⚠️ Warning The PR description only includes the checklist and a “Closes” line but omits the required “Issue Description,” “Approach,” and “TODOs before merging” sections specified in the template, leaving key context and implementation details unaddressed. Please fill out the “Issue Description” to summarize the problem being solved, add an “Approach” section to outline your changes, and list any pending tasks under “TODOs before merging” to align with the project’s PR template.
✅ Passed checks (3 passed)
Check name Status Explanation
Title Check ✅ Passed The title “feat: Improve README config” succinctly captures the main change of enhancing the README’s configuration documentation without unnecessary detail or noise, making it clear to reviewers scanning the history.
Out of Scope Changes Check ✅ Passed All modifications are confined to README.md and focus exclusively on reorganizing and consolidating configuration documentation, which aligns with the issue scope and does not introduce any unrelated changes.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c3829d7 and 9e8324c.

📒 Files selected for processing (1)
  • README.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
README.md

[style] ~165-~165: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ... | Master key for full access. Can be a String or Function returning a Str...

(MISSING_IT_THERE)


[grammar] ~202-~202: There might be a mistake here.
Context: ...e` | Sort this column to the top in filter popup. | ##### Scripts Co...

(QB_NEW_EN)


[grammar] ~211-~211: There might be a mistake here.
Context: ...for multiple objects (runs in serial). | | showConfirmationDialog | Boolean ...

(QB_NEW_EN)


[grammar] ~260-~260: There might be a mistake here.
Context: ...secure user passwords and MFA secrets. | | --createMFA | Interactive tool to g...

(QB_NEW_EN)


[style] ~265-~265: Consider a more expressive alternative.
Context: ...the command line with a config file. To do this, create a new file called `parse-d...

(DO_ACHIEVE)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Docker linux/amd64

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.

@parseplatformorg
Copy link
Contributor

parseplatformorg commented Sep 30, 2025

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

Copy link

@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: 4

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 05fa54c and 1424943.

📒 Files selected for processing (1)
  • README.md (1 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
README.md

179-179: Link fragments should be valid

(MD051, link-fragments)


180-180: Link fragments should be valid

(MD051, link-fragments)


219-219: Link fragments should be valid

(MD051, link-fragments)


223-223: Link fragments should be valid

(MD051, link-fragments)


261-261: Tables should be surrounded by blank lines

(MD058, blanks-around-tables)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Docker linux/amd64
🔇 Additional comments (6)
README.md (6)

182-192: LGTM!

The column preference configuration table is well-structured and accurately documents the available options.


193-203: LGTM!

The scripts configuration table accurately documents the script options with appropriate types and descriptions.


204-213: LGTM!

The info panel configuration table is comprehensive and matches the feature documentation below.


226-240: LGTM!

The user configuration table comprehensively documents authentication options including MFA settings and per-app permissions.


241-255: LGTM!

The CLI and server options table is well-structured with appropriate warnings for the --dev flag and clear documentation of defaults.


145-261: Excellent comprehensive configuration reference!

This documentation rewrite successfully achieves the PR objective from issue #2465. The new structure provides:

  • A unified reference table format for all configuration options
  • Clear mapping between config file parameters, CLI arguments, and environment variables
  • Type information, defaults, and optionality for each parameter
  • Logical organization into App, Global, User, and CLI sections

This is a significant improvement over the previous scattered documentation and will greatly help users understand all available configuration options.

However, please address the link fragment issues and markdown formatting flagged in the other comments.

coderabbitai[bot]
coderabbitai bot previously approved these changes Sep 30, 2025
Copy link

@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: 0

♻️ Duplicate comments (1)
README.md (1)

258-263: Add blank line after table.

The Helper CLI Commands table should be followed by a blank line before the next section heading to comply with markdown formatting standards.

Apply this diff:

 | `--createUser` | Interactive tool to generate secure user passwords and MFA secrets. |
 | `--createMFA`  | Interactive tool to generate MFA secrets for existing users.        |
+
 ### File

Based on static analysis hints.

🧹 Nitpick comments (2)
README.md (2)

661-663: Remove blank line inside blockquote.

The warning blockquote contains a blank line which should be removed for proper markdown formatting.

Based on static analysis hints.


984-986: Add language identifier to code block.

The fenced code block should specify a language for proper syntax highlighting. Since this is a Docker command, use bash or shell.

Apply this diff:

-```
+```bash
 docker run -d -p 8080:4040 -v host/path/to/config.json:/src/Parse-Dashboard/parse-dashboard-config.json parseplatform/parse-dashboard --dev

Based on static analysis hints.

</blockquote></details>

</blockquote></details>

<details>
<summary>📜 Review details</summary>

**Configuration used**: CodeRabbit UI

**Review profile**: CHILL

**Plan**: Pro

<details>
<summary>📥 Commits</summary>

Reviewing files that changed from the base of the PR and between 142494341697ff2d74d73a3e4ec38d428a9f81aa and 9ee3ac22042bf4ffe9a105c60e32208217318fd7.

</details>

<details>
<summary>📒 Files selected for processing (1)</summary>

* `README.md` (44 hunks)

</details>

<details>
<summary>🧰 Additional context used</summary>

<details>
<summary>🪛 markdownlint-cli2 (0.18.1)</summary>

<details>
<summary>README.md</summary>

663-663: Blank line inside blockquote

(MD028, no-blanks-blockquote)

---

998-998: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

---

1006-1006: Emphasis used instead of a heading

(MD036, no-emphasis-as-heading)

</details>

</details>

</details>

<details>
<summary>⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)</summary>

* GitHub Check: Node 18
* GitHub Check: Node 22
* GitHub Check: Docker linux/amd64

</details>

<details>
<summary>🔇 Additional comments (5)</summary><blockquote>

<details>
<summary>README.md (5)</summary><blockquote>

`181-182`: **LGTM! Anchor links fixed.**

The anchor links for `#scripts` and `#info-panel` now correctly match the actual section headers. The previous issue with `#scripts-configuration` and `#info-panel-configuration` has been resolved.

---

`221-221`: **LGTM! User configuration anchor fixed.**

The anchor link `#user-configuration-users` now correctly matches the section header "##### User Configuration (`users[]`)".

---

`147-256`: **Excellent configuration documentation structure!**

The comprehensive configuration tables successfully achieve the PR objectives:
- Unified documentation for CLI options, config file structure, and environment variables
- Clear mapping between different configuration methods
- Proper type annotations and examples
- Well-organized into logical sections (App, User, Global, CLI/Server)

This is a significant improvement over scattered documentation.

---

`147-1590`: **Excellent documentation restructuring!**

This PR successfully achieves its objectives by creating a comprehensive, well-organized configuration reference that:

✅ Provides unified tables mapping CLI options, config file parameters, and environment variables
✅ Includes clear type annotations, default values, and examples
✅ Organizes options into logical sections (App, User, Global, CLI/Server, Scripts, Info Panel, etc.)
✅ Replaces scattered documentation with a structured, easy-to-navigate reference
✅ Maintains backward compatibility while improving clarity

The restructuring makes Parse Dashboard configuration significantly easier to understand and use. The table format provides a clear overview while detailed sections offer in-depth guidance where needed.

---

`225-225`: **No ambiguity: '#configuration' anchor is unique.** The only "### Configuration" heading (anchor `#configuration`) appears under "## AI Agent" at line 1396, while "#### Configuration File Options" uses `#configuration-file-options`.

</blockquote></details>

</blockquote></details>

</details>

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

@coratgerl coratgerl requested a review from mtrezza October 2, 2025 14:39
Copy link

@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: 2

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
README.md (1)

536-537: Fix typo in scripts option reference.

scrips should be scripts; otherwise, readers may miss the correct configuration key.

-You can also specify custom fields with the `scrips` option:
+You can also specify custom fields with the `scripts` option:
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 9ee3ac2 and eb5497e.

📒 Files selected for processing (1)
  • README.md (9 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
README.md

514-514: Emphasis style
Expected: asterisk; Actual: underscore

(MD049, emphasis-style)


514-514: Emphasis style
Expected: asterisk; Actual: underscore

(MD049, emphasis-style)


649-649: Emphasis style
Expected: asterisk; Actual: underscore

(MD049, emphasis-style)


649-649: Emphasis style
Expected: asterisk; Actual: underscore

(MD049, emphasis-style)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Docker linux/amd64

coderabbitai[bot]
coderabbitai bot previously approved these changes Oct 2, 2025
coderabbitai[bot]
coderabbitai bot previously approved these changes Oct 4, 2025
coderabbitai[bot]
coderabbitai bot previously approved these changes Oct 4, 2025
coderabbitai[bot]
coderabbitai bot previously approved these changes Oct 4, 2025
Copy link

@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

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ff6c8bf and 7876028.

📒 Files selected for processing (1)
  • README.md (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Docker linux/amd64

coderabbitai[bot]
coderabbitai bot previously approved these changes Oct 11, 2025
@coratgerl
Copy link
Contributor Author

coratgerl commented Oct 11, 2025

Sorry @mtrezza , I didn’t see your comment. I reviewed all the changes everything seems good, but I might have missed something.

coderabbitai[bot]
coderabbitai bot previously approved these changes Oct 14, 2025
@coratgerl coratgerl requested a review from mtrezza October 14, 2025 18:53
Copy link

@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

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2d73264 and 8fa6553.

📒 Files selected for processing (1)
  • README.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
README.md

[style] ~166-~166: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ... | Master key for full access. Can be a String or Function returning a Str...

(MISSING_IT_THERE)


[grammar] ~203-~203: There might be a mistake here.
Context: ...e` | Sort this column to the top in filter popup. | ##### Scripts Co...

(QB_NEW_EN)


[grammar] ~212-~212: There might be a mistake here.
Context: ...for multiple objects (runs in serial). | | showConfirmationDialog | Boolean ...

(QB_NEW_EN)


[grammar] ~261-~261: There might be a mistake here.
Context: ...secure user passwords and MFA secrets. | | --createMFA | Interactive tool to g...

(QB_NEW_EN)


[style] ~266-~266: Consider a more expressive alternative.
Context: ...the command line with a config file. To do this, create a new file called `parse-d...

(DO_ACHIEVE)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Docker linux/amd64

Copy link

@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: 2

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
README.md (1)

536-536: Correct the option name typo.

scrips option” should be “scripts option”; the current wording points readers at a non-existent setting.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8fa6553 and ee30578.

📒 Files selected for processing (1)
  • README.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
README.md

[style] ~165-~165: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ... | Master key for full access. Can be a String or Function returning a Str...

(MISSING_IT_THERE)


[grammar] ~202-~202: There might be a mistake here.
Context: ...e` | Sort this column to the top in filter popup. | ##### Scripts Co...

(QB_NEW_EN)


[grammar] ~211-~211: There might be a mistake here.
Context: ...for multiple objects (runs in serial). | | showConfirmationDialog | Boolean ...

(QB_NEW_EN)


[grammar] ~260-~260: There might be a mistake here.
Context: ...secure user passwords and MFA secrets. | | --createMFA | Interactive tool to g...

(QB_NEW_EN)


[style] ~265-~265: Consider a more expressive alternative.
Context: ...the command line with a config file. To do this, create a new file called `parse-d...

(DO_ACHIEVE)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
  • GitHub Check: Node 22
  • GitHub Check: Docker linux/amd64

Copy link

@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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (4)
README.md (4)

1299-1305: Panel item type mismatch ("infoPanel" vs "panel")

The table says type must be "infoPanel", but the example (and feature naming) uses "panel". Align to "panel".

-| `type`              | String | No       | Must be `"infoPanel"`.                                                                                                                            |
+| `type`              | String | No       | Must be `"panel"`.                                                                                                                                 |

536-536: Fix typo: scripsscripts

-You can also specify custom fields with the `scrips` option:
+You can also specify custom fields with the `scripts` option:

440-440: Remove stray leading space before heading

- ### Prevent columns sorting
+### Prevent columns sorting

745-747: Missing comma in JS object

There should be a comma after "appName": "MyApp".

-      "appName": "MyApp"
-      "enableSecurityChecks": true
+      "appName": "MyApp",
+      "enableSecurityChecks": true
🧹 Nitpick comments (6)
README.md (6)

165-165: Clarify Function support for masterKey

A function for masterKey is only supported when configuring programmatically (JS), not in the JSON config file. Add a note in Type or Description to prevent misconfiguration.


204-214: Document object form of scripts[].classes and validator typing

The table mentions Array<String> | Array<Object> but doesn’t describe the object shape (e.g., { name, fields[], fields[].validator }). Add 1‑2 lines to the classes description clarifying the object form and that validators can be functions (JS config) or strings (when serialized).


399-401: Ensure JSON examples are valid or mark as JSON with comments (jsonc)

Several “json” examples contain trailing commas or comments. Either remove trailing commas and comments, or change fences to jsonc/js.

Examples to fix:

  • Line 401: trailing comma after "iconName": "MyAppIcon.png",
  • Lines 1080-1085, 1103-1110, 1310-1315: trailing commas after last properties.
  • Lines 1381-1389: trailing comma in array element.

Example diffs (apply similarly elsewhere):

-      "iconName": "MyAppIcon.png",
+      "iconName": "MyAppIcon.png"
-  "style": { "backgroundColor": "red" },
+  "style": { "backgroundColor": "red" }

Alternatively, switch code fences:

-```json
+```jsonc

Also applies to: 1080-1085, 1103-1110, 1310-1315, 1381-1389


409-413: Tighten wording for App Background Color section

Current text is hard to parse. Suggest concise rewrite.

-Parse Dashboard supports adding an optional background color for each app, so you can identify them easier in the list. To do so, you *must* use the configuration file, define an `primaryBackgroundColor` and `secondaryBackgroundColor` in it, parameter for each app. It is `CSS style`. To visualize what it means, in the following example `backgroundColor` is a configuration file:
+Parse Dashboard supports optional background colors per app to aid visual identification. Configure this via the file by adding `primaryBackgroundColor` and `secondaryBackgroundColor` (CSS color values) to each app entry:

319-336: Use distinct appId values in multi-app example

Reusing the same appId for both apps can confuse readers. Use a different id for the 2nd app.

-      "appId": "myAppId",
+      "appId": "myAppId2",

645-649: Standardize admonition casing to GitHub’s supported labels

Use uppercase labels: [!NOTE], [!WARNING], [!IMPORTANT], [!CAUTION], [!TIP] to ensure consistent rendering.

Examples:

  • [!Warning][!WARNING]
  • [!Note][!NOTE]
  • [!Caution][!CAUTION]
  • [!Important][!IMPORTANT]
  • [!Tip][!TIP]

Also applies to: 1368-1370, 1438-1440, 1474-1476, 1561-1562

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2d73264 and c3829d7.

📒 Files selected for processing (1)
  • README.md (1 hunks)
🧰 Additional context used
🪛 LanguageTool
README.md

[style] ~165-~165: To form a complete sentence, be sure to include a subject or ‘there’.
Context: ... | Master key for full access. Can be a String or Function returning a Str...

(MISSING_IT_THERE)


[grammar] ~202-~202: There might be a mistake here.
Context: ...e` | Sort this column to the top in filter popup. | ##### Scripts Co...

(QB_NEW_EN)


[grammar] ~211-~211: There might be a mistake here.
Context: ...for multiple objects (runs in serial). | | showConfirmationDialog | Boolean ...

(QB_NEW_EN)


[grammar] ~260-~260: There might be a mistake here.
Context: ...secure user passwords and MFA secrets. | | --createMFA | Interactive tool to g...

(QB_NEW_EN)


[style] ~265-~265: Consider a more expressive alternative.
Context: ...the command line with a config file. To do this, create a new file called `parse-d...

(DO_ACHIEVE)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: Node 18
  • GitHub Check: Node 20
  • GitHub Check: Docker linux/amd64
🔇 Additional comments (1)
README.md (1)

141-158: Nice consolidation of configuration docs

The unified reference tables with CLI/env mappings greatly improve discoverability. LGTM.

Also applies to: 160-192, 226-240, 241-255, 256-261

@mtrezza
Copy link
Member

mtrezza commented Oct 14, 2025

Kindly let me know when this is ready for review

@coratgerl
Copy link
Contributor Author

It should be good @mtrezza

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add config options table to README

3 participants