Skip to content

feat: add Ivy demo for Cysharp.ZString#103

Merged
rorychatt merged 4 commits into
Ivy-Interactive:mainfrom
MedhatZ:feat/zstring-example
Sep 29, 2025
Merged

feat: add Ivy demo for Cysharp.ZString#103
rorychatt merged 4 commits into
Ivy-Interactive:mainfrom
MedhatZ:feat/zstring-example

Conversation

@MedhatZ

@MedhatZ MedhatZ commented Sep 25, 2025

Copy link
Copy Markdown

Summary

This PR adds a new Ivy demo application showcasing the usage of Cysharp.ZString.

Features

  • Demonstrates ZString.Concat, ZString.Format, and ZString.Join
  • Demonstrates usage of ZString.CreateStringBuilder()
  • Demonstrates ZString.PrepareUtf16<>

Structure

The example is located in the zstring/ folder and includes:

  • HelloApp.cs with interactive Ivy UI buttons
  • README.md with instructions
  • assets/screenshot.png as a visual reference

Screenshot

screenshot

Copilot AI left a comment

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.

Pull Request Overview

This PR adds a new Ivy demo application that showcases the usage of Cysharp.ZString library for high-performance string operations in .NET.

  • Creates a complete demo project with interactive UI buttons demonstrating ZString features
  • Implements examples for string concatenation, formatting, joining, StringBuilder usage, and prepared format templates
  • Provides Docker configuration and project setup files for easy deployment and development

Reviewed Changes

Copilot reviewed 9 out of 10 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
zstring/Zstring.sln Visual Studio solution file for the demo project
zstring/Zstring.csproj Project file with dependencies on Ivy and ZString packages
zstring/README.md Documentation with feature overview and run instructions
zstring/Program.cs Application entry point configuring Ivy server with Chrome UI
zstring/GlobalUsings.cs Global using statements for Ivy framework namespaces
zstring/Dockerfile Docker configuration for containerized deployment
zstring/Apps/HelloApp.cs Main demo app with interactive ZString examples
zstring/.gitignore Git ignore file for build artifacts and IDE files
zstring/.dockerignore Docker ignore file excluding unnecessary files from build context

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Comment thread zstring/Apps/HelloApp.cs Outdated
Comment thread zstring/Apps/HelloApp.cs Outdated
Comment thread zstring/Dockerfile Outdated
@MedhatZ

MedhatZ commented Sep 26, 2025

Copy link
Copy Markdown
Author

I've addressed the review feedback:

  • Replaced Arabic comments with English.
  • Updated Dockerfile to remove /p:UseAppHost=true.

Please let me know if any further changes are needed.

@rorychatt rorychatt left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

It is hard to understand what the library does.

My suggestion is to include also what is happening.

i.e. what strings we concatenate, what we build together, what was formatted

@rorychatt

Copy link
Copy Markdown
Collaborator
image

@MedhatZ

MedhatZ commented Sep 27, 2025

Copy link
Copy Markdown
Author

I've updated the demo based on the feedback:

  • Added explicit inputs and outputs in the UI for Concat, Format, Join, StringBuilder, and Prepared Format.
  • Updated README.md to document inputs/outputs with examples.
  • Added a new screenshot (assets/screenshot.png) showing the results.

Please review and let me know if there’s anything else to adjust.

screenshot screenshot2

@rorychatt
rorychatt merged commit 58222ee into Ivy-Interactive:main Sep 29, 2025
3 of 5 checks passed
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.

3 participants