-
Notifications
You must be signed in to change notification settings - Fork 5
update: marketplace listings #657
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
📝 WalkthroughWalkthroughThis PR adds favicon and web app manifest files to the eSigner and File Manager platforms, configuring them as progressive web apps with branding assets. The marketplace app listing and details are updated to register these two applications with their metadata. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 3
🤖 Fix all issues with AI Agents
In @platforms/esigner/static/site.webmanifest:
- Line 1: The manifest has empty "name" and "short_name" fields causing no app
name to show when installed; update the JSON in site.webmanifest to populate
"name" with the full app title (e.g., "E-Signer" or your product's full name)
and "short_name" with a concise label (<=12 characters) for homescreen display,
ensuring both are plain strings and consider adding localized variants later if
needed.
In @platforms/file-manager/src/app.html:
- Around line 5-8: Add a missing web app manifest link: in the HTML head where
the favicon and apple-touch-icon links are defined (e.g., in app.html around the
existing <link rel="icon"> and <link rel="apple-touch-icon"> entries), insert a
<link rel="manifest"> tag pointing to the packaged manifest (use the same asset
base as other icons, e.g., %sveltekit.assets%/site.webmanifest) so browsers will
load platforms/file-manager/static/site.webmanifest; apply the same change in
the eSigner app's equivalent HTML file.
In @platforms/file-manager/static/site.webmanifest:
- Line 1: Populate the empty "name" and "short_name" fields in site.webmanifest
so the PWA displays a proper app name when installed: open the manifest (the
JSON with keys "name" and "short_name") and set "name" to the full product name
and "short_name" to a shorter label (<= ~12 characters) suitable for homescreen
display; keep the existing "icons", "theme_color", and "display" entries intact
and ensure the short_name contains no special characters/emojis that could be
trimmed by platforms.
🧹 Nitpick comments (1)
platforms/file-manager/src/app.html (1)
8-8: Consider addingsizesattribute to apple-touch-icon.While not strictly required, it's a best practice to specify the size of the apple-touch-icon (typically 180×180 pixels). This improves compatibility and makes the icon dimensions explicit.
🔎 Suggested enhancement
- <link rel="apple-touch-icon" href="%sveltekit.assets%/apple-touch-icon.png" /> + <link rel="apple-touch-icon" sizes="180x180" href="%sveltekit.assets%/apple-touch-icon.png" />
📜 Review details
Configuration used: defaults
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (14)
platforms/esigner/static/android-chrome-192x192.pngis excluded by!**/*.pngplatforms/esigner/static/android-chrome-512x512.pngis excluded by!**/*.pngplatforms/esigner/static/apple-touch-icon.pngis excluded by!**/*.pngplatforms/esigner/static/favicon-16x16.pngis excluded by!**/*.pngplatforms/esigner/static/favicon-32x32.pngis excluded by!**/*.pngplatforms/esigner/static/favicon.icois excluded by!**/*.icoplatforms/file-manager/static/android-chrome-192x192.pngis excluded by!**/*.pngplatforms/file-manager/static/android-chrome-512x512.pngis excluded by!**/*.pngplatforms/file-manager/static/apple-touch-icon.pngis excluded by!**/*.pngplatforms/file-manager/static/favicon-16x16.pngis excluded by!**/*.pngplatforms/file-manager/static/favicon-32x32.pngis excluded by!**/*.pngplatforms/file-manager/static/favicon.icois excluded by!**/*.icoplatforms/marketplace/assets/esigner.pngis excluded by!**/*.pngplatforms/marketplace/assets/file-manager.pngis excluded by!**/*.png
📒 Files selected for processing (6)
platforms/esigner/src/app.htmlplatforms/esigner/static/site.webmanifestplatforms/file-manager/src/app.htmlplatforms/file-manager/static/site.webmanifestplatforms/marketplace/client/src/data/apps.jsonplatforms/marketplace/client/src/pages/app-detail.tsx
⏰ 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: lint
- GitHub Check: build
🔇 Additional comments (5)
platforms/marketplace/client/src/pages/app-detail.tsx (1)
42-49: LGTM! New app detail entries are well-structured.The new "esigner" and "file-manager" entries follow the established pattern with comprehensive descriptions that align with the W3DS ecosystem principles and are consistent with other app entries.
platforms/file-manager/static/site.webmanifest (1)
1-1: No action needed. The referenced icon files (android-chrome-192x192.pngandandroid-chrome-512x512.png) are present inplatforms/file-manager/static/and the manifest references are valid.Likely an incorrect or invalid review comment.
platforms/esigner/src/app.html (1)
5-8: All referenced favicon files exist inplatforms/esigner/static/:
favicon.ico✓favicon-16x16.png✓favicon-32x32.png✓apple-touch-icon.png✓No issues found.
platforms/esigner/static/site.webmanifest (1)
1-1: Icon files are correctly present.Both
/android-chrome-192x192.pngand/android-chrome-512x512.pngexist in theplatforms/esigner/static/directory.platforms/marketplace/client/src/data/apps.json (1)
68-82: Logo files are correctly configured and accessible.The referenced logo files (
esigner.pngandfile-manager.png) are confirmed to exist inplatforms/marketplace/assets/and are properly configured for serving. The Vite configuration setspublicDirto point to the assets directory, ensuring these files are correctly served at the root paths (/esigner.png,/file-manager.png) as referenced in the app entries.Platform URLs follow the established naming pattern used by existing app entries (e.g., eReputation) and cannot be verified in the sandbox environment, but the infrastructure pattern is consistent across the marketplace configuration.
| @@ -0,0 +1 @@ | |||
| {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} No newline at end of file | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Populate the empty name and short_name fields.
The PWA manifest has empty name and short_name fields, which will result in no app name being displayed when users install the app to their home screen. This significantly degrades the user experience.
🔎 Proposed fix
-{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"}
+{"name":"eSigner","short_name":"eSigner","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"}📝 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.
| {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} | |
| {"name":"eSigner","short_name":"eSigner","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} |
🤖 Prompt for AI Agents
In @platforms/esigner/static/site.webmanifest at line 1, The manifest has empty
"name" and "short_name" fields causing no app name to show when installed;
update the JSON in site.webmanifest to populate "name" with the full app title
(e.g., "E-Signer" or your product's full name) and "short_name" with a concise
label (<=12 characters) for homescreen display, ensuring both are plain strings
and consider adding localized variants later if needed.
| <link rel="icon" href="%sveltekit.assets%/favicon.ico" /> | ||
| <link rel="icon" type="image/png" sizes="16x16" href="%sveltekit.assets%/favicon-16x16.png" /> | ||
| <link rel="icon" type="image/png" sizes="32x32" href="%sveltekit.assets%/favicon-32x32.png" /> | ||
| <link rel="apple-touch-icon" href="%sveltekit.assets%/apple-touch-icon.png" /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
# Verify manifest files exist and check for manifest links in both apps
echo "=== Checking for manifest files ==="
fd -t f "site.webmanifest" platforms/file-manager platforms/esigner 2>/dev/null || echo "No manifest files found"
echo -e "\n=== Checking for manifest links in app.html files ==="
echo "File Manager:"
rg -n 'rel="manifest"' platforms/file-manager/src/app.html 2>/dev/null || echo "No manifest link found"
echo "eSigner:"
rg -n 'rel="manifest"' platforms/esigner/src/app.html 2>/dev/null || echo "No manifest link found"
echo -e "\n=== Checking favicon files in file-manager static ==="
fd -t f "favicon|apple-touch-icon" platforms/file-manager/static 2>/dev/null || echo "No favicon files found"
echo -e "\n=== Checking esigner static for comparison ==="
fd -t f "favicon|apple-touch-icon" platforms/esigner/static 2>/dev/null || echo "No favicon files found"
echo -e "\n=== Checking full app.html content for file-manager (lines 1-20) ==="
head -20 platforms/file-manager/src/app.htmlRepository: MetaState-Prototype-Project/prototype
Length of output: 1482
Add the missing web app manifest link.
The platforms/file-manager/static/site.webmanifest file exists but the HTML doesn't include a <link rel="manifest"> tag to reference it. Without this link, browsers won't load the manifest, and the PWA functionality won't work. The same issue exists in the eSigner app.
Proposed fix
Add the manifest link after the icon links:
<link rel="icon" href="%sveltekit.assets%/favicon.ico" />
<link rel="icon" type="image/png" sizes="16x16" href="%sveltekit.assets%/favicon-16x16.png" />
<link rel="icon" type="image/png" sizes="32x32" href="%sveltekit.assets%/favicon-32x32.png" />
<link rel="apple-touch-icon" href="%sveltekit.assets%/apple-touch-icon.png" />
+ <link rel="manifest" href="%sveltekit.assets%/site.webmanifest" />
<meta name="viewport" content="width=device-width, initial-scale=1" />📝 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.
| <link rel="icon" href="%sveltekit.assets%/favicon.ico" /> | |
| <link rel="icon" type="image/png" sizes="16x16" href="%sveltekit.assets%/favicon-16x16.png" /> | |
| <link rel="icon" type="image/png" sizes="32x32" href="%sveltekit.assets%/favicon-32x32.png" /> | |
| <link rel="apple-touch-icon" href="%sveltekit.assets%/apple-touch-icon.png" /> | |
| <link rel="icon" href="%sveltekit.assets%/favicon.ico" /> | |
| <link rel="icon" type="image/png" sizes="16x16" href="%sveltekit.assets%/favicon-16x16.png" /> | |
| <link rel="icon" type="image/png" sizes="32x32" href="%sveltekit.assets%/favicon-32x32.png" /> | |
| <link rel="apple-touch-icon" href="%sveltekit.assets%/apple-touch-icon.png" /> | |
| <link rel="manifest" href="%sveltekit.assets%/site.webmanifest" /> |
🤖 Prompt for AI Agents
In @platforms/file-manager/src/app.html around lines 5 - 8, Add a missing web
app manifest link: in the HTML head where the favicon and apple-touch-icon links
are defined (e.g., in app.html around the existing <link rel="icon"> and <link
rel="apple-touch-icon"> entries), insert a <link rel="manifest"> tag pointing to
the packaged manifest (use the same asset base as other icons, e.g.,
%sveltekit.assets%/site.webmanifest) so browsers will load
platforms/file-manager/static/site.webmanifest; apply the same change in the
eSigner app's equivalent HTML file.
| @@ -0,0 +1 @@ | |||
| {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} No newline at end of file | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Populate the empty name and short_name fields.
The PWA manifest has empty name and short_name fields, which will result in no app name being displayed when users install the app to their home screen. This significantly degrades the user experience.
🔎 Proposed fix
-{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"}
+{"name":"File Manager","short_name":"Files","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"}📝 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.
| {"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} | |
| {"name":"File Manager","short_name":"Files","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} |
🤖 Prompt for AI Agents
In @platforms/file-manager/static/site.webmanifest at line 1, Populate the empty
"name" and "short_name" fields in site.webmanifest so the PWA displays a proper
app name when installed: open the manifest (the JSON with keys "name" and
"short_name") and set "name" to the full product name and "short_name" to a
shorter label (<= ~12 characters) suitable for homescreen display; keep the
existing "icons", "theme_color", and "display" entries intact and ensure the
short_name contains no special characters/emojis that could be trimmed by
platforms.
Description of change
adds esigner and file manager marketplace listings and favicons
Issue Number
n/a
Type of change
How the change has been tested
manual
Change checklist
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.