-
Notifications
You must be signed in to change notification settings - Fork 113
Add self-hosted playgrounds #259
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
Signed-off-by: Lee Calcote <lee.calcote@layer5.io>
✅ Deploy Preview for meshery-play ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
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.
Summary of Changes
Hello @leecalcote, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request significantly enhances the Meshery Playground selection interface by introducing a clear distinction between hosted and self-hosted playground options. The changes involve restructuring the UI to present these categories separately, adding new providers, and refining the user experience with dynamic button texts and updated styling. The primary purpose is to offer users more flexibility and clearer guidance on how to access or deploy Meshery Playgrounds, whether through a hosted service or by self-hosting on cloud platforms.
Highlights
- Categorization of Playgrounds: The
VendorSelection
component now clearly separates playground options into 'Hosted Playgrounds' and 'Self-Hosted Playgrounds' sections, enhancing user navigation and clarity. - Expansion of Playground Options: New playground providers have been integrated, including 'ID10' as a hosted option and 'AWS' and 'GCP' as self-hosted options, significantly expanding the choices available to users.
- Dynamic User Interface: The action buttons for each playground dynamically change their text to 'Launch Playground' for hosted services and 'Install Playground' for self-hosted options, providing more intuitive calls to action.
- Styling and Layout Improvements: The layout of the vendor cards has been updated to use Flexbox, improving responsiveness, and distinct button styles (colors and hover effects) have been introduced for hosted versus self-hosted options, enhancing visual differentiation.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command>
or @gemini-code-assist <command>
. Below is a summary of the supported commands.
Feature | Command | Description |
---|---|---|
Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/
folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
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.
Code Review
This pull request introduces self-hosted playground options, which is a great addition. The implementation in the VendorSelection
component, however, has significant code duplication that impacts maintainability. I've suggested a refactoring to address this. Additionally, there are a few issues in the associated stylesheet, including a CSS syntax error that breaks button styling, which I've pointed out with fixes.
&.hosted { | ||
background: rgb(235, 192, 23); | ||
&:not(.disabled):hover { | ||
background: rgba(0, 179, 159 0.9) !important; |
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.
There is a syntax error in this rgba
color value. A comma is missing between the third color component (159
) and the alpha value (0.9
). This will cause the CSS rule to be invalid and the hover effect will not be applied.
background: rgba(0, 179, 159 0.9) !important; | |
background: rgba(0, 179, 159, 0.9) !important; |
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.
you missed it ?
export const VendorSelectionWrapper = styled.div` | ||
padding: 1rem; | ||
text-align: center; | ||
align-items: center; |
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.
flex-direction: row; | ||
flex-wrap: wrap; | ||
justify-content: space-between; | ||
// grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); |
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.
Signed-off-by: Lee Calcote <lee.calcote@layer5.io>
Signed-off-by: Lee Calcote lee.calcote@layer5.io