-
Notifications
You must be signed in to change notification settings - Fork 158
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
Feat/UI ux enhancement framegear #1241
Feat/UI ux enhancement framegear #1241
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
@adarshswaminath is attempting to deploy a commit to the Coinbase Team on Vercel. A member of the Team first needs to authorize it. |
framegear/components/Frame/Frame.tsx
Outdated
className={`w-full rounded-t-xl ${imageAspectRatioClassname} object-cover`} | ||
src={image.src} | ||
className={`w-full rounded-t-xl ${imageAspectRatioClassname} ${image.src ? "object-cover" : "object-contain"}`} | ||
src={image.src ? image.src : "https://demofree.sirv.com/nope-not-here.jpg?w=750"} |
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.
Sorry we can not have links here on random websites.
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.
would it be acceptable if I add the images directly to the public folder of the project and reference them from there?
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.
yup, but only if it's a cool image. If it's not, is probably best have something else as default.
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 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.
I think is best we avoid add those kind of images so far. As we want our designer to take a look at it.
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.
Ok, I'll update the image based on the designer's review.
@@ -28,12 +31,12 @@ export function FrameInput() { | |||
/> | |||
</label> | |||
<button | |||
className="h-[40px] self-end rounded-full bg-white text-black" | |||
className={`h-[40px] self-end rounded-full ${isLoading ? "bg-neutral-800 text-white" : "bg-white text-black"}`} |
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.
I believe you can use clx
on Framegear as well.
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.
Okay, I will implement the clx
I am going to have @brendan-defi review this as well, as he is leading our effort to keep polish Framegear. |
framegear/components/Frame/Frame.tsx
Outdated
@@ -76,10 +85,6 @@ function ValidFrame({ metadata }: { metadata: FrameMetadataWithImageObject }) { | |||
} | |||
|
|||
function ErrorFrame() { | |||
// TODO: implement -- decide how to handle |
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.
Definitely acknowledge that this isn't elegant, but let's not remove. We will work on cleaning up these comments.
framegear/components/Frame/Frame.tsx
Outdated
@@ -116,14 +121,12 @@ function FrameButton({ | |||
|
|||
const handleClick = useCallback(async () => { | |||
if (button?.action === 'post' || button?.action === 'post_redirect') { | |||
// TODO: collect user options (follow, like, etc.) and include |
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.
as above, let's keep this comment
framegear/components/Frame/Frame.tsx
Outdated
const confirmAction = async () => { | ||
const result = await postFrame( | ||
{ | ||
buttonIndex: index, | ||
url: (button as any).postUrl!, | ||
state: JSON.stringify(state), | ||
// TODO: make these user-input-driven |
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.
same here
framegear/components/Frame/Frame.tsx
Outdated
@@ -136,7 +139,6 @@ function FrameButton({ | |||
}, | |||
mockFrameOptions | |||
); | |||
// TODO: handle when result is not defined |
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.
same here
framegear/components/Frame/Frame.tsx
Outdated
@@ -162,7 +164,6 @@ You can test this action on the official Warpcast validator: https://warpcast.co | |||
(must deploy frame to a publicly accessible URL)` | |||
); | |||
} | |||
// TODO: implement other actions (mint, etc.) |
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.
same here
Thanks @Zizzamia ! @adarshswaminath Thanks for taking the time to work on this. The responsiveness and the loading state on the fetch-button are nice, good work. :-) Left a few comments. Most importantly, I don't think we should add an placeholder image like this though. This generic 404 isn't really the right message (the issue isn't necessarily a 404, it's that the image for that frame isn't valid, which can happen for many reasons). With these changes I think you'll be g2g. Thanks! |
@brendan-defi Thankyou for the review :) I don’t know why I removed those comments earlier :( |
Thanks @adarshswaminath, nice work :-) |
Thank you! Actually, these comments from @brendan-defi and @Zizzamia are really exciting for a newbie like me. Getting positive feedback from such a great team feels like the next level :-) . Is this PR ready to merge? |
Enhance Home Component with Layout, Loading State, and Placeholder Improvements
What changed? Why?
This PR includes the following changes:
Improved Responsiveness and Layout:
Home
component to ensure better responsiveness: now a single column on smaller screens and two columns on larger screens.p-2
) to the main container for better spacing and improved layout on all screen sizes.Loading State in FrameInput Component:
fetchFrame
API call inFrameInput
. The button now reflects "Loading..." when the API call is in progress, enhancing user experience.Placeholder for Missing Images:
Notes to reviewers
FrameInput
component works as expected.How has it been tested?
Screenshots: