Skip to content

feat: ui overhaul#341

Merged
pauldelucia merged 8 commits into
v0.9-devfrom
feat/ui-overhaul
Jun 9, 2025
Merged

feat: ui overhaul#341
pauldelucia merged 8 commits into
v0.9-devfrom
feat/ui-overhaul

Conversation

@pauldelucia
Copy link
Copy Markdown
Member

@pauldelucia pauldelucia commented Jun 9, 2025

UI overhaul

Summary by CodeRabbit

  • New Features

    • Added comprehensive documentation and license files for multiple Noto Sans font families, including instructions and licensing details.
    • Expanded environment variable configuration with unified naming, new network options (DEVNET, LOCAL), and additional flags for developer mode and UI visibility.
  • Improvements

    • Updated dependency versions and increased minimum Rust version requirement.
    • Enhanced .gitignore to exclude new build artifacts and logs.
    • Updated release workflows to use newer runner environments for improved CI reliability.
  • Chores

    • Introduced a Clippy linting workflow for automated Rust code quality checks.
    • Added a detailed contributor and onboarding guide for developers and AI assistants.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Jun 9, 2025

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Walkthrough

This update introduces new font licenses and README documentation for multiple Noto Sans font families, restructures and expands the .env.example configuration, upgrades Rust dependencies, adds new Cargo and GitHub Actions configuration files, and updates the .gitignore. It also includes a comprehensive CLAUDE.md contributor guide.

Changes

File(s) Change Summary
.env.example Restructured and expanded; renamed variables, added DEVNET and LOCAL configs, new flags for UI and developer mode, shortened Testnet DAPI list.
Cargo.toml Bumped version to 0.9.0, raised Rust version, upgraded dependencies, added new dependencies, removed rustflags, reordered sections.
.cargo/config.toml Added new file specifying rustflags per target for static linking and CPU architecture.
.gitignore Added new ignore patterns, commented out Cargo.lock, minor formatting.
.github/workflows/clippy.yml Added new workflow to run Rust Clippy linter with strict settings and system dependencies.
.github/workflows/release.yml Updated runner environments to Ubuntu 22.04, adjusted ARM platform string for protoc installation.
CLAUDE.md Added comprehensive contributor and AI assistant guide for the Dash Evo Tool project.
assets/Fonts/.../OFL.txt Added SIL Open Font License (OFL) v1.1 for all Noto Sans font families.
assets/Fonts/.../README.txt Added README files documenting usage, installation, and licensing for each Noto Sans font family (Noto Sans, Arabic, Devanagari, Hebrew, JP, KR, Khmer, SC, TC, Thai).

Sequence Diagram(s)

sequenceDiagram
    participant Developer
    participant GitHub Actions
    participant System Dependencies
    participant Clippy

    Developer->>GitHub Actions: Push or PR triggers workflow
    GitHub Actions->>System Dependencies: Install build-essential, pkg-config, etc.
    GitHub Actions->>System Dependencies: Download & install protoc
    GitHub Actions->>Clippy: Run Clippy linter with all features/targets
    Clippy-->>GitHub Actions: Report lint results (fail on warnings)
    GitHub Actions-->>Developer: Display lint status in PR/checks
Loading

Possibly related PRs

Suggested reviewers

  • QuantumExplorer

Poem

In the warren of code, new fonts abound,
Licenses and docs for each language and sound.
The environment’s fresh, dependencies new,
Clippy now checks what the rabbits all do.
With CLAUDE.md’s wisdom and configs in tow,
This project hops forward—onward we go!
🐇✨


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
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@pauldelucia pauldelucia changed the base branch from master to v0.9-dev June 9, 2025 08:57
@pauldelucia pauldelucia merged commit b4aa4ba into v0.9-dev Jun 9, 2025
1 check passed
@pauldelucia pauldelucia deleted the feat/ui-overhaul branch June 9, 2025 09:04
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.

Caution

Inline review comments failed to post. This is likely due to GitHub's limits when posting large numbers of comments. If you are seeing this consistently it is likely a permissions issue. Please check "Moderation" -> "Code review limits" under your organization settings.

Actionable comments posted: 3

🧹 Nitpick comments (21)
assets/Fonts/Noto_Sans_SC/README.txt (1)

13-13: Improve readability by adding commas around the parenthetical phrase.

Clarify the phrase “and, in those cases, you can use…” by inserting commas around “in those cases” for smoother flow.

- Not all apps support variable fonts, and in those cases you can use the static font files for Noto Sans SC:
+ Not all apps support variable fonts, and, in those cases, you can use the static font files for Noto Sans SC:
🧰 Tools
🪛 LanguageTool

[formatting] ~13-~13: Consider inserting a comma after an introductory phrase for better readability.
Context: ...ot all apps support variable fonts, and in those cases you can use the static font files for N...

(IN_THAT_CASE_COMMA)

assets/Fonts/Noto_Sans_Khmer/README.txt (1)

14-14: Add commas for clarity around “in those cases.”

Insert commas to set off the phrase “in those cases,” improving the sentence rhythm:

- Not all apps support variable fonts, and in those cases you can use the static font files for Noto Sans Khmer:
+ Not all apps support variable fonts, and, in those cases, you can use the static font files for Noto Sans Khmer:
🧰 Tools
🪛 LanguageTool

[formatting] ~14-~14: Consider inserting a comma after an introductory phrase for better readability.
Context: ...ot all apps support variable fonts, and in those cases you can use the static font files for N...

(IN_THAT_CASE_COMMA)

assets/Fonts/Noto_Sans_Devanagari/README.txt (1)

14-14: Enhance readability by bracketing the phrase “in those cases.”

Add commas to clearly delimit “in those cases” in the sentence:

- Not all apps support variable fonts, and in those cases you can use the static font files for Noto Sans Devanagari:
+ Not all apps support variable fonts, and, in those cases, you can use the static font files for Noto Sans Devanagari:
🧰 Tools
🪛 LanguageTool

[formatting] ~14-~14: Consider inserting a comma after an introductory phrase for better readability.
Context: ...ot all apps support variable fonts, and in those cases you can use the static font files for N...

(IN_THAT_CASE_COMMA)

assets/Fonts/Noto_Sans_Thai/OFL.txt (1)

9-9: Use an en dash for the date range in the heading.

Replace the hyphen with an en dash in the license header to follow typographical conventions for ranges:

- SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+ SIL OPEN FONT LICENSE Version 1.1 – 26 February 2007
🧰 Tools
🪛 LanguageTool

[typographical] ~9-~9: If you want to indicate numerical ranges or time ranges, consider using an en dash.
Context: ...-----
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
----------------------...

(DASH_RULE)

assets/Fonts/Noto_Sans_Thai/README.txt (1)

14-14: Insert commas around “in those cases” for improved flow.

Bracket the phrase “in those cases” with commas to enhance readability:

- Not all apps support variable fonts, and in those cases you can use the static font files for Noto Sans Thai:
+ Not all apps support variable fonts, and, in those cases, you can use the static font files for Noto Sans Thai:
🧰 Tools
🪛 LanguageTool

[formatting] ~14-~14: Consider inserting a comma after an introductory phrase for better readability.
Context: ...ot all apps support variable fonts, and in those cases you can use the static font files for N...

(IN_THAT_CASE_COMMA)

assets/Fonts/Noto_Sans_Hebrew/README.txt (2)

13-14: Insert comma for readability
Consider adding a comma after the introductory clause to improve flow:

- Not all apps support variable fonts, and in those cases you can use the static font files for Noto Sans Hebrew:
+ Not all apps support variable fonts, and in those cases, you can use the static font files for Noto Sans Hebrew:
🧰 Tools
🪛 LanguageTool

[formatting] ~14-~14: Consider inserting a comma after an introductory phrase for better readability.
Context: ...ot all apps support variable fonts, and in those cases you can use the static font files for N...

(IN_THAT_CASE_COMMA)


81-83: Consistent list formatting for platform instructions
The platform installation links are plain text; using a consistent bullet or label format will improve readability. For example:

- MacOS: https://support.apple.com/en-us/HT201749
- Linux: https://www.google.com/search?q=how+to+install+a+font+on+gnu%2Blinux
- Windows: https://support.microsoft.com/en-us/help/314960/how-to-install-or-remove-a-font-in-windows
+ - MacOS: https://support.apple.com/en-us/HT201749
+ - Linux: https://www.google.com/search?q=how+to+install+a+font+on+gnu%2Blinux
+ - Windows: https://support.microsoft.com/en-us/help/314960/how-to-install-or-remove-a-font-in-windows
🧰 Tools
🪛 LanguageTool

[uncategorized] ~81-~81: A punctuation mark might be missing here.
Context: ...https://support.apple.com/en-us/HT201749 Linux: https://www.google.com/search?q=h...

(AI_EN_LECTOR_MISSING_PUNCTUATION)

assets/Fonts/Noto_Sans_Devanagari/OFL.txt (1)

8-10: Use en dash for date range in header
For typographic consistency, replace the hyphen with an en dash around the date:

- SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+ SIL OPEN FONT LICENSE Version 1.1 – 26 February 2007
🧰 Tools
🪛 LanguageTool

[typographical] ~9-~9: If you want to indicate numerical ranges or time ranges, consider using an en dash.
Context: ...-----
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
----------------------...

(DASH_RULE)

assets/Fonts/Noto_Sans_Hebrew/OFL.txt (1)

8-10: Use en dash for date range in header
Replace the hyphen with an en dash in the license header:

- SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+ SIL OPEN FONT LICENSE Version 1.1 – 26 February 2007
🧰 Tools
🪛 LanguageTool

[typographical] ~9-~9: If you want to indicate numerical ranges or time ranges, consider using an en dash.
Context: ...-----
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
----------------------...

(DASH_RULE)

assets/Fonts/Noto_Sans/OFL.txt (1)

8-10: Use en dash for date range in header
Typographically, an en dash is preferred for date ranges:

- SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+ SIL OPEN FONT LICENSE Version 1.1 – 26 February 2007
🧰 Tools
🪛 LanguageTool

[typographical] ~9-~9: If you want to indicate numerical ranges or time ranges, consider using an en dash.
Context: ...-----
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
----------------------...

(DASH_RULE)

assets/Fonts/Noto_Sans_Arabic/OFL.txt (1)

8-10: Use en dash for date range in header
In the license header, switch to an en dash for the date:

- SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+ SIL OPEN FONT LICENSE Version 1.1 – 26 February 2007
🧰 Tools
🪛 LanguageTool

[typographical] ~9-~9: If you want to indicate numerical ranges or time ranges, consider using an en dash.
Context: ...-----
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
----------------------...

(DASH_RULE)

assets/Fonts/Noto_Sans_Arabic/README.txt (1)

13-14: Insert comma for readability.
In the sentence
“Not all apps support variable fonts, and in those cases you can use the static font files for Noto Sans Arabic:”
consider adding a comma after “cases” to improve clarity.

🧰 Tools
🪛 LanguageTool

[formatting] ~14-~14: Consider inserting a comma after an introductory phrase for better readability.
Context: ...ot all apps support variable fonts, and in those cases you can use the static font files for N...

(IN_THAT_CASE_COMMA)

assets/Fonts/Noto_Sans_KR/README.txt (1)

13-14: Insert comma for readability.
In the sentence
“Not all apps support variable fonts, and in those cases you can use the static font files for Noto Sans KR:”
consider adding a comma after “cases” to improve clarity.

🧰 Tools
🪛 LanguageTool

[formatting] ~13-~13: Consider inserting a comma after an introductory phrase for better readability.
Context: ...ot all apps support variable fonts, and in those cases you can use the static font files for N...

(IN_THAT_CASE_COMMA)

assets/Fonts/Noto_Sans_JP/README.txt (1)

13-14: Insert comma for readability.
In the sentence
“Not all apps support variable fonts, and in those cases you can use the static font files for Noto Sans JP:”
consider adding a comma after “cases” to improve clarity.

🧰 Tools
🪛 LanguageTool

[formatting] ~13-~13: Consider inserting a comma after an introductory phrase for better readability.
Context: ...ot all apps support variable fonts, and in those cases you can use the static font files for N...

(IN_THAT_CASE_COMMA)

assets/Fonts/Noto_Sans/README.txt (1)

15-16: Insert comma for readability.
In the sentence
“Not all apps support variable fonts, and in those cases you can use the static font files for Noto Sans:”
consider adding a comma after “cases” to improve clarity.

🧰 Tools
🪛 LanguageTool

[formatting] ~15-~15: Consider inserting a comma after an introductory phrase for better readability.
Context: ...ot all apps support variable fonts, and in those cases you can use the static font files for N...

(IN_THAT_CASE_COMMA)

.cargo/config.toml (1)

2-2: Optional: Specify CPU for aarch64.
Consider adding "-C", "target-cpu=armv8-a" under [target.aarch64-unknown-linux-musl] to mirror x86_64 optimizations.

.env.example (1)

24-24: Consider default for DEVNET_insight_api_url.
Currently it’s empty, which may lead to runtime errors if not set. Provide an example URL or document that this must be populated.

CLAUDE.md (4)

1-3: Consider refining the document title
The heading # CLAUDE.md mirrors the filename but may be confusing as a section title. Consider using a more descriptive title (e.g., # Claude Guide for Dash Evo Tool) for clarity.


54-60: Expand prerequisites for environment setup
The prerequisites list omits the cross tool needed for cross-compilation and the utilities used in the CI workflows (curl, unzip). Include these to ensure contributors can reproduce the build steps.


67-68: Include .env.example variable definitions
The note mentions loading from .env but doesn’t cover the newly expanded .env.example variables (e.g., DEVNET, LOCAL, developer-mode flags). Document key entries to streamline onboarding.


95-100: Clarify testing strategy
You note “No dedicated test suite currently” despite enforcing strict Clippy checks. It may help to outline a plan for adding unit or integration tests to improve code quality over time.

🛑 Comments failed to post (3)
.github/workflows/release.yml (2)

45-45: ⚠️ Potential issue

Incorrect runner for Windows build.
The Windows job is targeting x86_64-pc-windows-gnu but uses a Linux runner (ubuntu-22.04). It should use runs-on: windows-latest or windows-2022.

🤖 Prompt for AI Agents
In .github/workflows/release.yml at line 45, the Windows build job incorrectly
uses a Linux runner "ubuntu-22.04". Change the runner to a Windows environment
by setting runs-on to "windows-latest" or "windows-2022" to match the Windows
target platform.

33-33: ⚠️ Potential issue

Invalid runner label for ARM64 build.
The runs-on: "ubuntu-22.04-arm" label is not provided by GitHub-hosted runners and will fail. Use runs-on: ubuntu-22.04 with self-hosted ARM runners or specify a self-hosted label.

🤖 Prompt for AI Agents
In .github/workflows/release.yml at line 33, the runner label "ubuntu-22.04-arm"
is invalid for GitHub-hosted runners and will cause the workflow to fail.
Replace the runs-on value with "ubuntu-22.04" combined with a "self-hosted"
label or another appropriate self-hosted runner label that supports ARM64
architecture to ensure the workflow runs correctly on ARM64 hardware.
CLAUDE.md (1)

9-23: 🛠️ Refactor suggestion

Document the cross tool prerequisite
You reference cross build --target … but the prerequisites section doesn’t mention installing the cross CLI. Add a note to install cross (e.g., cargo install cross) or the appropriate package.

🤖 Prompt for AI Agents
In CLAUDE.md around lines 9 to 23, the documentation references using the
`cross` tool for cross-compilation but does not mention installing it as a
prerequisite. Add a note in the prerequisites section instructing users to
install the `cross` CLI, for example by running `cargo install cross`, to ensure
they have the necessary tool before using the cross build command.

@coderabbitai coderabbitai Bot mentioned this pull request Jul 14, 2025
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.

2 participants